Журнал запусков
curl --request GET \
--url https://api.tungo.kz/v1/companies/{co}/automations/runs \
--cookie tungo.session_token=import requests
url = "https://api.tungo.kz/v1/companies/{co}/automations/runs"
headers = {"cookie": "tungo.session_token="}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {cookie: 'tungo.session_token='}};
fetch('https://api.tungo.kz/v1/companies/{co}/automations/runs', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": [
{
"id": "run_01jz8x3m4n5p6q7r8s9t0v1w2x",
"scenario_id": "scn_01jz8x3m4n5p6q7r8s9t0v1w2x",
"trigger": "hook",
"trial": true,
"event_id": "hev_01jz8x3m4n5p6q7r8s9t0v1w2x",
"external_id": "ORD-77",
"event_type": "esf.incoming.received",
"slot_at": "2026-10-05T09:30:00.000Z",
"requested_by": "<string>",
"state": "queued",
"attempt": 123,
"created_at": "2026-10-05T09:30:00.000Z",
"started_at": "2026-10-05T09:30:00.000Z",
"finished_at": "2026-10-05T09:30:00.000Z",
"stop_reason": "<string>",
"answer": "<string>",
"output": {
"order_id": "1532",
"amount_tiyn": 4500000,
"status": "written"
},
"output_error": "not_returned",
"output_note": "<string>",
"steps": [
{
"step": 123,
"action": "agent",
"state": "done",
"answer": "<string>",
"error": "<string>",
"error_code": "<string>",
"stop_reason": "<string>",
"proposals": [
"<string>"
],
"findings": 123,
"skipped_by": "always",
"output": {},
"output_error": "not_returned",
"output_note": "<string>"
}
],
"current_step": 123,
"tools": [
"<string>"
],
"proposals": [
{
"id": "<string>",
"attempt": 123,
"auto": "approved",
"reason": "<string>",
"code": "status",
"batch": true,
"duplicate_of": "<string>"
}
],
"error": "<string>",
"error_code": "onec_offline",
"retry_at": "2026-10-05T09:30:00.000Z",
"auto_retries": 123,
"cancel_requested": true,
"retryable": true,
"cost_tiyn": 123
}
],
"next_cursor": "aud_01jz8x3m4n5p6q7r8s9t0v1w2x"
}{
"type": "error",
"error": {
"type": "payment_required_error",
"message": "Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.",
"code": "balance_exhausted",
"permission": "proposals.approve",
"resets_at": "2026-11-01T19:00:00.000Z",
"retry_after_seconds": 42,
"next_request_at": "2026-11-12T09:30:42.000Z",
"allowed_methods": [
"email_otp"
],
"role": "<string>",
"permissions": [
"<string>"
],
"fields": [
{
"path": "bin",
"code": "invalid_format",
"message": "БИН/ИИН — 12 цифр"
}
]
},
"request_id": "req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"
}{
"type": "error",
"error": {
"type": "payment_required_error",
"message": "Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.",
"code": "balance_exhausted",
"permission": "proposals.approve",
"resets_at": "2026-11-01T19:00:00.000Z",
"retry_after_seconds": 42,
"next_request_at": "2026-11-12T09:30:42.000Z",
"allowed_methods": [
"email_otp"
],
"role": "<string>",
"permissions": [
"<string>"
],
"fields": [
{
"path": "bin",
"code": "invalid_format",
"message": "БИН/ИИН — 12 цифр"
}
]
},
"request_id": "req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"
}{
"type": "error",
"error": {
"type": "payment_required_error",
"message": "Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.",
"code": "balance_exhausted",
"permission": "proposals.approve",
"resets_at": "2026-11-01T19:00:00.000Z",
"retry_after_seconds": 42,
"next_request_at": "2026-11-12T09:30:42.000Z",
"allowed_methods": [
"email_otp"
],
"role": "<string>",
"permissions": [
"<string>"
],
"fields": [
{
"path": "bin",
"code": "invalid_format",
"message": "БИН/ИИН — 12 цифр"
}
]
},
"request_id": "req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"
}{
"type": "error",
"error": {
"type": "payment_required_error",
"message": "Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.",
"code": "balance_exhausted",
"permission": "proposals.approve",
"resets_at": "2026-11-01T19:00:00.000Z",
"retry_after_seconds": 42,
"next_request_at": "2026-11-12T09:30:42.000Z",
"allowed_methods": [
"email_otp"
],
"role": "<string>",
"permissions": [
"<string>"
],
"fields": [
{
"path": "bin",
"code": "invalid_format",
"message": "БИН/ИИН — 12 цифр"
}
]
},
"request_id": "req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"
}{
"type": "error",
"error": {
"type": "payment_required_error",
"message": "Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.",
"code": "balance_exhausted",
"permission": "proposals.approve",
"resets_at": "2026-11-01T19:00:00.000Z",
"retry_after_seconds": 42,
"next_request_at": "2026-11-12T09:30:42.000Z",
"allowed_methods": [
"email_otp"
],
"role": "<string>",
"permissions": [
"<string>"
],
"fields": [
{
"path": "bin",
"code": "invalid_format",
"message": "БИН/ИИН — 12 цифр"
}
]
},
"request_id": "req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"
}Автоматизации
Журнал запусков
Доступ: company.read.
Доступно по ключу API.
GET
/
v1
/
companies
/
{co}
/
automations
/
runs
Журнал запусков
curl --request GET \
--url https://api.tungo.kz/v1/companies/{co}/automations/runs \
--cookie tungo.session_token=import requests
url = "https://api.tungo.kz/v1/companies/{co}/automations/runs"
headers = {"cookie": "tungo.session_token="}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {cookie: 'tungo.session_token='}};
fetch('https://api.tungo.kz/v1/companies/{co}/automations/runs', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": [
{
"id": "run_01jz8x3m4n5p6q7r8s9t0v1w2x",
"scenario_id": "scn_01jz8x3m4n5p6q7r8s9t0v1w2x",
"trigger": "hook",
"trial": true,
"event_id": "hev_01jz8x3m4n5p6q7r8s9t0v1w2x",
"external_id": "ORD-77",
"event_type": "esf.incoming.received",
"slot_at": "2026-10-05T09:30:00.000Z",
"requested_by": "<string>",
"state": "queued",
"attempt": 123,
"created_at": "2026-10-05T09:30:00.000Z",
"started_at": "2026-10-05T09:30:00.000Z",
"finished_at": "2026-10-05T09:30:00.000Z",
"stop_reason": "<string>",
"answer": "<string>",
"output": {
"order_id": "1532",
"amount_tiyn": 4500000,
"status": "written"
},
"output_error": "not_returned",
"output_note": "<string>",
"steps": [
{
"step": 123,
"action": "agent",
"state": "done",
"answer": "<string>",
"error": "<string>",
"error_code": "<string>",
"stop_reason": "<string>",
"proposals": [
"<string>"
],
"findings": 123,
"skipped_by": "always",
"output": {},
"output_error": "not_returned",
"output_note": "<string>"
}
],
"current_step": 123,
"tools": [
"<string>"
],
"proposals": [
{
"id": "<string>",
"attempt": 123,
"auto": "approved",
"reason": "<string>",
"code": "status",
"batch": true,
"duplicate_of": "<string>"
}
],
"error": "<string>",
"error_code": "onec_offline",
"retry_at": "2026-10-05T09:30:00.000Z",
"auto_retries": 123,
"cancel_requested": true,
"retryable": true,
"cost_tiyn": 123
}
],
"next_cursor": "aud_01jz8x3m4n5p6q7r8s9t0v1w2x"
}{
"type": "error",
"error": {
"type": "payment_required_error",
"message": "Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.",
"code": "balance_exhausted",
"permission": "proposals.approve",
"resets_at": "2026-11-01T19:00:00.000Z",
"retry_after_seconds": 42,
"next_request_at": "2026-11-12T09:30:42.000Z",
"allowed_methods": [
"email_otp"
],
"role": "<string>",
"permissions": [
"<string>"
],
"fields": [
{
"path": "bin",
"code": "invalid_format",
"message": "БИН/ИИН — 12 цифр"
}
]
},
"request_id": "req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"
}{
"type": "error",
"error": {
"type": "payment_required_error",
"message": "Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.",
"code": "balance_exhausted",
"permission": "proposals.approve",
"resets_at": "2026-11-01T19:00:00.000Z",
"retry_after_seconds": 42,
"next_request_at": "2026-11-12T09:30:42.000Z",
"allowed_methods": [
"email_otp"
],
"role": "<string>",
"permissions": [
"<string>"
],
"fields": [
{
"path": "bin",
"code": "invalid_format",
"message": "БИН/ИИН — 12 цифр"
}
]
},
"request_id": "req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"
}{
"type": "error",
"error": {
"type": "payment_required_error",
"message": "Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.",
"code": "balance_exhausted",
"permission": "proposals.approve",
"resets_at": "2026-11-01T19:00:00.000Z",
"retry_after_seconds": 42,
"next_request_at": "2026-11-12T09:30:42.000Z",
"allowed_methods": [
"email_otp"
],
"role": "<string>",
"permissions": [
"<string>"
],
"fields": [
{
"path": "bin",
"code": "invalid_format",
"message": "БИН/ИИН — 12 цифр"
}
]
},
"request_id": "req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"
}{
"type": "error",
"error": {
"type": "payment_required_error",
"message": "Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.",
"code": "balance_exhausted",
"permission": "proposals.approve",
"resets_at": "2026-11-01T19:00:00.000Z",
"retry_after_seconds": 42,
"next_request_at": "2026-11-12T09:30:42.000Z",
"allowed_methods": [
"email_otp"
],
"role": "<string>",
"permissions": [
"<string>"
],
"fields": [
{
"path": "bin",
"code": "invalid_format",
"message": "БИН/ИИН — 12 цифр"
}
]
},
"request_id": "req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"
}{
"type": "error",
"error": {
"type": "payment_required_error",
"message": "Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.",
"code": "balance_exhausted",
"permission": "proposals.approve",
"resets_at": "2026-11-01T19:00:00.000Z",
"retry_after_seconds": 42,
"next_request_at": "2026-11-12T09:30:42.000Z",
"allowed_methods": [
"email_otp"
],
"role": "<string>",
"permissions": [
"<string>"
],
"fields": [
{
"path": "bin",
"code": "invalid_format",
"message": "БИН/ИИН — 12 цифр"
}
]
},
"request_id": "req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"
}Авторизации
sessionapiKeybearerKey
Сессия кабинета: cookie ставит вход через /v1/auth/* (Better Auth), браузер шлёт её сам — фронтенду кабинета ничего добавлять не нужно (fetch с credentials: 'include'). За HTTPS имя cookie — __Secure-tungo.session_token. Сессия кончилась — 401 authentication_error: отправить на вход.
Параметры запроса
Ответ
Запуски, свежие сверху
Курсор следующей страницы. Чтобы получить её — тот же запрос (с теми же фильтрами) и ?cursor=<это значение>. null — страниц больше нет (кнопку «Ещё» спрятать). Курсор непрозрачный: не разбирать и не собирать самому, хранить только до следующего запроса. Пустой data с не-null курсором не бывает.
Пример:
"aud_01jz8x3m4n5p6q7r8s9t0v1w2x"