Сессия кабинета: cookie ставит вход через /v1/auth/* (Better Auth), браузер шлёт её сам — фронтенду кабинета ничего добавлять не нужно (fetch с credentials: 'include'). За HTTPS имя cookie — __Secure-tungo.session_token. Сессия кончилась — 401 authentication_error: отправить на вход.
Курсор следующей страницы. Чтобы получить её — тот же запрос (с теми же фильтрами) и ?cursor=<это значение>. null — страниц больше нет (кнопку «Ещё» спрятать). Курсор непрозрачный: не разбирать и не собирать самому, хранить только до следующего запроса. Пустой data с не-null курсором не бывает.
Пример:
"aud_01jz8x3m4n5p6q7r8s9t0v1w2x"
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Tungo","description":"Документация Tungo: как подключить 1С, работать с ИИ-бухгалтером, оплатить тариф и решить частые проблемы.","colors":{"primary":"#1b1b1b","light":"#ffffff","dark":"#1b1b1b"},"logo":{"light":"https://mintcdn.com/tungo-ai/Rh5Iy_fOmTN2xA57/logo/light.svg?fit=max\u0026auto=format\u0026n=Rh5Iy_fOmTN2xA57\u0026q=85\u0026s=01cf341ba8b8a958a335b86c62038dd6","dark":"https://mintcdn.com/tungo-ai/Rh5Iy_fOmTN2xA57/logo/dark.svg?fit=max\u0026auto=format\u0026n=Rh5Iy_fOmTN2xA57\u0026q=85\u0026s=814bff13a11c1f85fdda2b0f8b775437","href":"https://tungo.kz"},"favicon":"https://mintcdn.com/tungo-ai/Rh5Iy_fOmTN2xA57/favicon.svg?fit=max\u0026auto=format\u0026n=Rh5Iy_fOmTN2xA57\u0026q=85\u0026s=5882f628ee88d422c4e923042fd4b97d","api":{"playground":{"display":"simple"},"examples":{"languages":["curl","python","javascript"]}},"appearance":{"default":"system","strict":false},"navbar":{"links":[{"href":"https://tungo.kz","label":"Сайт"}],"primary":{"type":"button","label":"Открыть Tungo","href":"https://app.tungo.kz"}},"footer":{"links":[{"header":"Tungo","items":[{"label":"Сайт","href":"https://tungo.kz"},{"label":"Кабинет","href":"https://app.tungo.kz"}]}]},"fonts":{"family":"Onest"},"icons":{"library":"lucide"},"styling":{"latex":false},"navigation":{"languages":[{"language":"ru","href":""}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"tungo-ai","hasAudioNarration":false,"actualSubdomain":"tungo-ai","customDomains":[],"gitSource":{"type":"github","owner":"tungoai","repo":"tungo-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":"","_id":"6af4da0a867599c9fc581007"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af4ee123d2d188ca8ce1361","clientVersion":"0.0.4111","searchFilterCounts":[{"language":"ru","tag":"API","count":121},{"language":"ru","tag":"API анықтамалығы","count":121},{"language":"ru","tag":"Вебхуки","count":36},{"language":"ru","tag":"Автоматизации","count":29},{"language":"ru","tag":"Платформа","count":26},{"language":"ru","tag":"Подключение 1С","count":16},{"language":"ru","tag":"Аккаунт и команда","count":16},{"language":"ru","tag":"Тарифы и оплата","count":16},{"language":"ru","tag":"1С қосу","count":16},{"language":"ru","tag":"Аккаунт және команда","count":16}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":":root{--tg-r-element: 10px;--tg-r-container: 12px;--tg-muted: #f1f1f1;--tg-border: rgb(0 0 0 / 8%);--tg-text-2: #474747}.tg-home{color:#000}.tg-home a{text-decoration:none}.tg-hero{background:var(--tg-muted);padding:72px 24px 64px;text-align:center}.tg-eyebrow{margin:0 0 20px;font-size:13px;letter-spacing:0.14em;text-transform:uppercase;color:var(--tg-text-2)}.tg-hero-title{margin:0 auto 36px;max-width:640px;font-size:clamp(32px, 5vw, 52px);line-height:1.08;font-weight:600;letter-spacing:-0.02em;text-wrap:balance}.tg-chips{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:12px;max-width:920px;margin:0 auto}.tg-chip{display:flex;flex-direction:column;gap:2px;padding:14px 18px;background:#fff;border-radius:var(--tg-r-container);color:#000;transition:box-shadow 0.2s, transform 0.2s}.tg-chip:hover{box-shadow:0 4px 6px rgb(0 0 0 / 6%), 0 12px 24px rgb(0 0 0 / 8%);transform:translateY(-1px)}.tg-chip span{font-weight:500;font-size:15px}.tg-chip small{font-size:13px;color:var(--tg-text-2)}.tg-hero-note{margin:28px 0 0;font-size:15px;color:var(--tg-text-2)}.tg-hero-note a{color:#000;text-decoration:underline;text-underline-offset:3px}.tg-section{max-width:1200px;margin:0 auto;padding:56px 24px 0}.tg-section:last-child{padding-bottom:96px}.tg-h2{margin:0 0 6px;font-size:28px;font-weight:600;letter-spacing:-0.01em}.tg-lead{margin:0 0 20px;color:var(--tg-text-2)}.tg-rows{border-top:1px solid var(--tg-border)}.tg-row{display:grid;grid-template-columns:minmax(0, 1.4fr) minmax(0, 1fr);gap:24px;align-items:center;padding:18px 8px;border-bottom:1px solid var(--tg-border);color:#000}.tg-row:hover{background:var(--tg-muted)}.tg-row span{font-size:16px}.tg-row b{font-weight:500;font-size:15px}.tg-row b::after{content:\" →\";color:var(--tg-text-2)}@media (max-width: 760px){.tg-hero{padding:48px 16px 40px}.tg-chips{grid-template-columns:1fr}.tg-section{padding:40px 16px 0}.tg-row{grid-template-columns:1fr;gap:4px}}html.dark .tg-home{color:#fff}html.dark .tg-hero{background:#1b1b1d}html.dark .tg-eyebrow,html.dark .tg-chip small,html.dark .tg-hero-note,html.dark .tg-lead,html.dark .tg-row b::after{color:#a8a8a8}html.dark .tg-chip{background:#2a2a2d;color:#fff}html.dark .tg-chip:hover{box-shadow:0 4px 6px rgb(0 0 0 / 30%), 0 12px 24px rgb(0 0 0 / 35%)}html.dark .tg-hero-note a,html.dark .tg-row{color:#fff}html.dark .tg-rows,html.dark .tg-row{border-color:rgb(255 255 255 / 10%)}html.dark .tg-row:hover{background:#1b1b1d}#localization-select-trigger{display:none}"}],"page":{"pagePath":"api-reference/автоматизации/журнал-запусков","slug":"/api-reference/автоматизации/журнал-запусков","pageMetadata":{"title":"Журнал запусков","description":"Доступ: company.read.\n\nДоступно по ключу API.","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/runs","href":"/api-reference/автоматизации/журнал-запусков","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Доступ: company.read.\"\n }), \"\\n\", _jsx(_components.p, {\n children: \"Доступно по ключу API.\"\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Журнал запусков","description":"Доступ: company.read.\n\nДоступно по ключу API.","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/runs","href":"/api-reference/автоматизации/журнал-запусков","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Автоматизации"],"summary":"Журнал запусков","description":"Доступ: company.read.\n\nДоступно по ключу API.","security":["24725876-1736-4794-b5b5-cdfbf86c499d","a9f136e3-759f-4b6f-a856-36deaba00d8d","e273a860-b4e0-4dfe-9b5b-1327b4e45f2f"],"x-api-key-access":true,"x-permission":"company.read","parameters":["0cb49d94-9c5f-429c-9a4a-d76bdd23e9d5","885d8ee8-652c-49ec-a405-f27b193839de","ab976cd6-647c-472c-8030-04ec8fa083e6","0c2a86f4-587e-406d-b47e-5417c75a5d1c","d46a47de-f30d-4506-b9c6-ce1d365b0465","26e4efc9-80b5-49d3-8a03-9aa2b20aa206"],"responses":{"200":"b212777e-fd0a-42fe-bec3-e0653e81c6a3","400":"b1083d59-e8fe-4fb7-9e54-8d6f651a543f","401":"e2c336b1-2ced-440b-a891-c4bf318d74e3","403":"36510b86-5c5d-48c2-827d-589503749d39","404":"4915c36a-d5cf-4569-842d-40b5965a83cd","429":"46bb4380-025f-4343-98ea-3e2a1f312ab9"},"operationId":"listCompanyAutomationsRuns","method":"get","type":"path","servers":["c389c850-4818-4663-a4a8-1bad0282721d"],"path":"/v1/companies/{co}/automations/runs","baseUrlOptions":["https://api.tungo.kz"],"title":"Журнал запусков","codeSamples":[],"requestExampleLanguages":["bash","python","javascript"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"0cb49d94-9c5f-429c-9a4a-d76bdd23e9d5":{"schema":{"type":"string","description":"id компании, co_… — из GET /v1/companies","isRequired":true,"uniqueKey":"","typeLabel":"string"},"required":true,"description":"id компании, co_… — из GET /v1/companies","name":"co","in":"path"},"885d8ee8-652c-49ec-a405-f27b193839de":{"schema":{"type":"string","description":"Только запуски этого сценария (scn_…)","isRequired":false,"uniqueKey":"","typeLabel":"string"},"required":false,"description":"Только запуски этого сценария (scn_…)","name":"scenario","in":"query"},"ab976cd6-647c-472c-8030-04ec8fa083e6":{"schema":{"type":"string","description":"Только запуски этого события хука (hev_… из ответа на приём)","isRequired":false,"uniqueKey":"","typeLabel":"string"},"required":false,"description":"Только запуски этого события хука (hev_… из ответа на приём)","name":"event_id","in":"query"},"0c2a86f4-587e-406d-b47e-5417c75a5d1c":{"schema":{"type":"string","description":"Только запуски по событию с этим id у отправителя (поле по id_path хука, Idempotency-Key или X-Event-Id) — найти запуск по своему заказу или платежу","isRequired":false,"uniqueKey":"","typeLabel":"string"},"required":false,"description":"Только запуски по событию с этим id у отправителя (поле по id_path хука, Idempotency-Key или X-Event-Id) — найти запуск по своему заказу или платежу","name":"external_id","in":"query"},"d46a47de-f30d-4506-b9c6-ce1d365b0465":{"schema":{"oneOf":[{"type":"integer","description":"Сколько запусков на странице: 1–100, по умолчанию 20","uniqueKey":"oneOf.0","typeLabel":"integer"},{"type":"null","description":"Сколько запусков на странице: 1–100, по умолчанию 20","uniqueKey":"oneOf.1","typeLabel":"null"}],"isRequired":false,"uniqueKey":"","typeLabel":"integer | null"},"required":false,"description":"Сколько запусков на странице: 1–100, по умолчанию 20","name":"limit","in":"query"},"26e4efc9-80b5-49d3-8a03-9aa2b20aa206":{"schema":{"type":"string","description":"next_cursor из ответа прошлой страницы; без него — первая (самая свежая) страница. Остальные фильтры — те же, что у первой страницы.","isRequired":false,"uniqueKey":"","typeLabel":"string"},"required":false,"description":"next_cursor из ответа прошлой страницы; без него — первая (самая свежая) страница. Остальные фильтры — те же, что у первой страницы.","name":"cursor","in":"query"}},"responses":{"b212777e-fd0a-42fe-bec3-e0653e81c6a3":{"description":"Запуски, свежие сверху","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"id запуска: подробности — GET …/automations/runs/{id}; повторить упавший — POST …/runs/{id}/retry (run_…)","example":"run_01jz8x3m4n5p6q7r8s9t0v1w2x","isRequired":true,"uniqueKey":"data.items.[INDEX].id","typeLabel":"string"},"scenario_id":{"type":"string","description":"Какой сценарий запущен (его могли удалить после запуска) (scn_…)","example":"scn_01jz8x3m4n5p6q7r8s9t0v1w2x","isRequired":true,"uniqueKey":"data.items.[INDEX].scenario_id","typeLabel":"string"},"trigger":{"type":"string","enum":["hook","schedule","manual","event","directbank"],"description":"Что запустило: `hook` — событие хука (event_id); `event` — событие внутри Tungo (event_type, event_id; external_id — id события evt_…, тот же, что у вебхука); `schedule` — расписание (slot_at); `manual` — ручной запуск (…/run); `directbank` — заход опроса выписки DirectBank (без ИИ: предложения выписки одобряются по правилу сценария с auto_approve.directbank)","isRequired":true,"uniqueKey":"data.items.[INDEX].trigger","typeLabel":"enum\u003cstring>"},"trial":{"type":"boolean","description":"true — пробный прогон: на прошлом событии (POST …/scenarios/{id}/run с event_id) или на пробном событии хука (POST …/hooks/{id}/test с run: true). В 1С само ничего не пишется даже при правиле автоодобрения — все предложения ждут человека; в ленте карточка с пометкой «Пробный прогон»","isRequired":true,"uniqueKey":"data.items.[INDEX].trial","typeLabel":"boolean"},"event_id":{"oneOf":[{"type":"string","description":"Событие (hev_…), которое запустило: у хука — тот же event_id, что вернул приём POST /hooks/{token}; подробности — event у GET …/runs/{id}. null — запуск не по событию","example":"hev_01jz8x3m4n5p6q7r8s9t0v1w2x","isRequired":true,"uniqueKey":"data.items.[INDEX].event_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Событие (hev_…), которое запустило: у хука — тот же event_id, что вернул приём POST /hooks/{token}; подробности — event у GET …/runs/{id}. null — запуск не по событию","example":"hev_01jz8x3m4n5p6q7r8s9t0v1w2x","isRequired":true,"uniqueKey":"data.items.[INDEX].event_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].event_id","typeLabel":"string | null"},"external_id":{"oneOf":[{"type":"string","description":"id этого события у отправителя (по id_path хука, Idempotency-Key, X-Event-Id или sha256 тела) — для сопоставления со своим заказом или платежом; у события Tungo — его id evt_… (тот же, что в вебхуке); у пробного события хука — trial:… (номер отправителя оно не занимает). null — запуск не по событию","example":"ORD-77","isRequired":true,"uniqueKey":"data.items.[INDEX].external_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"id этого события у отправителя (по id_path хука, Idempotency-Key, X-Event-Id или sha256 тела) — для сопоставления со своим заказом или платежом; у события Tungo — его id evt_… (тот же, что в вебхуке); у пробного события хука — trial:… (номер отправителя оно не занимает). null — запуск не по событию","example":"ORD-77","isRequired":true,"uniqueKey":"data.items.[INDEX].external_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].external_id","typeLabel":"string | null"},"event_type":{"oneOf":[{"type":"string","description":"Вид события Tungo, запустившего сценарий (trigger = event); null — запуск не по нему","example":"esf.incoming.received","isRequired":true,"uniqueKey":"data.items.[INDEX].event_type.oneOf.0","typeLabel":"string"},{"type":"null","description":"Вид события Tungo, запустившего сценарий (trigger = event); null — запуск не по нему","example":"esf.incoming.received","isRequired":true,"uniqueKey":"data.items.[INDEX].event_type.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].event_type","typeLabel":"string | null"},"slot_at":{"oneOf":[{"type":"string","format":"date-time","example":"2026-10-05T09:30:00.000Z","description":"Плановое время запуска по расписанию, ISO 8601 UTC; null — запуск не по расписанию","isRequired":true,"uniqueKey":"data.items.[INDEX].slot_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","example":"2026-10-05T09:30:00.000Z","description":"Плановое время запуска по расписанию, ISO 8601 UTC; null — запуск не по расписанию","isRequired":true,"uniqueKey":"data.items.[INDEX].slot_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].slot_at","typeLabel":"string\u003cdate-time> | null"},"requested_by":{"oneOf":[{"type":"string","description":"Кто запросил запуск (usr_…) — при ручном запуске и повторе. null — запуск по хуку или расписанию: человека нет, смотрите trigger и run_as сценария","isRequired":true,"uniqueKey":"data.items.[INDEX].requested_by.oneOf.0","typeLabel":"string"},{"type":"null","description":"Кто запросил запуск (usr_…) — при ручном запуске и повторе. null — запуск по хуку или расписанию: человека нет, смотрите trigger и run_as сценария","isRequired":true,"uniqueKey":"data.items.[INDEX].requested_by.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].requested_by","typeLabel":"string | null"},"state":{"type":"string","enum":["queued","running","done","error","skipped","cancelled"],"description":"Состояние: `queued` — ждёт очереди (у компании на паузе — до её снятия); `running` — идёт; `done` — завершён (итог — answer и proposals); `error` — не удался (почему — error; можно повторить, а при error_code = onec_offline он повторится сам в retry_at); `skipped` — не выполнялся: сценарий выключен или удалён к моменту запуска, либо на событие Tungo очередь компании была полна (почему — error); `cancelled` — отменён человеком (POST …/runs/{id}/cancel)","isRequired":true,"uniqueKey":"data.items.[INDEX].state","typeLabel":"enum\u003cstring>"},"attempt":{"type":"integer","description":"Номер попытки: 1, каждый повтор (retry) прибавляет 1","isRequired":true,"uniqueKey":"data.items.[INDEX].attempt","typeLabel":"integer"},"created_at":{"type":"string","format":"date-time","example":"2026-10-05T09:30:00.000Z","description":"Когда запуск поставлен в очередь, ISO 8601 UTC","isRequired":true,"uniqueKey":"data.items.[INDEX].created_at","typeLabel":"string\u003cdate-time>"},"started_at":{"oneOf":[{"type":"string","format":"date-time","example":"2026-10-05T09:30:00.000Z","description":"Когда начался, ISO 8601 UTC; null — ещё не начался","isRequired":true,"uniqueKey":"data.items.[INDEX].started_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","example":"2026-10-05T09:30:00.000Z","description":"Когда начался, ISO 8601 UTC; null — ещё не начался","isRequired":true,"uniqueKey":"data.items.[INDEX].started_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].started_at","typeLabel":"string\u003cdate-time> | null"},"finished_at":{"oneOf":[{"type":"string","format":"date-time","example":"2026-10-05T09:30:00.000Z","description":"Когда закончился, ISO 8601 UTC; null — ещё не закончился","isRequired":true,"uniqueKey":"data.items.[INDEX].finished_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","example":"2026-10-05T09:30:00.000Z","description":"Когда закончился, ISO 8601 UTC; null — ещё не закончился","isRequired":true,"uniqueKey":"data.items.[INDEX].finished_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].finished_at","typeLabel":"string\u003cdate-time> | null"},"stop_reason":{"oneOf":[{"type":"string","description":"Техническая причина остановки хода ИИ (например, end_turn — штатно). Для людей — answer и error. null — хода ИИ не было или он не закончился","isRequired":true,"uniqueKey":"data.items.[INDEX].stop_reason.oneOf.0","typeLabel":"string"},{"type":"null","description":"Техническая причина остановки хода ИИ (например, end_turn — штатно). Для людей — answer и error. null — хода ИИ не было или он не закончился","isRequired":true,"uniqueKey":"data.items.[INDEX].stop_reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].stop_reason","typeLabel":"string | null"},"answer":{"oneOf":[{"type":"string","description":"Итоговый ответ ИИ — что сделано, текстом как в чате. null — ответа нет (ещё идёт, не удался или action: checks)","isRequired":true,"uniqueKey":"data.items.[INDEX].answer.oneOf.0","typeLabel":"string"},{"type":"null","description":"Итоговый ответ ИИ — что сделано, текстом как в чате. null — ответа нет (ещё идёт, не удался или action: checks)","isRequired":true,"uniqueKey":"data.items.[INDEX].answer.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].answer","typeLabel":"string | null"},"output":{"oneOf":[{"type":"object","additionalProperties":{"oneOf":[{"type":"number","uniqueKey":"data.items.[INDEX].output.oneOf.0.additionalProperties.oneOf.0","typeLabel":"number"},{"type":"boolean","uniqueKey":"data.items.[INDEX].output.oneOf.0.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","uniqueKey":"data.items.[INDEX].output.oneOf.0.additionalProperties.oneOf.2","typeLabel":"string"}],"uniqueKey":"data.items.[INDEX].output.oneOf.0.additionalProperties","typeLabel":"number | boolean | string"},"description":"Итог в форме сценария (output): поля — числа, да/нет, значения из списка и номера. Тот же итог — в вебхуке automation.run.completed. null — у сценария нет формы итога, ИИ итог не вернул или он не прошёл проверку (output_error)","example":{"order_id":"1532","amount_tiyn":4500000,"status":"written"},"isRequired":true,"uniqueKey":"data.items.[INDEX].output.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":{"oneOf":[{"type":"number","uniqueKey":"data.items.[INDEX].output.oneOf.1.additionalProperties.oneOf.0","typeLabel":"number"},{"type":"boolean","uniqueKey":"data.items.[INDEX].output.oneOf.1.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","uniqueKey":"data.items.[INDEX].output.oneOf.1.additionalProperties.oneOf.2","typeLabel":"string"}],"uniqueKey":"data.items.[INDEX].output.oneOf.1.additionalProperties","typeLabel":"number | boolean | string"},"description":"Итог в форме сценария (output): поля — числа, да/нет, значения из списка и номера. Тот же итог — в вебхуке automation.run.completed. null — у сценария нет формы итога, ИИ итог не вернул или он не прошёл проверку (output_error)","example":{"order_id":"1532","amount_tiyn":4500000,"status":"written"},"isRequired":true,"uniqueKey":"data.items.[INDEX].output.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].output","typeLabel":"object | null"},"output_error":{"oneOf":[{"type":"string","enum":["not_returned","rejected",null],"description":"Почему итога нет: `not_returned` — ИИ его не отдал; `rejected` — отдал не в заданной форме (например, имя в поле номера). Запуск при этом не падает. null — итог есть или формы нет","isRequired":true,"uniqueKey":"data.items.[INDEX].output_error.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["not_returned","rejected",null],"description":"Почему итога нет: `not_returned` — ИИ его не отдал; `rejected` — отдал не в заданной форме (например, имя в поле номера). Запуск при этом не падает. null — итог есть или формы нет","isRequired":true,"uniqueKey":"data.items.[INDEX].output_error.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].output_error","typeLabel":"enum\u003cstring> | null"},"output_note":{"oneOf":[{"type":"string","description":"То же словами для человека; null — итог есть или формы нет","isRequired":true,"uniqueKey":"data.items.[INDEX].output_note.oneOf.0","typeLabel":"string"},{"type":"null","description":"То же словами для человека; null — итог есть или формы нет","isRequired":true,"uniqueKey":"data.items.[INDEX].output_note.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].output_note","typeLabel":"string | null"},"steps":{"type":"array","items":{"type":"object","properties":{"step":{"type":"integer","description":"Номер шага, с 1","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].step","typeLabel":"integer"},"action":{"oneOf":[{"type":"string","enum":["agent","checks","directbank","notify",null],"description":"`agent` — ход ИИ (платный); `checks` — проверки учёта; `directbank` — опрос выписки DirectBank; `notify` — вебхук automation.run.notice разработчику; null — шаг ещё не начинался","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].action.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["agent","checks","directbank","notify",null],"description":"`agent` — ход ИИ (платный); `checks` — проверки учёта; `directbank` — опрос выписки DirectBank; `notify` — вебхук automation.run.notice разработчику; null — шаг ещё не начинался","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].action.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].action","typeLabel":"enum\u003cstring> | null"},"state":{"type":"string","enum":["done","error","skipped","cancelled","pending"],"description":"`done` — выполнен; `error` — упал (с него продолжит повтор); `skipped` — пропущен по условию when (skipped_by) или пробным прогоном (шаг directbank в пробном запуске банк не опрашивает, причина — в answer); `cancelled` — остановлен отменой; `pending` — ещё не дошёл","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].state","typeLabel":"enum\u003cstring>"},"answer":{"oneOf":[{"type":"string","description":"Итог шага текстом: ответ ИИ, итог проверок или опроса выписки","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].answer.oneOf.0","typeLabel":"string"},{"type":"null","description":"Итог шага текстом: ответ ИИ, итог проверок или опроса выписки","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].answer.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].answer","typeLabel":"string | null"},"error":{"oneOf":[{"type":"string","description":"Почему шаг упал — текст для человека","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].error.oneOf.0","typeLabel":"string"},{"type":"null","description":"Почему шаг упал — текст для человека","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].error.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].error","typeLabel":"string | null"},"error_code":{"oneOf":[{"type":"string","description":"Машинная причина: `onec_offline` — 1С не на связи (запуск повторится сам с этого шага)","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].error_code.oneOf.0","typeLabel":"string"},{"type":"null","description":"Машинная причина: `onec_offline` — 1С не на связи (запуск повторится сам с этого шага)","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].error_code.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].error_code","typeLabel":"string | null"},"stop_reason":{"oneOf":[{"type":"string","description":"Почему остановился ход ИИ (у agent)","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].stop_reason.oneOf.0","typeLabel":"string"},{"type":"null","description":"Почему остановился ход ИИ (у agent)","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].stop_reason.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].stop_reason","typeLabel":"string | null"},"proposals":{"type":"array","items":{"type":"string","uniqueKey":"data.items.[INDEX].steps.items.[INDEX].proposals.items.[INDEX]","typeLabel":"string"},"description":"Предложения, подготовленные шагом (у directbank — выпиской; их одобряет правило auto_approve.directbank)","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].proposals","typeLabel":"string[]"},"findings":{"oneOf":[{"type":"integer","description":"Сколько находок у проверок (checks); null — у других шагов","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].findings.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Сколько находок у проверок (checks); null — у других шагов","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].findings.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].findings","typeLabel":"integer | null"},"skipped_by":{"oneOf":[{"type":"string","enum":["always","previous_created_proposals","checks_found_issues","previous_failed",null],"description":"Какое условие when не выполнилось (у skipped)","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].skipped_by.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["always","previous_created_proposals","checks_found_issues","previous_failed",null],"description":"Какое условие when не выполнилось (у skipped)","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].skipped_by.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].skipped_by","typeLabel":"enum\u003cstring> | null"},"output":{"oneOf":[{"type":"object","additionalProperties":{"oneOf":[{"type":"number","uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output.oneOf.0.additionalProperties.oneOf.0","typeLabel":"number"},{"type":"boolean","uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output.oneOf.0.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output.oneOf.0.additionalProperties.oneOf.2","typeLabel":"string"}],"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output.oneOf.0.additionalProperties","typeLabel":"number | boolean | string"},"description":"Итог шага agent в форме output","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":{"oneOf":[{"type":"number","uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output.oneOf.1.additionalProperties.oneOf.0","typeLabel":"number"},{"type":"boolean","uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output.oneOf.1.additionalProperties.oneOf.1","typeLabel":"boolean"},{"type":"string","uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output.oneOf.1.additionalProperties.oneOf.2","typeLabel":"string"}],"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output.oneOf.1.additionalProperties","typeLabel":"number | boolean | string"},"description":"Итог шага agent в форме output","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output","typeLabel":"object | null"},"output_error":{"oneOf":[{"type":"string","enum":["not_returned","rejected",null],"description":"Почему у шага agent нет итога","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output_error.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["not_returned","rejected",null],"description":"Почему у шага agent нет итога","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output_error.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output_error","typeLabel":"enum\u003cstring> | null"},"output_note":{"oneOf":[{"type":"string","description":"То же словами","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output_note.oneOf.0","typeLabel":"string"},{"type":"null","description":"То же словами","isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output_note.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].steps.items.[INDEX].output_note","typeLabel":"string | null"}},"required":["step","action","state","answer","error","error_code","stop_reason","proposals","findings","skipped_by","output","output_error","output_note"],"description":"Итог шага запуска.","uniqueKey":"data.items.[INDEX].steps.items.[INDEX]","typeLabel":"object"},"description":"Итоги шагов запуска по порядку (у запусков до цепочек — пусто). Повтор упавшего запуска продолжает с упавшего шага, прошлые не повторяются","isRequired":true,"uniqueKey":"data.items.[INDEX].steps","typeLabel":"object[]"},"current_step":{"oneOf":[{"type":"integer","description":"Номер шага (с 1), на котором запуск идёт, упал или отменён — с него продолжит повтор; null — запуск закончен успешно или шаги ещё не начинались","isRequired":true,"uniqueKey":"data.items.[INDEX].current_step.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Номер шага (с 1), на котором запуск идёт, упал или отменён — с него продолжит повтор; null — запуск закончен успешно или шаги ещё не начинались","isRequired":true,"uniqueKey":"data.items.[INDEX].current_step.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].current_step","typeLabel":"integer | null"},"tools":{"type":"array","items":{"type":"string","uniqueKey":"data.items.[INDEX].tools.items.[INDEX]","typeLabel":"string"},"description":"Какие инструменты ИИ вызывал (технические имена) — для разбора запуска","isRequired":true,"uniqueKey":"data.items.[INDEX].tools","typeLabel":"string[]"},"proposals":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"id предложения (документа для 1С), подготовленного запуском; карточка — GET /v1/companies/{co}/proposals/{id}","isRequired":true,"uniqueKey":"data.items.[INDEX].proposals.items.[INDEX].id","typeLabel":"string"},"attempt":{"type":"integer","description":"В какой попытке запуска подготовлено: 1 — первая, дальше — повторы","isRequired":true,"uniqueKey":"data.items.[INDEX].proposals.items.[INDEX].attempt","typeLabel":"integer"},"auto":{"type":"string","enum":["approved","draft","skipped","failed"],"description":"Итог автоодобрения: `approved` — записано в 1С и проведено само; `draft` — записано само черновиком, без проведения; `skipped` — само не записано, ждёт человека (почему — reason); `failed` — пыталось записать, но запись не удалась (reason). Нет поля — у сценария нет правила автоодобрения или предложение — повтор (duplicate_of)","uniqueKey":"data.items.[INDEX].proposals.items.[INDEX].auto","typeLabel":"enum\u003cstring>"},"reason":{"type":"string","description":"Почему не записано само (при skipped и failed) — текст для человека, показать как есть","uniqueKey":"data.items.[INDEX].proposals.items.[INDEX].reason","typeLabel":"string"},"code":{"type":"string","enum":["status","kind","level","duplicate","cap","write_unknown"],"description":"Машинная причина (при skipped и failed): `status` — предложение уже не ждёт решения (его решили раньше); `kind` — вид документа не входит в правило; `level` — ИИ не доверено записывать такой вид без человека (PUT …/autonomy); `duplicate` — похожий документ уже есть в 1С или в очереди; `cap` — потолок суммы (документа, дня сценария или компании) или числа карточек справочника за запуск; `write_unknown` — исход записи в 1С неизвестен, документ мог появиться, сумма занимает потолок: при `failed` — 1С не ответила на запись (или процесс прервался посреди неё), повтор запуска найдёт документ по метке [AI P-…]; при `skipped` — повтор такой записи сам не дописал (почему — reason), решает человек: «Записать» найдёт документ по метке. Нет поля — другая причина, см. reason","uniqueKey":"data.items.[INDEX].proposals.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"batch":{"type":"boolean","description":"true — предложение собрано пачкой (выписка, входящие ЭСФ) или выпиской DirectBank, а не отдельным propose_* хода ИИ","uniqueKey":"data.items.[INDEX].proposals.items.[INDEX].batch","typeLabel":"boolean"},"duplicate_of":{"type":"string","description":"Повтор запуска подготовил тот же документ, что прошлая попытка: это предложение отозвано, в силе указанное (id предложения)","uniqueKey":"data.items.[INDEX].proposals.items.[INDEX].duplicate_of","typeLabel":"string"}},"required":["id","attempt"],"description":"Предложение (документ для 1С), подготовленное запуском, и итог автоодобрения.","uniqueKey":"data.items.[INDEX].proposals.items.[INDEX]","typeLabel":"object"},"description":"Предложения, подготовленные запуском (по всем попыткам)","isRequired":true,"uniqueKey":"data.items.[INDEX].proposals","typeLabel":"object[]"},"error":{"oneOf":[{"type":"string","description":"Почему запуск не удался или пропущен — текст для человека; null — ошибки нет","isRequired":true,"uniqueKey":"data.items.[INDEX].error.oneOf.0","typeLabel":"string"},{"type":"null","description":"Почему запуск не удался или пропущен — текст для человека; null — ошибки нет","isRequired":true,"uniqueKey":"data.items.[INDEX].error.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].error","typeLabel":"string | null"},"error_code":{"oneOf":[{"type":"string","description":"Машинная причина ошибки: `onec_offline` — 1С не была на связи (программа в офисе или сервер 1С); null — другая причина или ошибки нет","example":"onec_offline","isRequired":true,"uniqueKey":"data.items.[INDEX].error_code.oneOf.0","typeLabel":"string"},{"type":"null","description":"Машинная причина ошибки: `onec_offline` — 1С не была на связи (программа в офисе или сервер 1С); null — другая причина или ошибки нет","example":"onec_offline","isRequired":true,"uniqueKey":"data.items.[INDEX].error_code.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].error_code","typeLabel":"string | null"},"retry_at":{"oneOf":[{"type":"string","format":"date-time","example":"2026-10-05T09:30:00.000Z","description":"Когда запуск повторится сам (ISO 8601 UTC) — только при error_code = onec_offline, пока не кончились попытки настройки automations.retry; null — сам не повторится","isRequired":true,"uniqueKey":"data.items.[INDEX].retry_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","example":"2026-10-05T09:30:00.000Z","description":"Когда запуск повторится сам (ISO 8601 UTC) — только при error_code = onec_offline, пока не кончились попытки настройки automations.retry; null — сам не повторится","isRequired":true,"uniqueKey":"data.items.[INDEX].retry_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].retry_at","typeLabel":"string\u003cdate-time> | null"},"auto_retries":{"type":"integer","description":"Сколько раз запуск уже повторялся сам после «1С не на связи»","isRequired":true,"uniqueKey":"data.items.[INDEX].auto_retries","typeLabel":"integer"},"cancel_requested":{"type":"boolean","description":"true — отмена запрошена, идущий запуск остановится на ближайшем шаге (state станет cancelled)","isRequired":true,"uniqueKey":"data.items.[INDEX].cancel_requested","typeLabel":"boolean"},"retryable":{"type":"boolean","description":"true — запуск можно повторить (state = error): показать кнопку «Повторить» → POST …/runs/{id}/retry","isRequired":true,"uniqueKey":"data.items.[INDEX].retryable","typeLabel":"boolean"},"cost_tiyn":{"type":"integer","description":"Стоимость запуска — расход ИИ с баланса платформы, в тиынах (1 ₸ = 100 тиын). 0 — ИИ не вызывался. Поле есть только у ключа API и у владельца и админа организации по сессии; остальным участникам его нет","uniqueKey":"data.items.[INDEX].cost_tiyn","typeLabel":"integer"}},"required":["id","scenario_id","trigger","trial","event_id","external_id","event_type","slot_at","requested_by","state","attempt","created_at","started_at","finished_at","stop_reason","answer","output","output_error","output_note","steps","current_step","tools","proposals","error","error_code","retry_at","auto_retries","cancel_requested","retryable"],"description":"Запуск сценария — запись журнала автоматизаций.","uniqueKey":"data.items.[INDEX]","typeLabel":"object"},"description":"Элементы этой страницы, в порядке списка (обычно от новых к старым)","isRequired":true,"uniqueKey":"data","typeLabel":"object[]"},"next_cursor":{"oneOf":[{"type":"string","description":"Курсор следующей страницы. Чтобы получить её — тот же запрос (с теми же фильтрами) и `?cursor=\u003cэто значение>`. null — страниц больше нет (кнопку «Ещё» спрятать). Курсор непрозрачный: не разбирать и не собирать самому, хранить только до следующего запроса. Пустой data с не-null курсором не бывает.","example":"aud_01jz8x3m4n5p6q7r8s9t0v1w2x","isRequired":true,"uniqueKey":"next_cursor.oneOf.0","typeLabel":"string"},{"type":"null","description":"Курсор следующей страницы. Чтобы получить её — тот же запрос (с теми же фильтрами) и `?cursor=\u003cэто значение>`. null — страниц больше нет (кнопку «Ещё» спрятать). Курсор непрозрачный: не разбирать и не собирать самому, хранить только до следующего запроса. Пустой data с не-null курсором не бывает.","example":"aud_01jz8x3m4n5p6q7r8s9t0v1w2x","isRequired":true,"uniqueKey":"next_cursor.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"next_cursor","typeLabel":"string | null"}},"required":["data","next_cursor"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"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":"\u003cstring>","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":"\u003cstring>","answer":"\u003cstring>","output":{"order_id":"1532","amount_tiyn":4500000,"status":"written"},"output_error":"not_returned","output_note":"\u003cstring>","steps":[{"step":123,"action":"agent","state":"done","answer":"\u003cstring>","error":"\u003cstring>","error_code":"\u003cstring>","stop_reason":"\u003cstring>","proposals":["\u003cstring>"],"findings":123,"skipped_by":"always","output":{},"output_error":"not_returned","output_note":"\u003cstring>"}],"current_step":123,"tools":["\u003cstring>"],"proposals":[{"id":"\u003cstring>","attempt":123,"auto":"approved","reason":"\u003cstring>","code":"status","batch":true,"duplicate_of":"\u003cstring>"}],"error":"\u003cstring>","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"}}},"exampleType":"generated"}},"headers":{"x-request-id":{"description":"Номер запроса (тот же, что request_id в теле ошибки) — назвать в обращении в поддержку. Его всегда создаёт сервер: присланный клиентом x-request-id номером не становится","schema":{"type":"string","example":"req_3f2a9c0d1e4b4c5d8e7f6a5b4c3d2e1f"}},"x-ratelimit-limit":{"description":"Только при входе по ключу API: сколько запросов можно в текущем окне — самый тесный предел из ключа и организации","schema":{"type":"integer"}},"x-ratelimit-remaining":{"description":"Только при входе по ключу API: сколько запросов осталось по этому пределу в текущем окне","schema":{"type":"integer"}},"x-ratelimit-reset":{"description":"Только при входе по ключу API: секунд до нового окна этого предела","schema":{"type":"integer"}}},"exampleType":"generated"},"b1083d59-e8fe-4fb7-9e54-8d6f651a543f":{"description":"Запрос неверен — показать error.message у формы; при error.code = validation_failed — ошибки полей в error.fields (error.type: invalid_request_error)","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["error"],"description":"Всегда «error»: так тело ошибки отличается от обычного ответа.","isRequired":true,"uniqueKey":"type","typeLabel":"enum\u003cstring>"},"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request_error","authentication_error","payment_required_error","permission_error","not_found_error","conflict_error","gone_error","limit_error","api_error","unavailable_error"],"description":"Вид ошибки — по нему ветвится клиент (не по тексту message). Статус HTTP у вида один, кроме invalid_request_error:\n- `invalid_request_error` (400) — запрос неверен: поле не прошло проверку, неверный формат, действие сейчас недопустимо. Показать message рядом с формой; повтор без исправления не поможет. Обычно 400; 413 и 422 — у кодов, где это сказано в списке code.\n- `authentication_error` (401) — нет входа: сессия закончилась, cookie нет, ключ API неверен, отозван или истёк. Кабинет — отправить на страницу входа; по ключу — проверить ключ (см. code).\n- `payment_required_error` (402) — нужны деньги или решение владельца/админа организации: ждать бесполезно. Показать message и кнопку действия по code (оформить тариф, пополнить баланс, поднять потолок); без code — не оплачено подключение компании.\n- `permission_error` (403) — нельзя: не хватает права или роли, организация заблокирована, вход не тем способом. Показать message (в нём сказано, к кому обратиться); детали — в code и полях рядом.\n- `not_found_error` (404) — нет такого объекта — или он чужой: чужие организации, компании и записи тоже отвечают 404, чтобы не раскрывать, что они есть. Показать «не найдено» и вернуть к списку.\n- `conflict_error` (409) — состояние не позволяет: уже сделано, уже идёт другое действие, версия устарела. Перечитать объект, обновить экран и показать message.\n- `gone_error` (410) — объекта больше нет: разговор не найден или истёк (вопрос в чате, ответ на вопрос ИИ, подсчёт токенов — начать новый разговор), ход потерян при перезапуске сервера, ссылка привязки программы устарела или уже использована (code connector_link_gone). Повторять незачем.\n- `limit_error` (429) — предел: частота запросов, окно тарифа, число объектов или мест. Если есть заголовок Retry-After или resets_at — пройдёт само, показать, когда; иначе нужно освободить место (удалить лишнее) или сменить тариф.\n- `api_error` (500) — сбой на нашей стороне. Показать message и request_id (для поддержки); повторить позже.\n- `unavailable_error` (503) — временно недоступно (внешний сервис, ИИ, настройка сервера). Повторить позже; если повторяется — сообщить request_id в поддержку.","example":"payment_required_error","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Готовый текст для человека по-русски: что случилось, что делать и к кому обратиться. Показывать как есть; не разбирать — формулировки меняются.","example":"Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"code":{"type":"string","description":"Уточнение вида: по нему выбирается действие интерфейса (кнопка «Пополнить», «Войти иначе»…). Нет поля — хватает type и message. Известные коды:\n- `sso_domain_taken` (409) — домен SSO уже подтверждён другой организацией\n- `sso_last_verified_domain` (409) — включён обязательный вход, а это последний подтверждённый домен — сначала выключить обязательный вход\n- `sso_login_required` (400) — включить обязательный вход можно только из сессии, открытой через SSO этой организации\n- `domain_verification_failed` (400) — запись DNS для домена не найдена или не совпала — проверить и повторить\n- `oidc_openid_scope_required` (400) — в scopes сервера входа OIDC нет openid — добавить её: без неё вход через SSO не пройдёт\n- `enterprise_only` (403) — возможность есть только на тарифе Enterprise\n- `groups_limit` (429) — достигнут предел групп в организации\n- `custom_roles_limit` (429) — достигнут предел своих ролей в организации\n- `group_managed_by_directory` (409) — группа из каталога: название и состав меняются только там\n- `group_member_not_in_workspace` (400) — в группу можно добавить только сотрудника этой организации\n- `role_above_ceiling` (400) — роль даёт права выше потолка организации\n- `unknown_model` (400) — такой модели нет — список в available_models\n- `price_required` (400) — админка, тариф целиком: у платного тарифа нужна цена (price)\n- `lago_rejected` (409) — админка, тариф целиком: Lago отказал по существу (4xx, текст Lago в message) — правила не изменены, повтор без правки не поможет\n- `price_mismatch` (400) — админка, тариф целиком: цена не сходится с правилами (место без per_seat, per_seat без цены места, цена у бесплатного)\n- `model_not_allowed` (403) — политика организации не разрешает эту модель, а подходящей разрешённой нет — админу дополнить список\n- `retention_too_short` (400) — срок хранения меньше наименьшего\n- `audit_export_range` (400) — неверный период выгрузки журнала: конец раньше начала или период слишком длинный\n- `compliance_disabled` (403) — адрес для проверок выключен — владелец включает его в настройке\n- `missing_credentials` (401) — нет ни cookie сессии, ни ключа API — войти или передать x-api-key\n- `link_revoked` (401) — вход в Tungo из 1С больше не действует (вышли, отключили на сайте, вошли в той же базе заново, компания или человек заблокированы) — 1С просит войти заново\n- `login_denied` (403) — вход из 1С отклонён на сайте Tungo — 1С показывает отказ\n- `code_expired` (410) — код входа из 1С устарел или уже использован — 1С просит новый код\n- `code_gone` (410) — код входа из 1С уже подтверждён, отклонён или устарел — на сайте подтверждать нечего\n- `invalid_api_key` (401) — ключ API неверен (опечатка или удалён)\n- `key_revoked` (401) — ключ API отозван (при правке ключа — 409 с тем же code: отозванный ключ не меняется)\n- `key_expired` (401) — срок ключа API истёк — сменить секрет (POST …/api-keys/{id}/roll: срок начнётся заново) или выпустить новый (при правке срока — 409 с тем же code: PATCH истёкший ключ не оживляет)\n- `key_disabled` (401) — ключ API выключен — включить может автор ключа или владелец организации (POST …/api-keys/{id}/enable)\n- `key_creator_lost_access` (401) — тот, кто выпустил ключ, больше не владелец/админ организации — ключ недействителен\n- `user_banned` (401) — вход в аккаунт закрыт администратором Tungo — только поддержка Tungo\n- `onboarding_unpaid` (402) — подключение компании к ИИ-бухгалтеру не оплачено (разовый платёж): владельцу/админу организации — «Оплатить» в настройках компании; остальным — сообщить им\n- `onboarding_pending` (402) — оплата подключения компании ещё проходит в банке — ИИ заработает после подтверждения; опрашивать состояние подключения\n- `no_active_plan` (402) — нет действующей подписки (не оформлена, закончилась, первая оплата не прошла или ждёт 3-D Secure). Владельцу/админу — кнопка в настройки оплаты; остальным — «обратитесь к владельцу организации». Что именно случилось — в message\n- `balance_exhausted` (402) — баланс доп. использования кончился. Владельцу/админу — «Пополнить баланс» или включить автопополнение; остальным — сообщить им\n- `workspace_cap_reached` (402) — достигнут месячный потолок доп. использования организации. resets_at — 1-е число следующего месяца, 00:00 по Алматы; раньше — если админ поднимет потолок\n- `report_busy` (429) — сейчас собирается много отчётов команды: повторить через время из Retry-After\n- `report_timeout` (503) — отчёт команды не успел собраться: сократить период или выбрать разбивку по месяцам\n- `company_cap_reached` (402) — достигнут месячный потолок доп. использования компании. Письмо владельцу и админам уже отправлено. resets_at — 1-е число; раньше — если админ поднимет потолок (PUT /v1/workspaces/{ws}/team/company-caps/{co})\n- `member_cap_reached` (402) — достигнут личный месячный потолок доп. использования сотрудника. resets_at — 1-е число; раньше — если админ поднимет его потолок\n- `key_cap_reached` (402) — достигнут месячный потолок расхода ключа API (или остаток меньше оценки одного вызова). resets_at — 1-е число\n- `platform_balance_exhausted` (402) — баланс платформы пуст: вызов по ключу или автоматизация не сделаны. Пополнить — POST /v1/workspaces/{ws}/platform/purchases или автопополнением\n- `platform_cap_reached` (402) — достигнут месячный потолок трат платформы. resets_at — 1-е число следующего месяца, 00:00 по Алматы; раньше — поднять потолок в PUT /v1/workspaces/{ws}/platform/account\n- `platform_disabled` (402) — платформа выключена в организации: вызовы по ключам и автоматизации остановлены. Включить — PUT /v1/workspaces/{ws}/platform/account\n- `free_plan_chat_only` (402) — бесплатный тариф: пачки из кабинета только на платных тарифах. Ключам API и автоматизациям тариф не нужен\n- `free_limit_unavailable` (402) — бесплатный лимит этой учётной записи не положен (проверка регистрации или решение администратора) — оформить тариф\n- `plan_company_limit` (402) — в организации уже столько компаний не в архиве, сколько разрешает тариф (max_companies в GET /v1/plans; limit и plan_code — в ответе): новую не завести и из архива не вернуть. Убрать лишнюю в архив или перейти на тариф больше\n- `effort_not_in_plan` (402) — поле effort в чате на тарифе без выбора усилия (max_effort тарифа null, например бесплатный): ход не начат. Прислать вопрос без effort или оформить платный тариф\n- `model_not_in_plan` (402) — модель сильнее потолка тарифа (plans.model_ceiling): вызов не сделан; более сильные модели — на платных тарифах\n- `missing_permission` (403) — не хватает права в компании (или у ключа API); какого — в поле permission\n- `login_method_not_allowed` (403) — организация пускает к своим данным только после входа другим способом; какими — в allowed_methods. Предложить выйти и войти так\n- `ip_not_allowed` (403) — ключ API не принимает запросы с этого адреса — поправить allowed_ips ключа (PATCH …/api-keys/{id}) или вызывать с разрешённого адреса\n- `key_write_limit` (403) — запись в 1С по ключу API — сверх его пределов (сумма на документ или в день, виды документов) или правило автоодобрения шире пределов ключа; в сообщении — что и на сколько\n- `human_only` (403) — это решение принимает только человек в кабинете Tungo, не ключ API: например, отклонить «не знаем, записан ли» на снимке базы без проверки 1С (confirm_unknown_write)\n- `autonomy_raise_requires_session` (403) — поднять уровень доверия ИИ или потолки компании можно только владельцу или админу организации из кабинета; ключом API — только понизить\n- `id_path_required` (400) — для автоодобрения по хуку задайте хуку id_path — путь к номеру операции в теле события: без него повтор доставки нельзя отличить от новой операции\n- `directbank_rule_exists` (400) — у компании уже есть сценарий с правилом для выписки DirectBank — правило выписки одно на компанию\n- `event_not_found` (404) — события нет в этой компании или оно удалено по сроку хранения — для пробного прогона выберите событие посвежее\n- `event_body_unavailable` (409) — тело события зашифровано, а ключ шифрования на сервере сменился — прогнать сценарий на нём нельзя\n- `scenario_steps_required` (409) — у сценария цепочка шагов, а в замене (PUT) нет ни steps, ни output: передайте steps явно, иначе замена молча убрала бы цепочку\n- `scenario_output_required` (409) — у сценария форма итога, а в замене (PUT) нет ни steps, ни output: передайте output явно (null — снять форму)\n- `automation_queue_full` (429) — у компании слишком много запусков в очереди: повторите позже (событие хука отправитель повторит сам)\n- `restarting` (503) — сервис перезапускается: новый ход не начат — повторите через Retry-After\n- `company_suspended` (403) — работа с компанией приостановлена (решение платформы или оплаты); карточка видна, работать, править и архивировать нельзя (архив — 409 с тем же code)\n- `company_archived` (403) — компания в архиве: карточка видна, работать с ней нельзя. Вернуть — POST /v1/companies/{company_id}/unarchive (владелец компании или владелец/админ организации)\n- `workspace_blocked` (403) — организация заблокирована администратором платформы — только поддержка Tungo\n- `untrusted_origin` (403) — запрос пришёл не со страницы Tungo (защита от подделки запросов) — открыть кабинет по обычному адресу; для /admin/* — только со страниц ADMIN_ORIGINS\n- `cors_not_supported` (403) — вызов API из чужого браузерного кода (CORS) не поддерживается: ключ API — секрет сервера\n- `api_keys_disabled_by_policy` (403) — политика организации запрещает ключи API\n- `owner_role_reserved` (403) — владельца компании назначает, меняет и снимает только владелец или админ организации\n- `role_above_yours` (403) — у выдаваемой (или снимаемой) роли есть права, которых нет у вас; роль — в поле role, лишние права — в permissions\n- `not_key_creator` (403) — менять компании, права, срок и секрет ключа, снимать и поднимать его пределы записи в 1С может только тот, кто его выпустил (ужесточить пределы может любой админ)\n- `transfer_wider_than_target` (403) — передать ключ нельзя: у нового владельца нет нужного права (или доступа) в одной из компаний ключа\n- `invalid_allowed_ips` (400) — в allowed_ips ключа — не IP-адрес и не подсеть CIDR; какая запись — в сообщении\n- `transfer_target_not_admin` (400) — передать ключ можно только владельцу или админу этой организации\n- `platform_model_not_allowed` (403) — модель сильнее потолка платформы (настройка platform.billing): вызов не сделан и ничего не списано\n- `managed_by_sso` (403) — удаление аккаунта: аккаунт ведёт организация (SSO или SCIM) — удаляет её администратор; организации — в workspaces\n- `fresh_session_required` (403) — удаление аккаунта без почты (Telegram): нужен свежий вход — выйти, войти снова и подтвердить\n- `api_key_not_allowed` (403) — действие только из кабинета (сессия), не по ключу API: удаление аккаунта\n- `not_own_key` (403) — по ключу API виден только расход самого этого ключа\n- `webhooks_not_in_plan` (403) — вебхуков нет в тарифе организации\n- `admin_2fa_required` (403) — админ-API: у администратора платформы нет второго фактора или эта сессия не подтверждена кодом приложения-аутентификатора (POST /v1/auth/two-factor/enable, затем verify-totp)\n- `two_factor_required` (403) — отключить второй фактор, показать его секрет или выпустить резервные коды — только после кода из приложения-аутентификатора в этой сессии\n- `webhooks_require_all_companies` (403) — вебхуки — только ключу на все компании организации (при выпуске ключа — 400 с тем же code)\n- `audit_requires_all_companies` (403) — журнал организации — только ключу на все компании организации\n- `policy_blocked` (403) — одобрение: организация не доверяет ИИ записывать такой документ этим способом (поле level — уровень доверия); одобрить по одному или поднять уровень\n- `onec_read_only` (403) — одобрение: у пользователя 1С из подключения нет права записи — дать права в 1С\n- `validation_failed` (400) — тело или параметры запроса не прошли проверку: что не так с каждым полем — в fields (путь, код, текст по-русски). Подсветить поля формы; общий message — над формой\n- `invalid_json` (400) — тело запроса — не JSON-объект\n- `personal_workspace` (400) — в личной организации нет сотрудников, приглашений и политик — нужна организация Team или Enterprise\n- `api_key_required` (400) — адрес только для запроса по ключу API\n- `email_code_unavailable` (400) — удаление аккаунта: у аккаунта нет почты для кода (вход через Telegram) — подтверждать свежим входом, без кода\n- `deletion_code_invalid` (400) — удаление аккаунта: неверный код из письма; сколько попыток осталось — attempts_left\n- `deletion_code_expired` (400) — удаление аккаунта: код истёк, попытки кончились или код не запрашивался — запросить новый (POST /v1/me/deletion/code)\n- `unsafe_url` (400) — адрес вебхука недопустим (внутренняя сеть, не HTTPS)\n- `idempotency_key_invalid` (400) — Idempotency-Key неверного вида\n- `payload_too_large` (413) — тело запроса (или события хука) больше допустимого; пределы — настройки платформы\n- `idempotency_key_reused` (422) — этот Idempotency-Key уже был у другого запроса — для нового действия нужен новый ключ\n- `has_blockers` (422) — одобрение: у предложения есть блокеры — сначала исправить их\n- `batch_too_large` (413) — одобрение пачкой: предложений больше предела (поля limit, requested) — разбить на части\n- `unknown_kind` (400) — настройки писем: такого вида уведомлений нет — взять список из GET /v1/me/notifications\n- `kind_locked` (400) — настройки писем: этот вид (безопасность и аккаунт) выключить нельзя — переключатель неактивен (locked)\n- `onec_rejected` (400) — одобрение: 1С отклонила документ (причина — в message): исправить в 1С или построить предложение заново\n- `proposal_not_found` (404) — предложения с таким id нет в компании\n- `export_link_expired` (404) — ссылка на архив выгрузки истекла или неверна — получить новую: GET /v1/me/export\n- `batch_not_found` (404) — одобрение пачкой: задания с таким batch_id нет (или в нём нет предложений)\n- `idempotency_in_progress` (409) — первый запрос с этим Idempotency-Key ещё выполняется — подождать и повторить, придёт тот же ответ\n- `idempotency_response_not_kept` (409) — запрос с этим Idempotency-Key уже выполнен, но копия ответа не хранится (в нём персональные данные): результат — по ссылке в ответе (dialog_url) или в списке; статус первого ответа — original_status\n- `idempotency_response_too_large` (409) — запрос с этим Idempotency-Key уже выполнен, но ответ слишком большой, чтобы повторить его целиком: результат — в списке; статус первого ответа — original_status\n- `sole_owner` (409) — удаление аккаунта: вы единственный владелец организации с другими участниками (workspaces) — передать владение (POST /v1/workspaces/{ws}/ownership) или удалить организацию\n- `account_deletion_in_progress` (409) — удаление аккаунта: фон уже стирает аккаунт — новый код и подтверждение не принимаются, отменить нельзя\n- `wrong_status` (409) — предложение уже не в том состоянии (поле status — нынешнее): обновить его\n- `wrong_state` (409) — запуск автоматизации уже не в том состоянии (поле state — нынешнее)\n- `dialog_closed` (409) — разговор закрыт (поле reason — почему): начать новый\n- `dialog_id_taken` (409) — разговор с таким dialog_id уже есть — для нового прислать другой id или не присылать его\n- `turn_in_progress` (409) — в разговоре уже идёт ход ИИ (поле turn — его номер): дождаться его конца или остановить\n- `turn_superseded` (409) — читаемый ход уже закончился и идёт следующий (поле turn) — читать его с начала\n- `dialog_changed` (409) — разговор только что изменился в другом окне или на другом сервере Tungo — открыть его заново (GET …/chat/{id}) и повторить\n- `already_answered` (409) — на этот вопрос ИИ уже ответили (поле turn — ход с ответом)\n- `question_stale` (409) — вопрос ИИ устарел (в разговоре уже другой вопрос или его нет) — обновить разговор\n- `dismissed` (409) — вопрос ИИ закрыт без ответа — написать обычное сообщение\n- `job_running` (409) — задание (пачка) ещё идёт — дождаться отчёта; поле batch_id\n- `payload_changed` (409) — одобрение: документ изменился после превью — построить предложение заново\n- `onec_conflict` (409) — одобрение: 1С отказала из-за конфликта (объект занят или изменён) — повторить позже\n- `onec_not_found` (409) — одобрение: в 1С нет объекта, на который ссылается документ — построить предложение заново\n- `plan_limit_reached` (429) — лимит окна тарифа исчерпан; resets_at и Retry-After — когда обновится. Показать время; если в message предложено доп. использование — дать кнопку включить\n- `rate_limited` (429) — слишком часто (по ключу API, уведомления ePay с одного адреса, попытки кода второго фактора) — подождать Retry-After секунд\n- `concurrent_turns_limit` (429) — по ключу API уже идёт предельное число ходов ИИ одновременно — дождаться окончания\n- `api_keys_limit` (429) — в организации предельное число действующих ключей API — отозвать ненужные\n- `webhook_endpoints_limit` (429) — предельное число адресов вебхуков — удалить ненужные\n- `export_too_soon` (429) — выгрузку данных можно запрашивать не чаще раза в сутки: next_request_at и Retry-After — когда можно снова\n- `hook_rate_limited` (429) — приём событий хука: больше automations.hook_events_per_minute в минуту — повторить через Retry-After секунд\n- `lago_unavailable` (503) — админка, тариф целиком: Lago не настроен или не ответил (сеть, 5xx) — правила не изменены, повторить позже\n- `model_price_missing` (503) — у модели ИИ не задана цена — сбой настройки платформы, ничего не списано; повторить позже\n- `data_export_disabled` (503) — выгрузка данных на сервере не настроена (поддержка Tungo)\n- `webhooks_disabled` (503) — вебхуки на сервере не настроены\n- `webhooks_unavailable` (503) — служба доставки вебхуков временно недоступна\n- `model_not_configured` (503) — сервис модели ИИ не настроен на сервере — повторить позже (Retry-After)\n- `write_unknown` (503) — одобрение: исход записи в 1С неизвестен (связь оборвалась) — проверить документ в 1С по метке (поле marker); повтор безопасен (retry_safe); слишком ранний повтор в 1С не пишет — подождать retry_after секунд (Retry-After)\n- `onec_unavailable` (503) — 1С сейчас не отвечает — повторить позже (Retry-After)\n- `onec_check_busy` (503) — проверка связи 1С: сервер сейчас проверяет слишком много подключений — повторить через Retry-After секунд\n- `onec_failed` (503) — записать документ в 1С не удалось по неизвестной причине — повторить позже\n- `journal_unavailable` (503) — журнал решений недоступен — пачка не одобрена, повторить позже\n- `hook_secret_unavailable` (503) — приём событий хука: секрет подписи сейчас не открыть — отправителю повторить доставку позже\n- `secret_box_missing` (503) — на сервере не задан ключ шифрования настроек — секрет подписи хука сохранить нельзя (поддержка Tungo)\n- `not_personal` (409) — перевод в команду: организация уже не личная — обновить экран\n- `subscription_blocks_conversion` (409) — перевод в команду: действует подписка для одного человека — сначала отменить её и дождаться конца периода\n- `subscription_kind_mismatch` (409) — админка: действующая подписка оформлена на другой вид организации — вид не меняется, пока она идёт\n- `enterprise_features_active` (409) — админка: у организации подключены SSO или SCIM — сначала отключить, потом снимать Enterprise\n- `too_many_members_for_personal` (409) — админка: в личной организации один человек — сначала убрать остальных участников\n- `open_debt` (409) — есть неоплаченный счёт — сначала оплатить; в плане удаления этот же код лежит в blockers\n- `active_work` (409) — в организации идут ходы ИИ или автоматизации — дождаться окончания и повторить; в плане удаления этот же код лежит в blockers\n- `deletion_already_scheduled` (409) — удаление организации уже запланировано — показать дату из плана\n- `deletion_purging` (409) — очистка организации уже идёт — отменить её нельзя\n- `workspace_deleting` (409) — админка: организация удаляется по просьбе владельца — блок удаления снимает только отмена удаления\n- `invitation_not_pending` (409) — приглашение принято, отозвано или истекло — письмо не отправить, пригласить заново\n- `last_owner` (409) — это последний владелец организации — сначала передать владение другому участнику\n- `seats_by_contract` (409) — места Enterprise — по договору, карта и докупка не работают: обратиться к менеджеру\n- `no_subscription` (409) — нет действующей подписки — сначала оформить тариф\n- `not_per_seat` (409) — этот тариф не считает оплату за место — докупка не нужна, предел мест показан в ответе GET …/seats\n- `subscription_ended` (409) — возобновление: период отменённой подписки уже закончился — ничего не списано, оформить тариф заново (повторный PUT — обычное оформление)\n- `subscription_busy` (409) — подписка уже меняется другим запросом (отмена или возобновление) — обновить экран через несколько секунд\n- `subscription_ending` (409) — подписка отменена и закончится в конце периода — места не докупаются и не сокращаются\n- `seats_unpaid_debt` (409) — подписка просрочена — сначала оплатить счёт; участники остаются, новых приглашать нельзя\n- `idempotency_conflict` (409) — докупка: этот ключ уже использован с другим числом мест — для новой покупки нужен новый ключ\n- `seat_quote_changed` (409) — докупка: сумма изменилась (другой день или новая цена), деньги не списаны — показать новую сумму из поля и спросить снова\n- `no_paid_seats` (409) — оплаченных мест ещё нет — сокращать нечего\n- `seats_below_occupied` (409) — занято больше мест, чем просите оставить — сначала убрать участников или отозвать приглашения\n- `not_enterprise` (409) — админка: места по договору есть только у Enterprise — сначала поставить вид\n- `per_seat_plan_change` (409) — смена тарифа с оплатой за место не делается сразу: Lago взял бы плату за места дважды. Отменить и оформить новый с конца периода\n- `confirm_name_mismatch` (400) — удаление организации: название введено неверно — ввести точно как в плане удаления\n- `below_min_seats` (400) — на этом тарифе мест меньше нельзя: минимум — min_seats тарифа\n- `seats_over_max` (400) — мест больше предела одной организации (team.limits.max_seats) — обратиться в поддержку\n- `seats_above_paid` (400) — PUT …/seats только сокращает; новые места — через POST …/seats с оплатой\n- `onec_check_running` (429) — проверка связи 1С уже идёт у этой компании, у вас (другая компания) или у двух других компаний организации — дождаться её итога и повторить (Retry-After)\n- `invitation_resend_too_soon` (429) — письмо с приглашением уже отправлено только что — подождать Retry-After секунд\n- `seats_exhausted` (429) — свободные места закончились: докупите места или освободите их, отозвав приглашение\n- `seat_price_unknown` (503) — цена места сейчас неизвестна (тариф не прочитан или настроен неверно), деньги не списаны — повторить позже\n- `otp_mail_failed` (503) — письмо с кодом входа не отправлено: попробуйте позже\n- `seat_period_unknown` (503) — не удалось сверить период подписки с биллингом: деньги не списаны, попробуйте позже\n\nНезнакомый code — вести себя по type.","example":"balance_exhausted","uniqueKey":"error.code","typeLabel":"string"},"permission":{"type":"string","description":"При code = missing_permission — какого права не хватает: права в компании (company.read, company.manage, company.members.manage, onec.connect, proposals.create, proposals.approve, chat.use, audit.read, automations.manage) или права только ключа API (automations.read, webhooks.manage). Показать «нужно право …» и предложить попросить админа (или выпустить ключ с этим правом).","example":"proposals.approve","uniqueKey":"error.permission","typeLabel":"string"},"resets_at":{"type":"string","format":"date-time","description":"Когда ограничение снимется само — ISO 8601, UTC. Есть у plan_limit_reached (конец окна тарифа) и у месячных потолков (workspace_cap_reached, company_cap_reached, member_cap_reached, key_cap_reached, platform_cap_reached — 1-е число, 00:00 по Алматы). Показать в местном времени: «Лимит обновится в 14:30». Нет поля — само не пройдёт.","example":"2026-11-01T19:00:00.000Z","uniqueKey":"error.resets_at","typeLabel":"string\u003cdate-time>"},"allowed_methods":{"type":"array","items":{"type":"string","enum":["email_otp","google","apple","telegram","sso"],"uniqueKey":"error.allowed_methods.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"При code = login_method_not_allowed — какими способами входа организация пускает к своим данным: email_otp — код из почты, google, apple, telegram, sso — SSO организации. Предложить выйти и войти одним из них.","uniqueKey":"error.allowed_methods","typeLabel":"enum\u003cstring>[]"},"role":{"type":"string","description":"При code = role_above_yours — ключ роли в компании, которую нельзя выдать или снять (например chief_accountant).","uniqueKey":"error.role","typeLabel":"string"},"permissions":{"type":"array","items":{"type":"string","uniqueKey":"error.permissions.items.[INDEX]","typeLabel":"string"},"description":"При code = role_above_yours — права этой роли, которых нет у того, кто выдаёт. Показать списком: «у роли есть права, которых нет у вас: …».","uniqueKey":"error.permissions","typeLabel":"string[]"},"fields":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string","description":"Путь к полю через точку, как в теле запроса или имени параметра: `name`, `lines.0.amount`. Пустая строка — всё тело (не объект, лишние поля).","example":"bin","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].path","typeLabel":"string"},"code":{"type":"string","enum":["invalid_type","too_small","too_big","invalid_format","invalid_value","not_multiple_of","unrecognized_keys","invalid_union","invalid_key","invalid_element","custom"],"description":"Что не так: invalid_type — не тот тип или поле не передано; too_small / too_big — короче/меньше или длиннее/больше допустимого; invalid_format — неверный вид (почта, дата, шаблон); invalid_value — значения нет среди допустимых; not_multiple_of — не кратно; unrecognized_keys — лишние поля; invalid_union — не подходит ни один вид; invalid_key / invalid_element — неверный ключ или элемент; custom — своё правило ручки","example":"invalid_format","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Текст для человека по-русски — показать под полем","example":"БИН/ИИН — 12 цифр","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].message","typeLabel":"string"}},"required":["path","code","message"],"description":"Ошибка одного поля запроса","uniqueKey":"error.fields.items.[INDEX]","typeLabel":"object"},"description":"При code = validation_failed — ошибки по полям, в порядке проверки; у одного поля может быть несколько.","uniqueKey":"error.fields","typeLabel":"object[]"}},"required":["type","message"],"additionalProperties":{"oneOf":[{}],"uniqueKey":"error.additionalProperties","typeLabel":"any"},"description":"Что пошло не так. Все 503 — с заголовком Retry-After (через сколько секунд повторить). Кроме описанных, у отдельных ручек бывают свои поля рядом с code (например status у wrong_status, state у wrong_state, reason у dialog_closed) — они описаны у этих ручек.","isRequired":true,"uniqueKey":"error","typeLabel":"object"},"request_id":{"oneOf":[{"type":"string","description":"Номер запроса (тот же, что в заголовке x-request-id). Показывать мелко рядом с ошибкой с кнопкой «скопировать»: по нему поддержка находит запрос в журнале. null — номер не успел появиться (очень ранний отказ).","example":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f","isRequired":true,"uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Номер запроса (тот же, что в заголовке x-request-id). Показывать мелко рядом с ошибкой с кнопкой «скопировать»: по нему поддержка находит запрос в журнале. null — номер не успел появиться (очень ранний отказ).","example":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f","isRequired":true,"uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"request_id","typeLabel":"string | null"}},"required":["type","error","request_id"],"description":"Тело любой ошибки API (статусы 4xx и 5xx): `{\"type\":\"error\",\"error\":{\"type\":\"…\",\"code\":\"…\",\"message\":\"…\"},\"request_id\":\"…\"}`. Интерфейс ветвится по error.type и error.code, человеку показывает error.message и request_id.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"type":"error","error":{"type":"payment_required_error","message":"Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.","code":"balance_exhausted","permission":"proposals.approve","resets_at":"2026-11-01T19:00:00.000Z","allowed_methods":["email_otp"],"role":"\u003cstring>","permissions":["\u003cstring>"],"fields":[{"path":"bin","code":"invalid_format","message":"БИН/ИИН — 12 цифр"}]},"request_id":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"}}},"exampleType":"generated"}},"headers":{"x-request-id":{"description":"Номер запроса (тот же, что request_id в теле ошибки) — назвать в обращении в поддержку. Его всегда создаёт сервер: присланный клиентом x-request-id номером не становится","schema":{"type":"string","example":"req_3f2a9c0d1e4b4c5d8e7f6a5b4c3d2e1f"}},"x-ratelimit-limit":{"description":"Только при входе по ключу API: сколько запросов можно в текущем окне — самый тесный предел из ключа и организации","schema":{"type":"integer"}},"x-ratelimit-remaining":{"description":"Только при входе по ключу API: сколько запросов осталось по этому пределу в текущем окне","schema":{"type":"integer"}},"x-ratelimit-reset":{"description":"Только при входе по ключу API: секунд до нового окна этого предела","schema":{"type":"integer"}}},"exampleType":"generated"},"e2c336b1-2ced-440b-a891-c4bf318d74e3":{"description":"Нет входа (сессия закончилась или ключ API неверен) — отправить на вход (error.type: authentication_error)","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["error"],"description":"Всегда «error»: так тело ошибки отличается от обычного ответа.","isRequired":true,"uniqueKey":"type","typeLabel":"enum\u003cstring>"},"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request_error","authentication_error","payment_required_error","permission_error","not_found_error","conflict_error","gone_error","limit_error","api_error","unavailable_error"],"description":"Вид ошибки — по нему ветвится клиент (не по тексту message). Статус HTTP у вида один, кроме invalid_request_error:\n- `invalid_request_error` (400) — запрос неверен: поле не прошло проверку, неверный формат, действие сейчас недопустимо. Показать message рядом с формой; повтор без исправления не поможет. Обычно 400; 413 и 422 — у кодов, где это сказано в списке code.\n- `authentication_error` (401) — нет входа: сессия закончилась, cookie нет, ключ API неверен, отозван или истёк. Кабинет — отправить на страницу входа; по ключу — проверить ключ (см. code).\n- `payment_required_error` (402) — нужны деньги или решение владельца/админа организации: ждать бесполезно. Показать message и кнопку действия по code (оформить тариф, пополнить баланс, поднять потолок); без code — не оплачено подключение компании.\n- `permission_error` (403) — нельзя: не хватает права или роли, организация заблокирована, вход не тем способом. Показать message (в нём сказано, к кому обратиться); детали — в code и полях рядом.\n- `not_found_error` (404) — нет такого объекта — или он чужой: чужие организации, компании и записи тоже отвечают 404, чтобы не раскрывать, что они есть. Показать «не найдено» и вернуть к списку.\n- `conflict_error` (409) — состояние не позволяет: уже сделано, уже идёт другое действие, версия устарела. Перечитать объект, обновить экран и показать message.\n- `gone_error` (410) — объекта больше нет: разговор не найден или истёк (вопрос в чате, ответ на вопрос ИИ, подсчёт токенов — начать новый разговор), ход потерян при перезапуске сервера, ссылка привязки программы устарела или уже использована (code connector_link_gone). Повторять незачем.\n- `limit_error` (429) — предел: частота запросов, окно тарифа, число объектов или мест. Если есть заголовок Retry-After или resets_at — пройдёт само, показать, когда; иначе нужно освободить место (удалить лишнее) или сменить тариф.\n- `api_error` (500) — сбой на нашей стороне. Показать message и request_id (для поддержки); повторить позже.\n- `unavailable_error` (503) — временно недоступно (внешний сервис, ИИ, настройка сервера). Повторить позже; если повторяется — сообщить request_id в поддержку.","example":"payment_required_error","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Готовый текст для человека по-русски: что случилось, что делать и к кому обратиться. Показывать как есть; не разбирать — формулировки меняются.","example":"Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"code":{"type":"string","description":"Уточнение вида: по нему выбирается действие интерфейса (кнопка «Пополнить», «Войти иначе»…). Нет поля — хватает type и message. Известные коды:\n- `sso_domain_taken` (409) — домен SSO уже подтверждён другой организацией\n- `sso_last_verified_domain` (409) — включён обязательный вход, а это последний подтверждённый домен — сначала выключить обязательный вход\n- `sso_login_required` (400) — включить обязательный вход можно только из сессии, открытой через SSO этой организации\n- `domain_verification_failed` (400) — запись DNS для домена не найдена или не совпала — проверить и повторить\n- `oidc_openid_scope_required` (400) — в scopes сервера входа OIDC нет openid — добавить её: без неё вход через SSO не пройдёт\n- `enterprise_only` (403) — возможность есть только на тарифе Enterprise\n- `groups_limit` (429) — достигнут предел групп в организации\n- `custom_roles_limit` (429) — достигнут предел своих ролей в организации\n- `group_managed_by_directory` (409) — группа из каталога: название и состав меняются только там\n- `group_member_not_in_workspace` (400) — в группу можно добавить только сотрудника этой организации\n- `role_above_ceiling` (400) — роль даёт права выше потолка организации\n- `unknown_model` (400) — такой модели нет — список в available_models\n- `price_required` (400) — админка, тариф целиком: у платного тарифа нужна цена (price)\n- `lago_rejected` (409) — админка, тариф целиком: Lago отказал по существу (4xx, текст Lago в message) — правила не изменены, повтор без правки не поможет\n- `price_mismatch` (400) — админка, тариф целиком: цена не сходится с правилами (место без per_seat, per_seat без цены места, цена у бесплатного)\n- `model_not_allowed` (403) — политика организации не разрешает эту модель, а подходящей разрешённой нет — админу дополнить список\n- `retention_too_short` (400) — срок хранения меньше наименьшего\n- `audit_export_range` (400) — неверный период выгрузки журнала: конец раньше начала или период слишком длинный\n- `compliance_disabled` (403) — адрес для проверок выключен — владелец включает его в настройке\n- `missing_credentials` (401) — нет ни cookie сессии, ни ключа API — войти или передать x-api-key\n- `link_revoked` (401) — вход в Tungo из 1С больше не действует (вышли, отключили на сайте, вошли в той же базе заново, компания или человек заблокированы) — 1С просит войти заново\n- `login_denied` (403) — вход из 1С отклонён на сайте Tungo — 1С показывает отказ\n- `code_expired` (410) — код входа из 1С устарел или уже использован — 1С просит новый код\n- `code_gone` (410) — код входа из 1С уже подтверждён, отклонён или устарел — на сайте подтверждать нечего\n- `invalid_api_key` (401) — ключ API неверен (опечатка или удалён)\n- `key_revoked` (401) — ключ API отозван (при правке ключа — 409 с тем же code: отозванный ключ не меняется)\n- `key_expired` (401) — срок ключа API истёк — сменить секрет (POST …/api-keys/{id}/roll: срок начнётся заново) или выпустить новый (при правке срока — 409 с тем же code: PATCH истёкший ключ не оживляет)\n- `key_disabled` (401) — ключ API выключен — включить может автор ключа или владелец организации (POST …/api-keys/{id}/enable)\n- `key_creator_lost_access` (401) — тот, кто выпустил ключ, больше не владелец/админ организации — ключ недействителен\n- `user_banned` (401) — вход в аккаунт закрыт администратором Tungo — только поддержка Tungo\n- `onboarding_unpaid` (402) — подключение компании к ИИ-бухгалтеру не оплачено (разовый платёж): владельцу/админу организации — «Оплатить» в настройках компании; остальным — сообщить им\n- `onboarding_pending` (402) — оплата подключения компании ещё проходит в банке — ИИ заработает после подтверждения; опрашивать состояние подключения\n- `no_active_plan` (402) — нет действующей подписки (не оформлена, закончилась, первая оплата не прошла или ждёт 3-D Secure). Владельцу/админу — кнопка в настройки оплаты; остальным — «обратитесь к владельцу организации». Что именно случилось — в message\n- `balance_exhausted` (402) — баланс доп. использования кончился. Владельцу/админу — «Пополнить баланс» или включить автопополнение; остальным — сообщить им\n- `workspace_cap_reached` (402) — достигнут месячный потолок доп. использования организации. resets_at — 1-е число следующего месяца, 00:00 по Алматы; раньше — если админ поднимет потолок\n- `report_busy` (429) — сейчас собирается много отчётов команды: повторить через время из Retry-After\n- `report_timeout` (503) — отчёт команды не успел собраться: сократить период или выбрать разбивку по месяцам\n- `company_cap_reached` (402) — достигнут месячный потолок доп. использования компании. Письмо владельцу и админам уже отправлено. resets_at — 1-е число; раньше — если админ поднимет потолок (PUT /v1/workspaces/{ws}/team/company-caps/{co})\n- `member_cap_reached` (402) — достигнут личный месячный потолок доп. использования сотрудника. resets_at — 1-е число; раньше — если админ поднимет его потолок\n- `key_cap_reached` (402) — достигнут месячный потолок расхода ключа API (или остаток меньше оценки одного вызова). resets_at — 1-е число\n- `platform_balance_exhausted` (402) — баланс платформы пуст: вызов по ключу или автоматизация не сделаны. Пополнить — POST /v1/workspaces/{ws}/platform/purchases или автопополнением\n- `platform_cap_reached` (402) — достигнут месячный потолок трат платформы. resets_at — 1-е число следующего месяца, 00:00 по Алматы; раньше — поднять потолок в PUT /v1/workspaces/{ws}/platform/account\n- `platform_disabled` (402) — платформа выключена в организации: вызовы по ключам и автоматизации остановлены. Включить — PUT /v1/workspaces/{ws}/platform/account\n- `free_plan_chat_only` (402) — бесплатный тариф: пачки из кабинета только на платных тарифах. Ключам API и автоматизациям тариф не нужен\n- `free_limit_unavailable` (402) — бесплатный лимит этой учётной записи не положен (проверка регистрации или решение администратора) — оформить тариф\n- `plan_company_limit` (402) — в организации уже столько компаний не в архиве, сколько разрешает тариф (max_companies в GET /v1/plans; limit и plan_code — в ответе): новую не завести и из архива не вернуть. Убрать лишнюю в архив или перейти на тариф больше\n- `effort_not_in_plan` (402) — поле effort в чате на тарифе без выбора усилия (max_effort тарифа null, например бесплатный): ход не начат. Прислать вопрос без effort или оформить платный тариф\n- `model_not_in_plan` (402) — модель сильнее потолка тарифа (plans.model_ceiling): вызов не сделан; более сильные модели — на платных тарифах\n- `missing_permission` (403) — не хватает права в компании (или у ключа API); какого — в поле permission\n- `login_method_not_allowed` (403) — организация пускает к своим данным только после входа другим способом; какими — в allowed_methods. Предложить выйти и войти так\n- `ip_not_allowed` (403) — ключ API не принимает запросы с этого адреса — поправить allowed_ips ключа (PATCH …/api-keys/{id}) или вызывать с разрешённого адреса\n- `key_write_limit` (403) — запись в 1С по ключу API — сверх его пределов (сумма на документ или в день, виды документов) или правило автоодобрения шире пределов ключа; в сообщении — что и на сколько\n- `human_only` (403) — это решение принимает только человек в кабинете Tungo, не ключ API: например, отклонить «не знаем, записан ли» на снимке базы без проверки 1С (confirm_unknown_write)\n- `autonomy_raise_requires_session` (403) — поднять уровень доверия ИИ или потолки компании можно только владельцу или админу организации из кабинета; ключом API — только понизить\n- `id_path_required` (400) — для автоодобрения по хуку задайте хуку id_path — путь к номеру операции в теле события: без него повтор доставки нельзя отличить от новой операции\n- `directbank_rule_exists` (400) — у компании уже есть сценарий с правилом для выписки DirectBank — правило выписки одно на компанию\n- `event_not_found` (404) — события нет в этой компании или оно удалено по сроку хранения — для пробного прогона выберите событие посвежее\n- `event_body_unavailable` (409) — тело события зашифровано, а ключ шифрования на сервере сменился — прогнать сценарий на нём нельзя\n- `scenario_steps_required` (409) — у сценария цепочка шагов, а в замене (PUT) нет ни steps, ни output: передайте steps явно, иначе замена молча убрала бы цепочку\n- `scenario_output_required` (409) — у сценария форма итога, а в замене (PUT) нет ни steps, ни output: передайте output явно (null — снять форму)\n- `automation_queue_full` (429) — у компании слишком много запусков в очереди: повторите позже (событие хука отправитель повторит сам)\n- `restarting` (503) — сервис перезапускается: новый ход не начат — повторите через Retry-After\n- `company_suspended` (403) — работа с компанией приостановлена (решение платформы или оплаты); карточка видна, работать, править и архивировать нельзя (архив — 409 с тем же code)\n- `company_archived` (403) — компания в архиве: карточка видна, работать с ней нельзя. Вернуть — POST /v1/companies/{company_id}/unarchive (владелец компании или владелец/админ организации)\n- `workspace_blocked` (403) — организация заблокирована администратором платформы — только поддержка Tungo\n- `untrusted_origin` (403) — запрос пришёл не со страницы Tungo (защита от подделки запросов) — открыть кабинет по обычному адресу; для /admin/* — только со страниц ADMIN_ORIGINS\n- `cors_not_supported` (403) — вызов API из чужого браузерного кода (CORS) не поддерживается: ключ API — секрет сервера\n- `api_keys_disabled_by_policy` (403) — политика организации запрещает ключи API\n- `owner_role_reserved` (403) — владельца компании назначает, меняет и снимает только владелец или админ организации\n- `role_above_yours` (403) — у выдаваемой (или снимаемой) роли есть права, которых нет у вас; роль — в поле role, лишние права — в permissions\n- `not_key_creator` (403) — менять компании, права, срок и секрет ключа, снимать и поднимать его пределы записи в 1С может только тот, кто его выпустил (ужесточить пределы может любой админ)\n- `transfer_wider_than_target` (403) — передать ключ нельзя: у нового владельца нет нужного права (или доступа) в одной из компаний ключа\n- `invalid_allowed_ips` (400) — в allowed_ips ключа — не IP-адрес и не подсеть CIDR; какая запись — в сообщении\n- `transfer_target_not_admin` (400) — передать ключ можно только владельцу или админу этой организации\n- `platform_model_not_allowed` (403) — модель сильнее потолка платформы (настройка platform.billing): вызов не сделан и ничего не списано\n- `managed_by_sso` (403) — удаление аккаунта: аккаунт ведёт организация (SSO или SCIM) — удаляет её администратор; организации — в workspaces\n- `fresh_session_required` (403) — удаление аккаунта без почты (Telegram): нужен свежий вход — выйти, войти снова и подтвердить\n- `api_key_not_allowed` (403) — действие только из кабинета (сессия), не по ключу API: удаление аккаунта\n- `not_own_key` (403) — по ключу API виден только расход самого этого ключа\n- `webhooks_not_in_plan` (403) — вебхуков нет в тарифе организации\n- `admin_2fa_required` (403) — админ-API: у администратора платформы нет второго фактора или эта сессия не подтверждена кодом приложения-аутентификатора (POST /v1/auth/two-factor/enable, затем verify-totp)\n- `two_factor_required` (403) — отключить второй фактор, показать его секрет или выпустить резервные коды — только после кода из приложения-аутентификатора в этой сессии\n- `webhooks_require_all_companies` (403) — вебхуки — только ключу на все компании организации (при выпуске ключа — 400 с тем же code)\n- `audit_requires_all_companies` (403) — журнал организации — только ключу на все компании организации\n- `policy_blocked` (403) — одобрение: организация не доверяет ИИ записывать такой документ этим способом (поле level — уровень доверия); одобрить по одному или поднять уровень\n- `onec_read_only` (403) — одобрение: у пользователя 1С из подключения нет права записи — дать права в 1С\n- `validation_failed` (400) — тело или параметры запроса не прошли проверку: что не так с каждым полем — в fields (путь, код, текст по-русски). Подсветить поля формы; общий message — над формой\n- `invalid_json` (400) — тело запроса — не JSON-объект\n- `personal_workspace` (400) — в личной организации нет сотрудников, приглашений и политик — нужна организация Team или Enterprise\n- `api_key_required` (400) — адрес только для запроса по ключу API\n- `email_code_unavailable` (400) — удаление аккаунта: у аккаунта нет почты для кода (вход через Telegram) — подтверждать свежим входом, без кода\n- `deletion_code_invalid` (400) — удаление аккаунта: неверный код из письма; сколько попыток осталось — attempts_left\n- `deletion_code_expired` (400) — удаление аккаунта: код истёк, попытки кончились или код не запрашивался — запросить новый (POST /v1/me/deletion/code)\n- `unsafe_url` (400) — адрес вебхука недопустим (внутренняя сеть, не HTTPS)\n- `idempotency_key_invalid` (400) — Idempotency-Key неверного вида\n- `payload_too_large` (413) — тело запроса (или события хука) больше допустимого; пределы — настройки платформы\n- `idempotency_key_reused` (422) — этот Idempotency-Key уже был у другого запроса — для нового действия нужен новый ключ\n- `has_blockers` (422) — одобрение: у предложения есть блокеры — сначала исправить их\n- `batch_too_large` (413) — одобрение пачкой: предложений больше предела (поля limit, requested) — разбить на части\n- `unknown_kind` (400) — настройки писем: такого вида уведомлений нет — взять список из GET /v1/me/notifications\n- `kind_locked` (400) — настройки писем: этот вид (безопасность и аккаунт) выключить нельзя — переключатель неактивен (locked)\n- `onec_rejected` (400) — одобрение: 1С отклонила документ (причина — в message): исправить в 1С или построить предложение заново\n- `proposal_not_found` (404) — предложения с таким id нет в компании\n- `export_link_expired` (404) — ссылка на архив выгрузки истекла или неверна — получить новую: GET /v1/me/export\n- `batch_not_found` (404) — одобрение пачкой: задания с таким batch_id нет (или в нём нет предложений)\n- `idempotency_in_progress` (409) — первый запрос с этим Idempotency-Key ещё выполняется — подождать и повторить, придёт тот же ответ\n- `idempotency_response_not_kept` (409) — запрос с этим Idempotency-Key уже выполнен, но копия ответа не хранится (в нём персональные данные): результат — по ссылке в ответе (dialog_url) или в списке; статус первого ответа — original_status\n- `idempotency_response_too_large` (409) — запрос с этим Idempotency-Key уже выполнен, но ответ слишком большой, чтобы повторить его целиком: результат — в списке; статус первого ответа — original_status\n- `sole_owner` (409) — удаление аккаунта: вы единственный владелец организации с другими участниками (workspaces) — передать владение (POST /v1/workspaces/{ws}/ownership) или удалить организацию\n- `account_deletion_in_progress` (409) — удаление аккаунта: фон уже стирает аккаунт — новый код и подтверждение не принимаются, отменить нельзя\n- `wrong_status` (409) — предложение уже не в том состоянии (поле status — нынешнее): обновить его\n- `wrong_state` (409) — запуск автоматизации уже не в том состоянии (поле state — нынешнее)\n- `dialog_closed` (409) — разговор закрыт (поле reason — почему): начать новый\n- `dialog_id_taken` (409) — разговор с таким dialog_id уже есть — для нового прислать другой id или не присылать его\n- `turn_in_progress` (409) — в разговоре уже идёт ход ИИ (поле turn — его номер): дождаться его конца или остановить\n- `turn_superseded` (409) — читаемый ход уже закончился и идёт следующий (поле turn) — читать его с начала\n- `dialog_changed` (409) — разговор только что изменился в другом окне или на другом сервере Tungo — открыть его заново (GET …/chat/{id}) и повторить\n- `already_answered` (409) — на этот вопрос ИИ уже ответили (поле turn — ход с ответом)\n- `question_stale` (409) — вопрос ИИ устарел (в разговоре уже другой вопрос или его нет) — обновить разговор\n- `dismissed` (409) — вопрос ИИ закрыт без ответа — написать обычное сообщение\n- `job_running` (409) — задание (пачка) ещё идёт — дождаться отчёта; поле batch_id\n- `payload_changed` (409) — одобрение: документ изменился после превью — построить предложение заново\n- `onec_conflict` (409) — одобрение: 1С отказала из-за конфликта (объект занят или изменён) — повторить позже\n- `onec_not_found` (409) — одобрение: в 1С нет объекта, на который ссылается документ — построить предложение заново\n- `plan_limit_reached` (429) — лимит окна тарифа исчерпан; resets_at и Retry-After — когда обновится. Показать время; если в message предложено доп. использование — дать кнопку включить\n- `rate_limited` (429) — слишком часто (по ключу API, уведомления ePay с одного адреса, попытки кода второго фактора) — подождать Retry-After секунд\n- `concurrent_turns_limit` (429) — по ключу API уже идёт предельное число ходов ИИ одновременно — дождаться окончания\n- `api_keys_limit` (429) — в организации предельное число действующих ключей API — отозвать ненужные\n- `webhook_endpoints_limit` (429) — предельное число адресов вебхуков — удалить ненужные\n- `export_too_soon` (429) — выгрузку данных можно запрашивать не чаще раза в сутки: next_request_at и Retry-After — когда можно снова\n- `hook_rate_limited` (429) — приём событий хука: больше automations.hook_events_per_minute в минуту — повторить через Retry-After секунд\n- `lago_unavailable` (503) — админка, тариф целиком: Lago не настроен или не ответил (сеть, 5xx) — правила не изменены, повторить позже\n- `model_price_missing` (503) — у модели ИИ не задана цена — сбой настройки платформы, ничего не списано; повторить позже\n- `data_export_disabled` (503) — выгрузка данных на сервере не настроена (поддержка Tungo)\n- `webhooks_disabled` (503) — вебхуки на сервере не настроены\n- `webhooks_unavailable` (503) — служба доставки вебхуков временно недоступна\n- `model_not_configured` (503) — сервис модели ИИ не настроен на сервере — повторить позже (Retry-After)\n- `write_unknown` (503) — одобрение: исход записи в 1С неизвестен (связь оборвалась) — проверить документ в 1С по метке (поле marker); повтор безопасен (retry_safe); слишком ранний повтор в 1С не пишет — подождать retry_after секунд (Retry-After)\n- `onec_unavailable` (503) — 1С сейчас не отвечает — повторить позже (Retry-After)\n- `onec_check_busy` (503) — проверка связи 1С: сервер сейчас проверяет слишком много подключений — повторить через Retry-After секунд\n- `onec_failed` (503) — записать документ в 1С не удалось по неизвестной причине — повторить позже\n- `journal_unavailable` (503) — журнал решений недоступен — пачка не одобрена, повторить позже\n- `hook_secret_unavailable` (503) — приём событий хука: секрет подписи сейчас не открыть — отправителю повторить доставку позже\n- `secret_box_missing` (503) — на сервере не задан ключ шифрования настроек — секрет подписи хука сохранить нельзя (поддержка Tungo)\n- `not_personal` (409) — перевод в команду: организация уже не личная — обновить экран\n- `subscription_blocks_conversion` (409) — перевод в команду: действует подписка для одного человека — сначала отменить её и дождаться конца периода\n- `subscription_kind_mismatch` (409) — админка: действующая подписка оформлена на другой вид организации — вид не меняется, пока она идёт\n- `enterprise_features_active` (409) — админка: у организации подключены SSO или SCIM — сначала отключить, потом снимать Enterprise\n- `too_many_members_for_personal` (409) — админка: в личной организации один человек — сначала убрать остальных участников\n- `open_debt` (409) — есть неоплаченный счёт — сначала оплатить; в плане удаления этот же код лежит в blockers\n- `active_work` (409) — в организации идут ходы ИИ или автоматизации — дождаться окончания и повторить; в плане удаления этот же код лежит в blockers\n- `deletion_already_scheduled` (409) — удаление организации уже запланировано — показать дату из плана\n- `deletion_purging` (409) — очистка организации уже идёт — отменить её нельзя\n- `workspace_deleting` (409) — админка: организация удаляется по просьбе владельца — блок удаления снимает только отмена удаления\n- `invitation_not_pending` (409) — приглашение принято, отозвано или истекло — письмо не отправить, пригласить заново\n- `last_owner` (409) — это последний владелец организации — сначала передать владение другому участнику\n- `seats_by_contract` (409) — места Enterprise — по договору, карта и докупка не работают: обратиться к менеджеру\n- `no_subscription` (409) — нет действующей подписки — сначала оформить тариф\n- `not_per_seat` (409) — этот тариф не считает оплату за место — докупка не нужна, предел мест показан в ответе GET …/seats\n- `subscription_ended` (409) — возобновление: период отменённой подписки уже закончился — ничего не списано, оформить тариф заново (повторный PUT — обычное оформление)\n- `subscription_busy` (409) — подписка уже меняется другим запросом (отмена или возобновление) — обновить экран через несколько секунд\n- `subscription_ending` (409) — подписка отменена и закончится в конце периода — места не докупаются и не сокращаются\n- `seats_unpaid_debt` (409) — подписка просрочена — сначала оплатить счёт; участники остаются, новых приглашать нельзя\n- `idempotency_conflict` (409) — докупка: этот ключ уже использован с другим числом мест — для новой покупки нужен новый ключ\n- `seat_quote_changed` (409) — докупка: сумма изменилась (другой день или новая цена), деньги не списаны — показать новую сумму из поля и спросить снова\n- `no_paid_seats` (409) — оплаченных мест ещё нет — сокращать нечего\n- `seats_below_occupied` (409) — занято больше мест, чем просите оставить — сначала убрать участников или отозвать приглашения\n- `not_enterprise` (409) — админка: места по договору есть только у Enterprise — сначала поставить вид\n- `per_seat_plan_change` (409) — смена тарифа с оплатой за место не делается сразу: Lago взял бы плату за места дважды. Отменить и оформить новый с конца периода\n- `confirm_name_mismatch` (400) — удаление организации: название введено неверно — ввести точно как в плане удаления\n- `below_min_seats` (400) — на этом тарифе мест меньше нельзя: минимум — min_seats тарифа\n- `seats_over_max` (400) — мест больше предела одной организации (team.limits.max_seats) — обратиться в поддержку\n- `seats_above_paid` (400) — PUT …/seats только сокращает; новые места — через POST …/seats с оплатой\n- `onec_check_running` (429) — проверка связи 1С уже идёт у этой компании, у вас (другая компания) или у двух других компаний организации — дождаться её итога и повторить (Retry-After)\n- `invitation_resend_too_soon` (429) — письмо с приглашением уже отправлено только что — подождать Retry-After секунд\n- `seats_exhausted` (429) — свободные места закончились: докупите места или освободите их, отозвав приглашение\n- `seat_price_unknown` (503) — цена места сейчас неизвестна (тариф не прочитан или настроен неверно), деньги не списаны — повторить позже\n- `otp_mail_failed` (503) — письмо с кодом входа не отправлено: попробуйте позже\n- `seat_period_unknown` (503) — не удалось сверить период подписки с биллингом: деньги не списаны, попробуйте позже\n\nНезнакомый code — вести себя по type.","example":"balance_exhausted","uniqueKey":"error.code","typeLabel":"string"},"permission":{"type":"string","description":"При code = missing_permission — какого права не хватает: права в компании (company.read, company.manage, company.members.manage, onec.connect, proposals.create, proposals.approve, chat.use, audit.read, automations.manage) или права только ключа API (automations.read, webhooks.manage). Показать «нужно право …» и предложить попросить админа (или выпустить ключ с этим правом).","example":"proposals.approve","uniqueKey":"error.permission","typeLabel":"string"},"resets_at":{"type":"string","format":"date-time","description":"Когда ограничение снимется само — ISO 8601, UTC. Есть у plan_limit_reached (конец окна тарифа) и у месячных потолков (workspace_cap_reached, company_cap_reached, member_cap_reached, key_cap_reached, platform_cap_reached — 1-е число, 00:00 по Алматы). Показать в местном времени: «Лимит обновится в 14:30». Нет поля — само не пройдёт.","example":"2026-11-01T19:00:00.000Z","uniqueKey":"error.resets_at","typeLabel":"string\u003cdate-time>"},"allowed_methods":{"type":"array","items":{"type":"string","enum":["email_otp","google","apple","telegram","sso"],"uniqueKey":"error.allowed_methods.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"При code = login_method_not_allowed — какими способами входа организация пускает к своим данным: email_otp — код из почты, google, apple, telegram, sso — SSO организации. Предложить выйти и войти одним из них.","uniqueKey":"error.allowed_methods","typeLabel":"enum\u003cstring>[]"},"role":{"type":"string","description":"При code = role_above_yours — ключ роли в компании, которую нельзя выдать или снять (например chief_accountant).","uniqueKey":"error.role","typeLabel":"string"},"permissions":{"type":"array","items":{"type":"string","uniqueKey":"error.permissions.items.[INDEX]","typeLabel":"string"},"description":"При code = role_above_yours — права этой роли, которых нет у того, кто выдаёт. Показать списком: «у роли есть права, которых нет у вас: …».","uniqueKey":"error.permissions","typeLabel":"string[]"},"fields":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string","description":"Путь к полю через точку, как в теле запроса или имени параметра: `name`, `lines.0.amount`. Пустая строка — всё тело (не объект, лишние поля).","example":"bin","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].path","typeLabel":"string"},"code":{"type":"string","enum":["invalid_type","too_small","too_big","invalid_format","invalid_value","not_multiple_of","unrecognized_keys","invalid_union","invalid_key","invalid_element","custom"],"description":"Что не так: invalid_type — не тот тип или поле не передано; too_small / too_big — короче/меньше или длиннее/больше допустимого; invalid_format — неверный вид (почта, дата, шаблон); invalid_value — значения нет среди допустимых; not_multiple_of — не кратно; unrecognized_keys — лишние поля; invalid_union — не подходит ни один вид; invalid_key / invalid_element — неверный ключ или элемент; custom — своё правило ручки","example":"invalid_format","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Текст для человека по-русски — показать под полем","example":"БИН/ИИН — 12 цифр","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].message","typeLabel":"string"}},"required":["path","code","message"],"description":"Ошибка одного поля запроса","uniqueKey":"error.fields.items.[INDEX]","typeLabel":"object"},"description":"При code = validation_failed — ошибки по полям, в порядке проверки; у одного поля может быть несколько.","uniqueKey":"error.fields","typeLabel":"object[]"}},"required":["type","message"],"additionalProperties":{"oneOf":[{}],"uniqueKey":"error.additionalProperties","typeLabel":"any"},"description":"Что пошло не так. Все 503 — с заголовком Retry-After (через сколько секунд повторить). Кроме описанных, у отдельных ручек бывают свои поля рядом с code (например status у wrong_status, state у wrong_state, reason у dialog_closed) — они описаны у этих ручек.","isRequired":true,"uniqueKey":"error","typeLabel":"object"},"request_id":{"oneOf":[{"type":"string","description":"Номер запроса (тот же, что в заголовке x-request-id). Показывать мелко рядом с ошибкой с кнопкой «скопировать»: по нему поддержка находит запрос в журнале. null — номер не успел появиться (очень ранний отказ).","example":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f","isRequired":true,"uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Номер запроса (тот же, что в заголовке x-request-id). Показывать мелко рядом с ошибкой с кнопкой «скопировать»: по нему поддержка находит запрос в журнале. null — номер не успел появиться (очень ранний отказ).","example":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f","isRequired":true,"uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"request_id","typeLabel":"string | null"}},"required":["type","error","request_id"],"description":"Тело любой ошибки API (статусы 4xx и 5xx): `{\"type\":\"error\",\"error\":{\"type\":\"…\",\"code\":\"…\",\"message\":\"…\"},\"request_id\":\"…\"}`. Интерфейс ветвится по error.type и error.code, человеку показывает error.message и request_id.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"type":"error","error":{"type":"payment_required_error","message":"Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.","code":"balance_exhausted","permission":"proposals.approve","resets_at":"2026-11-01T19:00:00.000Z","allowed_methods":["email_otp"],"role":"\u003cstring>","permissions":["\u003cstring>"],"fields":[{"path":"bin","code":"invalid_format","message":"БИН/ИИН — 12 цифр"}]},"request_id":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"}}},"exampleType":"generated"}},"headers":{"x-request-id":{"description":"Номер запроса (тот же, что request_id в теле ошибки) — назвать в обращении в поддержку. Его всегда создаёт сервер: присланный клиентом x-request-id номером не становится","schema":{"type":"string","example":"req_3f2a9c0d1e4b4c5d8e7f6a5b4c3d2e1f"}},"x-ratelimit-limit":{"description":"Только при входе по ключу API: сколько запросов можно в текущем окне — самый тесный предел из ключа и организации","schema":{"type":"integer"}},"x-ratelimit-remaining":{"description":"Только при входе по ключу API: сколько запросов осталось по этому пределу в текущем окне","schema":{"type":"integer"}},"x-ratelimit-reset":{"description":"Только при входе по ключу API: секунд до нового окна этого предела","schema":{"type":"integer"}}},"exampleType":"generated"},"36510b86-5c5d-48c2-827d-589503749d39":{"description":"Нельзя: нет права или роли, организация заблокирована, вход не тем способом — показать error.message (error.type: permission_error)","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["error"],"description":"Всегда «error»: так тело ошибки отличается от обычного ответа.","isRequired":true,"uniqueKey":"type","typeLabel":"enum\u003cstring>"},"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request_error","authentication_error","payment_required_error","permission_error","not_found_error","conflict_error","gone_error","limit_error","api_error","unavailable_error"],"description":"Вид ошибки — по нему ветвится клиент (не по тексту message). Статус HTTP у вида один, кроме invalid_request_error:\n- `invalid_request_error` (400) — запрос неверен: поле не прошло проверку, неверный формат, действие сейчас недопустимо. Показать message рядом с формой; повтор без исправления не поможет. Обычно 400; 413 и 422 — у кодов, где это сказано в списке code.\n- `authentication_error` (401) — нет входа: сессия закончилась, cookie нет, ключ API неверен, отозван или истёк. Кабинет — отправить на страницу входа; по ключу — проверить ключ (см. code).\n- `payment_required_error` (402) — нужны деньги или решение владельца/админа организации: ждать бесполезно. Показать message и кнопку действия по code (оформить тариф, пополнить баланс, поднять потолок); без code — не оплачено подключение компании.\n- `permission_error` (403) — нельзя: не хватает права или роли, организация заблокирована, вход не тем способом. Показать message (в нём сказано, к кому обратиться); детали — в code и полях рядом.\n- `not_found_error` (404) — нет такого объекта — или он чужой: чужие организации, компании и записи тоже отвечают 404, чтобы не раскрывать, что они есть. Показать «не найдено» и вернуть к списку.\n- `conflict_error` (409) — состояние не позволяет: уже сделано, уже идёт другое действие, версия устарела. Перечитать объект, обновить экран и показать message.\n- `gone_error` (410) — объекта больше нет: разговор не найден или истёк (вопрос в чате, ответ на вопрос ИИ, подсчёт токенов — начать новый разговор), ход потерян при перезапуске сервера, ссылка привязки программы устарела или уже использована (code connector_link_gone). Повторять незачем.\n- `limit_error` (429) — предел: частота запросов, окно тарифа, число объектов или мест. Если есть заголовок Retry-After или resets_at — пройдёт само, показать, когда; иначе нужно освободить место (удалить лишнее) или сменить тариф.\n- `api_error` (500) — сбой на нашей стороне. Показать message и request_id (для поддержки); повторить позже.\n- `unavailable_error` (503) — временно недоступно (внешний сервис, ИИ, настройка сервера). Повторить позже; если повторяется — сообщить request_id в поддержку.","example":"payment_required_error","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Готовый текст для человека по-русски: что случилось, что делать и к кому обратиться. Показывать как есть; не разбирать — формулировки меняются.","example":"Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"code":{"type":"string","description":"Уточнение вида: по нему выбирается действие интерфейса (кнопка «Пополнить», «Войти иначе»…). Нет поля — хватает type и message. Известные коды:\n- `sso_domain_taken` (409) — домен SSO уже подтверждён другой организацией\n- `sso_last_verified_domain` (409) — включён обязательный вход, а это последний подтверждённый домен — сначала выключить обязательный вход\n- `sso_login_required` (400) — включить обязательный вход можно только из сессии, открытой через SSO этой организации\n- `domain_verification_failed` (400) — запись DNS для домена не найдена или не совпала — проверить и повторить\n- `oidc_openid_scope_required` (400) — в scopes сервера входа OIDC нет openid — добавить её: без неё вход через SSO не пройдёт\n- `enterprise_only` (403) — возможность есть только на тарифе Enterprise\n- `groups_limit` (429) — достигнут предел групп в организации\n- `custom_roles_limit` (429) — достигнут предел своих ролей в организации\n- `group_managed_by_directory` (409) — группа из каталога: название и состав меняются только там\n- `group_member_not_in_workspace` (400) — в группу можно добавить только сотрудника этой организации\n- `role_above_ceiling` (400) — роль даёт права выше потолка организации\n- `unknown_model` (400) — такой модели нет — список в available_models\n- `price_required` (400) — админка, тариф целиком: у платного тарифа нужна цена (price)\n- `lago_rejected` (409) — админка, тариф целиком: Lago отказал по существу (4xx, текст Lago в message) — правила не изменены, повтор без правки не поможет\n- `price_mismatch` (400) — админка, тариф целиком: цена не сходится с правилами (место без per_seat, per_seat без цены места, цена у бесплатного)\n- `model_not_allowed` (403) — политика организации не разрешает эту модель, а подходящей разрешённой нет — админу дополнить список\n- `retention_too_short` (400) — срок хранения меньше наименьшего\n- `audit_export_range` (400) — неверный период выгрузки журнала: конец раньше начала или период слишком длинный\n- `compliance_disabled` (403) — адрес для проверок выключен — владелец включает его в настройке\n- `missing_credentials` (401) — нет ни cookie сессии, ни ключа API — войти или передать x-api-key\n- `link_revoked` (401) — вход в Tungo из 1С больше не действует (вышли, отключили на сайте, вошли в той же базе заново, компания или человек заблокированы) — 1С просит войти заново\n- `login_denied` (403) — вход из 1С отклонён на сайте Tungo — 1С показывает отказ\n- `code_expired` (410) — код входа из 1С устарел или уже использован — 1С просит новый код\n- `code_gone` (410) — код входа из 1С уже подтверждён, отклонён или устарел — на сайте подтверждать нечего\n- `invalid_api_key` (401) — ключ API неверен (опечатка или удалён)\n- `key_revoked` (401) — ключ API отозван (при правке ключа — 409 с тем же code: отозванный ключ не меняется)\n- `key_expired` (401) — срок ключа API истёк — сменить секрет (POST …/api-keys/{id}/roll: срок начнётся заново) или выпустить новый (при правке срока — 409 с тем же code: PATCH истёкший ключ не оживляет)\n- `key_disabled` (401) — ключ API выключен — включить может автор ключа или владелец организации (POST …/api-keys/{id}/enable)\n- `key_creator_lost_access` (401) — тот, кто выпустил ключ, больше не владелец/админ организации — ключ недействителен\n- `user_banned` (401) — вход в аккаунт закрыт администратором Tungo — только поддержка Tungo\n- `onboarding_unpaid` (402) — подключение компании к ИИ-бухгалтеру не оплачено (разовый платёж): владельцу/админу организации — «Оплатить» в настройках компании; остальным — сообщить им\n- `onboarding_pending` (402) — оплата подключения компании ещё проходит в банке — ИИ заработает после подтверждения; опрашивать состояние подключения\n- `no_active_plan` (402) — нет действующей подписки (не оформлена, закончилась, первая оплата не прошла или ждёт 3-D Secure). Владельцу/админу — кнопка в настройки оплаты; остальным — «обратитесь к владельцу организации». Что именно случилось — в message\n- `balance_exhausted` (402) — баланс доп. использования кончился. Владельцу/админу — «Пополнить баланс» или включить автопополнение; остальным — сообщить им\n- `workspace_cap_reached` (402) — достигнут месячный потолок доп. использования организации. resets_at — 1-е число следующего месяца, 00:00 по Алматы; раньше — если админ поднимет потолок\n- `report_busy` (429) — сейчас собирается много отчётов команды: повторить через время из Retry-After\n- `report_timeout` (503) — отчёт команды не успел собраться: сократить период или выбрать разбивку по месяцам\n- `company_cap_reached` (402) — достигнут месячный потолок доп. использования компании. Письмо владельцу и админам уже отправлено. resets_at — 1-е число; раньше — если админ поднимет потолок (PUT /v1/workspaces/{ws}/team/company-caps/{co})\n- `member_cap_reached` (402) — достигнут личный месячный потолок доп. использования сотрудника. resets_at — 1-е число; раньше — если админ поднимет его потолок\n- `key_cap_reached` (402) — достигнут месячный потолок расхода ключа API (или остаток меньше оценки одного вызова). resets_at — 1-е число\n- `platform_balance_exhausted` (402) — баланс платформы пуст: вызов по ключу или автоматизация не сделаны. Пополнить — POST /v1/workspaces/{ws}/platform/purchases или автопополнением\n- `platform_cap_reached` (402) — достигнут месячный потолок трат платформы. resets_at — 1-е число следующего месяца, 00:00 по Алматы; раньше — поднять потолок в PUT /v1/workspaces/{ws}/platform/account\n- `platform_disabled` (402) — платформа выключена в организации: вызовы по ключам и автоматизации остановлены. Включить — PUT /v1/workspaces/{ws}/platform/account\n- `free_plan_chat_only` (402) — бесплатный тариф: пачки из кабинета только на платных тарифах. Ключам API и автоматизациям тариф не нужен\n- `free_limit_unavailable` (402) — бесплатный лимит этой учётной записи не положен (проверка регистрации или решение администратора) — оформить тариф\n- `plan_company_limit` (402) — в организации уже столько компаний не в архиве, сколько разрешает тариф (max_companies в GET /v1/plans; limit и plan_code — в ответе): новую не завести и из архива не вернуть. Убрать лишнюю в архив или перейти на тариф больше\n- `effort_not_in_plan` (402) — поле effort в чате на тарифе без выбора усилия (max_effort тарифа null, например бесплатный): ход не начат. Прислать вопрос без effort или оформить платный тариф\n- `model_not_in_plan` (402) — модель сильнее потолка тарифа (plans.model_ceiling): вызов не сделан; более сильные модели — на платных тарифах\n- `missing_permission` (403) — не хватает права в компании (или у ключа API); какого — в поле permission\n- `login_method_not_allowed` (403) — организация пускает к своим данным только после входа другим способом; какими — в allowed_methods. Предложить выйти и войти так\n- `ip_not_allowed` (403) — ключ API не принимает запросы с этого адреса — поправить allowed_ips ключа (PATCH …/api-keys/{id}) или вызывать с разрешённого адреса\n- `key_write_limit` (403) — запись в 1С по ключу API — сверх его пределов (сумма на документ или в день, виды документов) или правило автоодобрения шире пределов ключа; в сообщении — что и на сколько\n- `human_only` (403) — это решение принимает только человек в кабинете Tungo, не ключ API: например, отклонить «не знаем, записан ли» на снимке базы без проверки 1С (confirm_unknown_write)\n- `autonomy_raise_requires_session` (403) — поднять уровень доверия ИИ или потолки компании можно только владельцу или админу организации из кабинета; ключом API — только понизить\n- `id_path_required` (400) — для автоодобрения по хуку задайте хуку id_path — путь к номеру операции в теле события: без него повтор доставки нельзя отличить от новой операции\n- `directbank_rule_exists` (400) — у компании уже есть сценарий с правилом для выписки DirectBank — правило выписки одно на компанию\n- `event_not_found` (404) — события нет в этой компании или оно удалено по сроку хранения — для пробного прогона выберите событие посвежее\n- `event_body_unavailable` (409) — тело события зашифровано, а ключ шифрования на сервере сменился — прогнать сценарий на нём нельзя\n- `scenario_steps_required` (409) — у сценария цепочка шагов, а в замене (PUT) нет ни steps, ни output: передайте steps явно, иначе замена молча убрала бы цепочку\n- `scenario_output_required` (409) — у сценария форма итога, а в замене (PUT) нет ни steps, ни output: передайте output явно (null — снять форму)\n- `automation_queue_full` (429) — у компании слишком много запусков в очереди: повторите позже (событие хука отправитель повторит сам)\n- `restarting` (503) — сервис перезапускается: новый ход не начат — повторите через Retry-After\n- `company_suspended` (403) — работа с компанией приостановлена (решение платформы или оплаты); карточка видна, работать, править и архивировать нельзя (архив — 409 с тем же code)\n- `company_archived` (403) — компания в архиве: карточка видна, работать с ней нельзя. Вернуть — POST /v1/companies/{company_id}/unarchive (владелец компании или владелец/админ организации)\n- `workspace_blocked` (403) — организация заблокирована администратором платформы — только поддержка Tungo\n- `untrusted_origin` (403) — запрос пришёл не со страницы Tungo (защита от подделки запросов) — открыть кабинет по обычному адресу; для /admin/* — только со страниц ADMIN_ORIGINS\n- `cors_not_supported` (403) — вызов API из чужого браузерного кода (CORS) не поддерживается: ключ API — секрет сервера\n- `api_keys_disabled_by_policy` (403) — политика организации запрещает ключи API\n- `owner_role_reserved` (403) — владельца компании назначает, меняет и снимает только владелец или админ организации\n- `role_above_yours` (403) — у выдаваемой (или снимаемой) роли есть права, которых нет у вас; роль — в поле role, лишние права — в permissions\n- `not_key_creator` (403) — менять компании, права, срок и секрет ключа, снимать и поднимать его пределы записи в 1С может только тот, кто его выпустил (ужесточить пределы может любой админ)\n- `transfer_wider_than_target` (403) — передать ключ нельзя: у нового владельца нет нужного права (или доступа) в одной из компаний ключа\n- `invalid_allowed_ips` (400) — в allowed_ips ключа — не IP-адрес и не подсеть CIDR; какая запись — в сообщении\n- `transfer_target_not_admin` (400) — передать ключ можно только владельцу или админу этой организации\n- `platform_model_not_allowed` (403) — модель сильнее потолка платформы (настройка platform.billing): вызов не сделан и ничего не списано\n- `managed_by_sso` (403) — удаление аккаунта: аккаунт ведёт организация (SSO или SCIM) — удаляет её администратор; организации — в workspaces\n- `fresh_session_required` (403) — удаление аккаунта без почты (Telegram): нужен свежий вход — выйти, войти снова и подтвердить\n- `api_key_not_allowed` (403) — действие только из кабинета (сессия), не по ключу API: удаление аккаунта\n- `not_own_key` (403) — по ключу API виден только расход самого этого ключа\n- `webhooks_not_in_plan` (403) — вебхуков нет в тарифе организации\n- `admin_2fa_required` (403) — админ-API: у администратора платформы нет второго фактора или эта сессия не подтверждена кодом приложения-аутентификатора (POST /v1/auth/two-factor/enable, затем verify-totp)\n- `two_factor_required` (403) — отключить второй фактор, показать его секрет или выпустить резервные коды — только после кода из приложения-аутентификатора в этой сессии\n- `webhooks_require_all_companies` (403) — вебхуки — только ключу на все компании организации (при выпуске ключа — 400 с тем же code)\n- `audit_requires_all_companies` (403) — журнал организации — только ключу на все компании организации\n- `policy_blocked` (403) — одобрение: организация не доверяет ИИ записывать такой документ этим способом (поле level — уровень доверия); одобрить по одному или поднять уровень\n- `onec_read_only` (403) — одобрение: у пользователя 1С из подключения нет права записи — дать права в 1С\n- `validation_failed` (400) — тело или параметры запроса не прошли проверку: что не так с каждым полем — в fields (путь, код, текст по-русски). Подсветить поля формы; общий message — над формой\n- `invalid_json` (400) — тело запроса — не JSON-объект\n- `personal_workspace` (400) — в личной организации нет сотрудников, приглашений и политик — нужна организация Team или Enterprise\n- `api_key_required` (400) — адрес только для запроса по ключу API\n- `email_code_unavailable` (400) — удаление аккаунта: у аккаунта нет почты для кода (вход через Telegram) — подтверждать свежим входом, без кода\n- `deletion_code_invalid` (400) — удаление аккаунта: неверный код из письма; сколько попыток осталось — attempts_left\n- `deletion_code_expired` (400) — удаление аккаунта: код истёк, попытки кончились или код не запрашивался — запросить новый (POST /v1/me/deletion/code)\n- `unsafe_url` (400) — адрес вебхука недопустим (внутренняя сеть, не HTTPS)\n- `idempotency_key_invalid` (400) — Idempotency-Key неверного вида\n- `payload_too_large` (413) — тело запроса (или события хука) больше допустимого; пределы — настройки платформы\n- `idempotency_key_reused` (422) — этот Idempotency-Key уже был у другого запроса — для нового действия нужен новый ключ\n- `has_blockers` (422) — одобрение: у предложения есть блокеры — сначала исправить их\n- `batch_too_large` (413) — одобрение пачкой: предложений больше предела (поля limit, requested) — разбить на части\n- `unknown_kind` (400) — настройки писем: такого вида уведомлений нет — взять список из GET /v1/me/notifications\n- `kind_locked` (400) — настройки писем: этот вид (безопасность и аккаунт) выключить нельзя — переключатель неактивен (locked)\n- `onec_rejected` (400) — одобрение: 1С отклонила документ (причина — в message): исправить в 1С или построить предложение заново\n- `proposal_not_found` (404) — предложения с таким id нет в компании\n- `export_link_expired` (404) — ссылка на архив выгрузки истекла или неверна — получить новую: GET /v1/me/export\n- `batch_not_found` (404) — одобрение пачкой: задания с таким batch_id нет (или в нём нет предложений)\n- `idempotency_in_progress` (409) — первый запрос с этим Idempotency-Key ещё выполняется — подождать и повторить, придёт тот же ответ\n- `idempotency_response_not_kept` (409) — запрос с этим Idempotency-Key уже выполнен, но копия ответа не хранится (в нём персональные данные): результат — по ссылке в ответе (dialog_url) или в списке; статус первого ответа — original_status\n- `idempotency_response_too_large` (409) — запрос с этим Idempotency-Key уже выполнен, но ответ слишком большой, чтобы повторить его целиком: результат — в списке; статус первого ответа — original_status\n- `sole_owner` (409) — удаление аккаунта: вы единственный владелец организации с другими участниками (workspaces) — передать владение (POST /v1/workspaces/{ws}/ownership) или удалить организацию\n- `account_deletion_in_progress` (409) — удаление аккаунта: фон уже стирает аккаунт — новый код и подтверждение не принимаются, отменить нельзя\n- `wrong_status` (409) — предложение уже не в том состоянии (поле status — нынешнее): обновить его\n- `wrong_state` (409) — запуск автоматизации уже не в том состоянии (поле state — нынешнее)\n- `dialog_closed` (409) — разговор закрыт (поле reason — почему): начать новый\n- `dialog_id_taken` (409) — разговор с таким dialog_id уже есть — для нового прислать другой id или не присылать его\n- `turn_in_progress` (409) — в разговоре уже идёт ход ИИ (поле turn — его номер): дождаться его конца или остановить\n- `turn_superseded` (409) — читаемый ход уже закончился и идёт следующий (поле turn) — читать его с начала\n- `dialog_changed` (409) — разговор только что изменился в другом окне или на другом сервере Tungo — открыть его заново (GET …/chat/{id}) и повторить\n- `already_answered` (409) — на этот вопрос ИИ уже ответили (поле turn — ход с ответом)\n- `question_stale` (409) — вопрос ИИ устарел (в разговоре уже другой вопрос или его нет) — обновить разговор\n- `dismissed` (409) — вопрос ИИ закрыт без ответа — написать обычное сообщение\n- `job_running` (409) — задание (пачка) ещё идёт — дождаться отчёта; поле batch_id\n- `payload_changed` (409) — одобрение: документ изменился после превью — построить предложение заново\n- `onec_conflict` (409) — одобрение: 1С отказала из-за конфликта (объект занят или изменён) — повторить позже\n- `onec_not_found` (409) — одобрение: в 1С нет объекта, на который ссылается документ — построить предложение заново\n- `plan_limit_reached` (429) — лимит окна тарифа исчерпан; resets_at и Retry-After — когда обновится. Показать время; если в message предложено доп. использование — дать кнопку включить\n- `rate_limited` (429) — слишком часто (по ключу API, уведомления ePay с одного адреса, попытки кода второго фактора) — подождать Retry-After секунд\n- `concurrent_turns_limit` (429) — по ключу API уже идёт предельное число ходов ИИ одновременно — дождаться окончания\n- `api_keys_limit` (429) — в организации предельное число действующих ключей API — отозвать ненужные\n- `webhook_endpoints_limit` (429) — предельное число адресов вебхуков — удалить ненужные\n- `export_too_soon` (429) — выгрузку данных можно запрашивать не чаще раза в сутки: next_request_at и Retry-After — когда можно снова\n- `hook_rate_limited` (429) — приём событий хука: больше automations.hook_events_per_minute в минуту — повторить через Retry-After секунд\n- `lago_unavailable` (503) — админка, тариф целиком: Lago не настроен или не ответил (сеть, 5xx) — правила не изменены, повторить позже\n- `model_price_missing` (503) — у модели ИИ не задана цена — сбой настройки платформы, ничего не списано; повторить позже\n- `data_export_disabled` (503) — выгрузка данных на сервере не настроена (поддержка Tungo)\n- `webhooks_disabled` (503) — вебхуки на сервере не настроены\n- `webhooks_unavailable` (503) — служба доставки вебхуков временно недоступна\n- `model_not_configured` (503) — сервис модели ИИ не настроен на сервере — повторить позже (Retry-After)\n- `write_unknown` (503) — одобрение: исход записи в 1С неизвестен (связь оборвалась) — проверить документ в 1С по метке (поле marker); повтор безопасен (retry_safe); слишком ранний повтор в 1С не пишет — подождать retry_after секунд (Retry-After)\n- `onec_unavailable` (503) — 1С сейчас не отвечает — повторить позже (Retry-After)\n- `onec_check_busy` (503) — проверка связи 1С: сервер сейчас проверяет слишком много подключений — повторить через Retry-After секунд\n- `onec_failed` (503) — записать документ в 1С не удалось по неизвестной причине — повторить позже\n- `journal_unavailable` (503) — журнал решений недоступен — пачка не одобрена, повторить позже\n- `hook_secret_unavailable` (503) — приём событий хука: секрет подписи сейчас не открыть — отправителю повторить доставку позже\n- `secret_box_missing` (503) — на сервере не задан ключ шифрования настроек — секрет подписи хука сохранить нельзя (поддержка Tungo)\n- `not_personal` (409) — перевод в команду: организация уже не личная — обновить экран\n- `subscription_blocks_conversion` (409) — перевод в команду: действует подписка для одного человека — сначала отменить её и дождаться конца периода\n- `subscription_kind_mismatch` (409) — админка: действующая подписка оформлена на другой вид организации — вид не меняется, пока она идёт\n- `enterprise_features_active` (409) — админка: у организации подключены SSO или SCIM — сначала отключить, потом снимать Enterprise\n- `too_many_members_for_personal` (409) — админка: в личной организации один человек — сначала убрать остальных участников\n- `open_debt` (409) — есть неоплаченный счёт — сначала оплатить; в плане удаления этот же код лежит в blockers\n- `active_work` (409) — в организации идут ходы ИИ или автоматизации — дождаться окончания и повторить; в плане удаления этот же код лежит в blockers\n- `deletion_already_scheduled` (409) — удаление организации уже запланировано — показать дату из плана\n- `deletion_purging` (409) — очистка организации уже идёт — отменить её нельзя\n- `workspace_deleting` (409) — админка: организация удаляется по просьбе владельца — блок удаления снимает только отмена удаления\n- `invitation_not_pending` (409) — приглашение принято, отозвано или истекло — письмо не отправить, пригласить заново\n- `last_owner` (409) — это последний владелец организации — сначала передать владение другому участнику\n- `seats_by_contract` (409) — места Enterprise — по договору, карта и докупка не работают: обратиться к менеджеру\n- `no_subscription` (409) — нет действующей подписки — сначала оформить тариф\n- `not_per_seat` (409) — этот тариф не считает оплату за место — докупка не нужна, предел мест показан в ответе GET …/seats\n- `subscription_ended` (409) — возобновление: период отменённой подписки уже закончился — ничего не списано, оформить тариф заново (повторный PUT — обычное оформление)\n- `subscription_busy` (409) — подписка уже меняется другим запросом (отмена или возобновление) — обновить экран через несколько секунд\n- `subscription_ending` (409) — подписка отменена и закончится в конце периода — места не докупаются и не сокращаются\n- `seats_unpaid_debt` (409) — подписка просрочена — сначала оплатить счёт; участники остаются, новых приглашать нельзя\n- `idempotency_conflict` (409) — докупка: этот ключ уже использован с другим числом мест — для новой покупки нужен новый ключ\n- `seat_quote_changed` (409) — докупка: сумма изменилась (другой день или новая цена), деньги не списаны — показать новую сумму из поля и спросить снова\n- `no_paid_seats` (409) — оплаченных мест ещё нет — сокращать нечего\n- `seats_below_occupied` (409) — занято больше мест, чем просите оставить — сначала убрать участников или отозвать приглашения\n- `not_enterprise` (409) — админка: места по договору есть только у Enterprise — сначала поставить вид\n- `per_seat_plan_change` (409) — смена тарифа с оплатой за место не делается сразу: Lago взял бы плату за места дважды. Отменить и оформить новый с конца периода\n- `confirm_name_mismatch` (400) — удаление организации: название введено неверно — ввести точно как в плане удаления\n- `below_min_seats` (400) — на этом тарифе мест меньше нельзя: минимум — min_seats тарифа\n- `seats_over_max` (400) — мест больше предела одной организации (team.limits.max_seats) — обратиться в поддержку\n- `seats_above_paid` (400) — PUT …/seats только сокращает; новые места — через POST …/seats с оплатой\n- `onec_check_running` (429) — проверка связи 1С уже идёт у этой компании, у вас (другая компания) или у двух других компаний организации — дождаться её итога и повторить (Retry-After)\n- `invitation_resend_too_soon` (429) — письмо с приглашением уже отправлено только что — подождать Retry-After секунд\n- `seats_exhausted` (429) — свободные места закончились: докупите места или освободите их, отозвав приглашение\n- `seat_price_unknown` (503) — цена места сейчас неизвестна (тариф не прочитан или настроен неверно), деньги не списаны — повторить позже\n- `otp_mail_failed` (503) — письмо с кодом входа не отправлено: попробуйте позже\n- `seat_period_unknown` (503) — не удалось сверить период подписки с биллингом: деньги не списаны, попробуйте позже\n\nНезнакомый code — вести себя по type.","example":"balance_exhausted","uniqueKey":"error.code","typeLabel":"string"},"permission":{"type":"string","description":"При code = missing_permission — какого права не хватает: права в компании (company.read, company.manage, company.members.manage, onec.connect, proposals.create, proposals.approve, chat.use, audit.read, automations.manage) или права только ключа API (automations.read, webhooks.manage). Показать «нужно право …» и предложить попросить админа (или выпустить ключ с этим правом).","example":"proposals.approve","uniqueKey":"error.permission","typeLabel":"string"},"resets_at":{"type":"string","format":"date-time","description":"Когда ограничение снимется само — ISO 8601, UTC. Есть у plan_limit_reached (конец окна тарифа) и у месячных потолков (workspace_cap_reached, company_cap_reached, member_cap_reached, key_cap_reached, platform_cap_reached — 1-е число, 00:00 по Алматы). Показать в местном времени: «Лимит обновится в 14:30». Нет поля — само не пройдёт.","example":"2026-11-01T19:00:00.000Z","uniqueKey":"error.resets_at","typeLabel":"string\u003cdate-time>"},"allowed_methods":{"type":"array","items":{"type":"string","enum":["email_otp","google","apple","telegram","sso"],"uniqueKey":"error.allowed_methods.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"При code = login_method_not_allowed — какими способами входа организация пускает к своим данным: email_otp — код из почты, google, apple, telegram, sso — SSO организации. Предложить выйти и войти одним из них.","uniqueKey":"error.allowed_methods","typeLabel":"enum\u003cstring>[]"},"role":{"type":"string","description":"При code = role_above_yours — ключ роли в компании, которую нельзя выдать или снять (например chief_accountant).","uniqueKey":"error.role","typeLabel":"string"},"permissions":{"type":"array","items":{"type":"string","uniqueKey":"error.permissions.items.[INDEX]","typeLabel":"string"},"description":"При code = role_above_yours — права этой роли, которых нет у того, кто выдаёт. Показать списком: «у роли есть права, которых нет у вас: …».","uniqueKey":"error.permissions","typeLabel":"string[]"},"fields":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string","description":"Путь к полю через точку, как в теле запроса или имени параметра: `name`, `lines.0.amount`. Пустая строка — всё тело (не объект, лишние поля).","example":"bin","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].path","typeLabel":"string"},"code":{"type":"string","enum":["invalid_type","too_small","too_big","invalid_format","invalid_value","not_multiple_of","unrecognized_keys","invalid_union","invalid_key","invalid_element","custom"],"description":"Что не так: invalid_type — не тот тип или поле не передано; too_small / too_big — короче/меньше или длиннее/больше допустимого; invalid_format — неверный вид (почта, дата, шаблон); invalid_value — значения нет среди допустимых; not_multiple_of — не кратно; unrecognized_keys — лишние поля; invalid_union — не подходит ни один вид; invalid_key / invalid_element — неверный ключ или элемент; custom — своё правило ручки","example":"invalid_format","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Текст для человека по-русски — показать под полем","example":"БИН/ИИН — 12 цифр","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].message","typeLabel":"string"}},"required":["path","code","message"],"description":"Ошибка одного поля запроса","uniqueKey":"error.fields.items.[INDEX]","typeLabel":"object"},"description":"При code = validation_failed — ошибки по полям, в порядке проверки; у одного поля может быть несколько.","uniqueKey":"error.fields","typeLabel":"object[]"}},"required":["type","message"],"additionalProperties":{"oneOf":[{}],"uniqueKey":"error.additionalProperties","typeLabel":"any"},"description":"Что пошло не так. Все 503 — с заголовком Retry-After (через сколько секунд повторить). Кроме описанных, у отдельных ручек бывают свои поля рядом с code (например status у wrong_status, state у wrong_state, reason у dialog_closed) — они описаны у этих ручек.","isRequired":true,"uniqueKey":"error","typeLabel":"object"},"request_id":{"oneOf":[{"type":"string","description":"Номер запроса (тот же, что в заголовке x-request-id). Показывать мелко рядом с ошибкой с кнопкой «скопировать»: по нему поддержка находит запрос в журнале. null — номер не успел появиться (очень ранний отказ).","example":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f","isRequired":true,"uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Номер запроса (тот же, что в заголовке x-request-id). Показывать мелко рядом с ошибкой с кнопкой «скопировать»: по нему поддержка находит запрос в журнале. null — номер не успел появиться (очень ранний отказ).","example":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f","isRequired":true,"uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"request_id","typeLabel":"string | null"}},"required":["type","error","request_id"],"description":"Тело любой ошибки API (статусы 4xx и 5xx): `{\"type\":\"error\",\"error\":{\"type\":\"…\",\"code\":\"…\",\"message\":\"…\"},\"request_id\":\"…\"}`. Интерфейс ветвится по error.type и error.code, человеку показывает error.message и request_id.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"type":"error","error":{"type":"payment_required_error","message":"Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.","code":"balance_exhausted","permission":"proposals.approve","resets_at":"2026-11-01T19:00:00.000Z","allowed_methods":["email_otp"],"role":"\u003cstring>","permissions":["\u003cstring>"],"fields":[{"path":"bin","code":"invalid_format","message":"БИН/ИИН — 12 цифр"}]},"request_id":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"}}},"exampleType":"generated"}},"headers":{"x-request-id":{"description":"Номер запроса (тот же, что request_id в теле ошибки) — назвать в обращении в поддержку. Его всегда создаёт сервер: присланный клиентом x-request-id номером не становится","schema":{"type":"string","example":"req_3f2a9c0d1e4b4c5d8e7f6a5b4c3d2e1f"}},"x-ratelimit-limit":{"description":"Только при входе по ключу API: сколько запросов можно в текущем окне — самый тесный предел из ключа и организации","schema":{"type":"integer"}},"x-ratelimit-remaining":{"description":"Только при входе по ключу API: сколько запросов осталось по этому пределу в текущем окне","schema":{"type":"integer"}},"x-ratelimit-reset":{"description":"Только при входе по ключу API: секунд до нового окна этого предела","schema":{"type":"integer"}}},"exampleType":"generated"},"4915c36a-d5cf-4569-842d-40b5965a83cd":{"description":"Не найдено (или чужое) (error.type: not_found_error)","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["error"],"description":"Всегда «error»: так тело ошибки отличается от обычного ответа.","isRequired":true,"uniqueKey":"type","typeLabel":"enum\u003cstring>"},"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request_error","authentication_error","payment_required_error","permission_error","not_found_error","conflict_error","gone_error","limit_error","api_error","unavailable_error"],"description":"Вид ошибки — по нему ветвится клиент (не по тексту message). Статус HTTP у вида один, кроме invalid_request_error:\n- `invalid_request_error` (400) — запрос неверен: поле не прошло проверку, неверный формат, действие сейчас недопустимо. Показать message рядом с формой; повтор без исправления не поможет. Обычно 400; 413 и 422 — у кодов, где это сказано в списке code.\n- `authentication_error` (401) — нет входа: сессия закончилась, cookie нет, ключ API неверен, отозван или истёк. Кабинет — отправить на страницу входа; по ключу — проверить ключ (см. code).\n- `payment_required_error` (402) — нужны деньги или решение владельца/админа организации: ждать бесполезно. Показать message и кнопку действия по code (оформить тариф, пополнить баланс, поднять потолок); без code — не оплачено подключение компании.\n- `permission_error` (403) — нельзя: не хватает права или роли, организация заблокирована, вход не тем способом. Показать message (в нём сказано, к кому обратиться); детали — в code и полях рядом.\n- `not_found_error` (404) — нет такого объекта — или он чужой: чужие организации, компании и записи тоже отвечают 404, чтобы не раскрывать, что они есть. Показать «не найдено» и вернуть к списку.\n- `conflict_error` (409) — состояние не позволяет: уже сделано, уже идёт другое действие, версия устарела. Перечитать объект, обновить экран и показать message.\n- `gone_error` (410) — объекта больше нет: разговор не найден или истёк (вопрос в чате, ответ на вопрос ИИ, подсчёт токенов — начать новый разговор), ход потерян при перезапуске сервера, ссылка привязки программы устарела или уже использована (code connector_link_gone). Повторять незачем.\n- `limit_error` (429) — предел: частота запросов, окно тарифа, число объектов или мест. Если есть заголовок Retry-After или resets_at — пройдёт само, показать, когда; иначе нужно освободить место (удалить лишнее) или сменить тариф.\n- `api_error` (500) — сбой на нашей стороне. Показать message и request_id (для поддержки); повторить позже.\n- `unavailable_error` (503) — временно недоступно (внешний сервис, ИИ, настройка сервера). Повторить позже; если повторяется — сообщить request_id в поддержку.","example":"payment_required_error","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Готовый текст для человека по-русски: что случилось, что делать и к кому обратиться. Показывать как есть; не разбирать — формулировки меняются.","example":"Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"code":{"type":"string","description":"Уточнение вида: по нему выбирается действие интерфейса (кнопка «Пополнить», «Войти иначе»…). Нет поля — хватает type и message. Известные коды:\n- `sso_domain_taken` (409) — домен SSO уже подтверждён другой организацией\n- `sso_last_verified_domain` (409) — включён обязательный вход, а это последний подтверждённый домен — сначала выключить обязательный вход\n- `sso_login_required` (400) — включить обязательный вход можно только из сессии, открытой через SSO этой организации\n- `domain_verification_failed` (400) — запись DNS для домена не найдена или не совпала — проверить и повторить\n- `oidc_openid_scope_required` (400) — в scopes сервера входа OIDC нет openid — добавить её: без неё вход через SSO не пройдёт\n- `enterprise_only` (403) — возможность есть только на тарифе Enterprise\n- `groups_limit` (429) — достигнут предел групп в организации\n- `custom_roles_limit` (429) — достигнут предел своих ролей в организации\n- `group_managed_by_directory` (409) — группа из каталога: название и состав меняются только там\n- `group_member_not_in_workspace` (400) — в группу можно добавить только сотрудника этой организации\n- `role_above_ceiling` (400) — роль даёт права выше потолка организации\n- `unknown_model` (400) — такой модели нет — список в available_models\n- `price_required` (400) — админка, тариф целиком: у платного тарифа нужна цена (price)\n- `lago_rejected` (409) — админка, тариф целиком: Lago отказал по существу (4xx, текст Lago в message) — правила не изменены, повтор без правки не поможет\n- `price_mismatch` (400) — админка, тариф целиком: цена не сходится с правилами (место без per_seat, per_seat без цены места, цена у бесплатного)\n- `model_not_allowed` (403) — политика организации не разрешает эту модель, а подходящей разрешённой нет — админу дополнить список\n- `retention_too_short` (400) — срок хранения меньше наименьшего\n- `audit_export_range` (400) — неверный период выгрузки журнала: конец раньше начала или период слишком длинный\n- `compliance_disabled` (403) — адрес для проверок выключен — владелец включает его в настройке\n- `missing_credentials` (401) — нет ни cookie сессии, ни ключа API — войти или передать x-api-key\n- `link_revoked` (401) — вход в Tungo из 1С больше не действует (вышли, отключили на сайте, вошли в той же базе заново, компания или человек заблокированы) — 1С просит войти заново\n- `login_denied` (403) — вход из 1С отклонён на сайте Tungo — 1С показывает отказ\n- `code_expired` (410) — код входа из 1С устарел или уже использован — 1С просит новый код\n- `code_gone` (410) — код входа из 1С уже подтверждён, отклонён или устарел — на сайте подтверждать нечего\n- `invalid_api_key` (401) — ключ API неверен (опечатка или удалён)\n- `key_revoked` (401) — ключ API отозван (при правке ключа — 409 с тем же code: отозванный ключ не меняется)\n- `key_expired` (401) — срок ключа API истёк — сменить секрет (POST …/api-keys/{id}/roll: срок начнётся заново) или выпустить новый (при правке срока — 409 с тем же code: PATCH истёкший ключ не оживляет)\n- `key_disabled` (401) — ключ API выключен — включить может автор ключа или владелец организации (POST …/api-keys/{id}/enable)\n- `key_creator_lost_access` (401) — тот, кто выпустил ключ, больше не владелец/админ организации — ключ недействителен\n- `user_banned` (401) — вход в аккаунт закрыт администратором Tungo — только поддержка Tungo\n- `onboarding_unpaid` (402) — подключение компании к ИИ-бухгалтеру не оплачено (разовый платёж): владельцу/админу организации — «Оплатить» в настройках компании; остальным — сообщить им\n- `onboarding_pending` (402) — оплата подключения компании ещё проходит в банке — ИИ заработает после подтверждения; опрашивать состояние подключения\n- `no_active_plan` (402) — нет действующей подписки (не оформлена, закончилась, первая оплата не прошла или ждёт 3-D Secure). Владельцу/админу — кнопка в настройки оплаты; остальным — «обратитесь к владельцу организации». Что именно случилось — в message\n- `balance_exhausted` (402) — баланс доп. использования кончился. Владельцу/админу — «Пополнить баланс» или включить автопополнение; остальным — сообщить им\n- `workspace_cap_reached` (402) — достигнут месячный потолок доп. использования организации. resets_at — 1-е число следующего месяца, 00:00 по Алматы; раньше — если админ поднимет потолок\n- `report_busy` (429) — сейчас собирается много отчётов команды: повторить через время из Retry-After\n- `report_timeout` (503) — отчёт команды не успел собраться: сократить период или выбрать разбивку по месяцам\n- `company_cap_reached` (402) — достигнут месячный потолок доп. использования компании. Письмо владельцу и админам уже отправлено. resets_at — 1-е число; раньше — если админ поднимет потолок (PUT /v1/workspaces/{ws}/team/company-caps/{co})\n- `member_cap_reached` (402) — достигнут личный месячный потолок доп. использования сотрудника. resets_at — 1-е число; раньше — если админ поднимет его потолок\n- `key_cap_reached` (402) — достигнут месячный потолок расхода ключа API (или остаток меньше оценки одного вызова). resets_at — 1-е число\n- `platform_balance_exhausted` (402) — баланс платформы пуст: вызов по ключу или автоматизация не сделаны. Пополнить — POST /v1/workspaces/{ws}/platform/purchases или автопополнением\n- `platform_cap_reached` (402) — достигнут месячный потолок трат платформы. resets_at — 1-е число следующего месяца, 00:00 по Алматы; раньше — поднять потолок в PUT /v1/workspaces/{ws}/platform/account\n- `platform_disabled` (402) — платформа выключена в организации: вызовы по ключам и автоматизации остановлены. Включить — PUT /v1/workspaces/{ws}/platform/account\n- `free_plan_chat_only` (402) — бесплатный тариф: пачки из кабинета только на платных тарифах. Ключам API и автоматизациям тариф не нужен\n- `free_limit_unavailable` (402) — бесплатный лимит этой учётной записи не положен (проверка регистрации или решение администратора) — оформить тариф\n- `plan_company_limit` (402) — в организации уже столько компаний не в архиве, сколько разрешает тариф (max_companies в GET /v1/plans; limit и plan_code — в ответе): новую не завести и из архива не вернуть. Убрать лишнюю в архив или перейти на тариф больше\n- `effort_not_in_plan` (402) — поле effort в чате на тарифе без выбора усилия (max_effort тарифа null, например бесплатный): ход не начат. Прислать вопрос без effort или оформить платный тариф\n- `model_not_in_plan` (402) — модель сильнее потолка тарифа (plans.model_ceiling): вызов не сделан; более сильные модели — на платных тарифах\n- `missing_permission` (403) — не хватает права в компании (или у ключа API); какого — в поле permission\n- `login_method_not_allowed` (403) — организация пускает к своим данным только после входа другим способом; какими — в allowed_methods. Предложить выйти и войти так\n- `ip_not_allowed` (403) — ключ API не принимает запросы с этого адреса — поправить allowed_ips ключа (PATCH …/api-keys/{id}) или вызывать с разрешённого адреса\n- `key_write_limit` (403) — запись в 1С по ключу API — сверх его пределов (сумма на документ или в день, виды документов) или правило автоодобрения шире пределов ключа; в сообщении — что и на сколько\n- `human_only` (403) — это решение принимает только человек в кабинете Tungo, не ключ API: например, отклонить «не знаем, записан ли» на снимке базы без проверки 1С (confirm_unknown_write)\n- `autonomy_raise_requires_session` (403) — поднять уровень доверия ИИ или потолки компании можно только владельцу или админу организации из кабинета; ключом API — только понизить\n- `id_path_required` (400) — для автоодобрения по хуку задайте хуку id_path — путь к номеру операции в теле события: без него повтор доставки нельзя отличить от новой операции\n- `directbank_rule_exists` (400) — у компании уже есть сценарий с правилом для выписки DirectBank — правило выписки одно на компанию\n- `event_not_found` (404) — события нет в этой компании или оно удалено по сроку хранения — для пробного прогона выберите событие посвежее\n- `event_body_unavailable` (409) — тело события зашифровано, а ключ шифрования на сервере сменился — прогнать сценарий на нём нельзя\n- `scenario_steps_required` (409) — у сценария цепочка шагов, а в замене (PUT) нет ни steps, ни output: передайте steps явно, иначе замена молча убрала бы цепочку\n- `scenario_output_required` (409) — у сценария форма итога, а в замене (PUT) нет ни steps, ни output: передайте output явно (null — снять форму)\n- `automation_queue_full` (429) — у компании слишком много запусков в очереди: повторите позже (событие хука отправитель повторит сам)\n- `restarting` (503) — сервис перезапускается: новый ход не начат — повторите через Retry-After\n- `company_suspended` (403) — работа с компанией приостановлена (решение платформы или оплаты); карточка видна, работать, править и архивировать нельзя (архив — 409 с тем же code)\n- `company_archived` (403) — компания в архиве: карточка видна, работать с ней нельзя. Вернуть — POST /v1/companies/{company_id}/unarchive (владелец компании или владелец/админ организации)\n- `workspace_blocked` (403) — организация заблокирована администратором платформы — только поддержка Tungo\n- `untrusted_origin` (403) — запрос пришёл не со страницы Tungo (защита от подделки запросов) — открыть кабинет по обычному адресу; для /admin/* — только со страниц ADMIN_ORIGINS\n- `cors_not_supported` (403) — вызов API из чужого браузерного кода (CORS) не поддерживается: ключ API — секрет сервера\n- `api_keys_disabled_by_policy` (403) — политика организации запрещает ключи API\n- `owner_role_reserved` (403) — владельца компании назначает, меняет и снимает только владелец или админ организации\n- `role_above_yours` (403) — у выдаваемой (или снимаемой) роли есть права, которых нет у вас; роль — в поле role, лишние права — в permissions\n- `not_key_creator` (403) — менять компании, права, срок и секрет ключа, снимать и поднимать его пределы записи в 1С может только тот, кто его выпустил (ужесточить пределы может любой админ)\n- `transfer_wider_than_target` (403) — передать ключ нельзя: у нового владельца нет нужного права (или доступа) в одной из компаний ключа\n- `invalid_allowed_ips` (400) — в allowed_ips ключа — не IP-адрес и не подсеть CIDR; какая запись — в сообщении\n- `transfer_target_not_admin` (400) — передать ключ можно только владельцу или админу этой организации\n- `platform_model_not_allowed` (403) — модель сильнее потолка платформы (настройка platform.billing): вызов не сделан и ничего не списано\n- `managed_by_sso` (403) — удаление аккаунта: аккаунт ведёт организация (SSO или SCIM) — удаляет её администратор; организации — в workspaces\n- `fresh_session_required` (403) — удаление аккаунта без почты (Telegram): нужен свежий вход — выйти, войти снова и подтвердить\n- `api_key_not_allowed` (403) — действие только из кабинета (сессия), не по ключу API: удаление аккаунта\n- `not_own_key` (403) — по ключу API виден только расход самого этого ключа\n- `webhooks_not_in_plan` (403) — вебхуков нет в тарифе организации\n- `admin_2fa_required` (403) — админ-API: у администратора платформы нет второго фактора или эта сессия не подтверждена кодом приложения-аутентификатора (POST /v1/auth/two-factor/enable, затем verify-totp)\n- `two_factor_required` (403) — отключить второй фактор, показать его секрет или выпустить резервные коды — только после кода из приложения-аутентификатора в этой сессии\n- `webhooks_require_all_companies` (403) — вебхуки — только ключу на все компании организации (при выпуске ключа — 400 с тем же code)\n- `audit_requires_all_companies` (403) — журнал организации — только ключу на все компании организации\n- `policy_blocked` (403) — одобрение: организация не доверяет ИИ записывать такой документ этим способом (поле level — уровень доверия); одобрить по одному или поднять уровень\n- `onec_read_only` (403) — одобрение: у пользователя 1С из подключения нет права записи — дать права в 1С\n- `validation_failed` (400) — тело или параметры запроса не прошли проверку: что не так с каждым полем — в fields (путь, код, текст по-русски). Подсветить поля формы; общий message — над формой\n- `invalid_json` (400) — тело запроса — не JSON-объект\n- `personal_workspace` (400) — в личной организации нет сотрудников, приглашений и политик — нужна организация Team или Enterprise\n- `api_key_required` (400) — адрес только для запроса по ключу API\n- `email_code_unavailable` (400) — удаление аккаунта: у аккаунта нет почты для кода (вход через Telegram) — подтверждать свежим входом, без кода\n- `deletion_code_invalid` (400) — удаление аккаунта: неверный код из письма; сколько попыток осталось — attempts_left\n- `deletion_code_expired` (400) — удаление аккаунта: код истёк, попытки кончились или код не запрашивался — запросить новый (POST /v1/me/deletion/code)\n- `unsafe_url` (400) — адрес вебхука недопустим (внутренняя сеть, не HTTPS)\n- `idempotency_key_invalid` (400) — Idempotency-Key неверного вида\n- `payload_too_large` (413) — тело запроса (или события хука) больше допустимого; пределы — настройки платформы\n- `idempotency_key_reused` (422) — этот Idempotency-Key уже был у другого запроса — для нового действия нужен новый ключ\n- `has_blockers` (422) — одобрение: у предложения есть блокеры — сначала исправить их\n- `batch_too_large` (413) — одобрение пачкой: предложений больше предела (поля limit, requested) — разбить на части\n- `unknown_kind` (400) — настройки писем: такого вида уведомлений нет — взять список из GET /v1/me/notifications\n- `kind_locked` (400) — настройки писем: этот вид (безопасность и аккаунт) выключить нельзя — переключатель неактивен (locked)\n- `onec_rejected` (400) — одобрение: 1С отклонила документ (причина — в message): исправить в 1С или построить предложение заново\n- `proposal_not_found` (404) — предложения с таким id нет в компании\n- `export_link_expired` (404) — ссылка на архив выгрузки истекла или неверна — получить новую: GET /v1/me/export\n- `batch_not_found` (404) — одобрение пачкой: задания с таким batch_id нет (или в нём нет предложений)\n- `idempotency_in_progress` (409) — первый запрос с этим Idempotency-Key ещё выполняется — подождать и повторить, придёт тот же ответ\n- `idempotency_response_not_kept` (409) — запрос с этим Idempotency-Key уже выполнен, но копия ответа не хранится (в нём персональные данные): результат — по ссылке в ответе (dialog_url) или в списке; статус первого ответа — original_status\n- `idempotency_response_too_large` (409) — запрос с этим Idempotency-Key уже выполнен, но ответ слишком большой, чтобы повторить его целиком: результат — в списке; статус первого ответа — original_status\n- `sole_owner` (409) — удаление аккаунта: вы единственный владелец организации с другими участниками (workspaces) — передать владение (POST /v1/workspaces/{ws}/ownership) или удалить организацию\n- `account_deletion_in_progress` (409) — удаление аккаунта: фон уже стирает аккаунт — новый код и подтверждение не принимаются, отменить нельзя\n- `wrong_status` (409) — предложение уже не в том состоянии (поле status — нынешнее): обновить его\n- `wrong_state` (409) — запуск автоматизации уже не в том состоянии (поле state — нынешнее)\n- `dialog_closed` (409) — разговор закрыт (поле reason — почему): начать новый\n- `dialog_id_taken` (409) — разговор с таким dialog_id уже есть — для нового прислать другой id или не присылать его\n- `turn_in_progress` (409) — в разговоре уже идёт ход ИИ (поле turn — его номер): дождаться его конца или остановить\n- `turn_superseded` (409) — читаемый ход уже закончился и идёт следующий (поле turn) — читать его с начала\n- `dialog_changed` (409) — разговор только что изменился в другом окне или на другом сервере Tungo — открыть его заново (GET …/chat/{id}) и повторить\n- `already_answered` (409) — на этот вопрос ИИ уже ответили (поле turn — ход с ответом)\n- `question_stale` (409) — вопрос ИИ устарел (в разговоре уже другой вопрос или его нет) — обновить разговор\n- `dismissed` (409) — вопрос ИИ закрыт без ответа — написать обычное сообщение\n- `job_running` (409) — задание (пачка) ещё идёт — дождаться отчёта; поле batch_id\n- `payload_changed` (409) — одобрение: документ изменился после превью — построить предложение заново\n- `onec_conflict` (409) — одобрение: 1С отказала из-за конфликта (объект занят или изменён) — повторить позже\n- `onec_not_found` (409) — одобрение: в 1С нет объекта, на который ссылается документ — построить предложение заново\n- `plan_limit_reached` (429) — лимит окна тарифа исчерпан; resets_at и Retry-After — когда обновится. Показать время; если в message предложено доп. использование — дать кнопку включить\n- `rate_limited` (429) — слишком часто (по ключу API, уведомления ePay с одного адреса, попытки кода второго фактора) — подождать Retry-After секунд\n- `concurrent_turns_limit` (429) — по ключу API уже идёт предельное число ходов ИИ одновременно — дождаться окончания\n- `api_keys_limit` (429) — в организации предельное число действующих ключей API — отозвать ненужные\n- `webhook_endpoints_limit` (429) — предельное число адресов вебхуков — удалить ненужные\n- `export_too_soon` (429) — выгрузку данных можно запрашивать не чаще раза в сутки: next_request_at и Retry-After — когда можно снова\n- `hook_rate_limited` (429) — приём событий хука: больше automations.hook_events_per_minute в минуту — повторить через Retry-After секунд\n- `lago_unavailable` (503) — админка, тариф целиком: Lago не настроен или не ответил (сеть, 5xx) — правила не изменены, повторить позже\n- `model_price_missing` (503) — у модели ИИ не задана цена — сбой настройки платформы, ничего не списано; повторить позже\n- `data_export_disabled` (503) — выгрузка данных на сервере не настроена (поддержка Tungo)\n- `webhooks_disabled` (503) — вебхуки на сервере не настроены\n- `webhooks_unavailable` (503) — служба доставки вебхуков временно недоступна\n- `model_not_configured` (503) — сервис модели ИИ не настроен на сервере — повторить позже (Retry-After)\n- `write_unknown` (503) — одобрение: исход записи в 1С неизвестен (связь оборвалась) — проверить документ в 1С по метке (поле marker); повтор безопасен (retry_safe); слишком ранний повтор в 1С не пишет — подождать retry_after секунд (Retry-After)\n- `onec_unavailable` (503) — 1С сейчас не отвечает — повторить позже (Retry-After)\n- `onec_check_busy` (503) — проверка связи 1С: сервер сейчас проверяет слишком много подключений — повторить через Retry-After секунд\n- `onec_failed` (503) — записать документ в 1С не удалось по неизвестной причине — повторить позже\n- `journal_unavailable` (503) — журнал решений недоступен — пачка не одобрена, повторить позже\n- `hook_secret_unavailable` (503) — приём событий хука: секрет подписи сейчас не открыть — отправителю повторить доставку позже\n- `secret_box_missing` (503) — на сервере не задан ключ шифрования настроек — секрет подписи хука сохранить нельзя (поддержка Tungo)\n- `not_personal` (409) — перевод в команду: организация уже не личная — обновить экран\n- `subscription_blocks_conversion` (409) — перевод в команду: действует подписка для одного человека — сначала отменить её и дождаться конца периода\n- `subscription_kind_mismatch` (409) — админка: действующая подписка оформлена на другой вид организации — вид не меняется, пока она идёт\n- `enterprise_features_active` (409) — админка: у организации подключены SSO или SCIM — сначала отключить, потом снимать Enterprise\n- `too_many_members_for_personal` (409) — админка: в личной организации один человек — сначала убрать остальных участников\n- `open_debt` (409) — есть неоплаченный счёт — сначала оплатить; в плане удаления этот же код лежит в blockers\n- `active_work` (409) — в организации идут ходы ИИ или автоматизации — дождаться окончания и повторить; в плане удаления этот же код лежит в blockers\n- `deletion_already_scheduled` (409) — удаление организации уже запланировано — показать дату из плана\n- `deletion_purging` (409) — очистка организации уже идёт — отменить её нельзя\n- `workspace_deleting` (409) — админка: организация удаляется по просьбе владельца — блок удаления снимает только отмена удаления\n- `invitation_not_pending` (409) — приглашение принято, отозвано или истекло — письмо не отправить, пригласить заново\n- `last_owner` (409) — это последний владелец организации — сначала передать владение другому участнику\n- `seats_by_contract` (409) — места Enterprise — по договору, карта и докупка не работают: обратиться к менеджеру\n- `no_subscription` (409) — нет действующей подписки — сначала оформить тариф\n- `not_per_seat` (409) — этот тариф не считает оплату за место — докупка не нужна, предел мест показан в ответе GET …/seats\n- `subscription_ended` (409) — возобновление: период отменённой подписки уже закончился — ничего не списано, оформить тариф заново (повторный PUT — обычное оформление)\n- `subscription_busy` (409) — подписка уже меняется другим запросом (отмена или возобновление) — обновить экран через несколько секунд\n- `subscription_ending` (409) — подписка отменена и закончится в конце периода — места не докупаются и не сокращаются\n- `seats_unpaid_debt` (409) — подписка просрочена — сначала оплатить счёт; участники остаются, новых приглашать нельзя\n- `idempotency_conflict` (409) — докупка: этот ключ уже использован с другим числом мест — для новой покупки нужен новый ключ\n- `seat_quote_changed` (409) — докупка: сумма изменилась (другой день или новая цена), деньги не списаны — показать новую сумму из поля и спросить снова\n- `no_paid_seats` (409) — оплаченных мест ещё нет — сокращать нечего\n- `seats_below_occupied` (409) — занято больше мест, чем просите оставить — сначала убрать участников или отозвать приглашения\n- `not_enterprise` (409) — админка: места по договору есть только у Enterprise — сначала поставить вид\n- `per_seat_plan_change` (409) — смена тарифа с оплатой за место не делается сразу: Lago взял бы плату за места дважды. Отменить и оформить новый с конца периода\n- `confirm_name_mismatch` (400) — удаление организации: название введено неверно — ввести точно как в плане удаления\n- `below_min_seats` (400) — на этом тарифе мест меньше нельзя: минимум — min_seats тарифа\n- `seats_over_max` (400) — мест больше предела одной организации (team.limits.max_seats) — обратиться в поддержку\n- `seats_above_paid` (400) — PUT …/seats только сокращает; новые места — через POST …/seats с оплатой\n- `onec_check_running` (429) — проверка связи 1С уже идёт у этой компании, у вас (другая компания) или у двух других компаний организации — дождаться её итога и повторить (Retry-After)\n- `invitation_resend_too_soon` (429) — письмо с приглашением уже отправлено только что — подождать Retry-After секунд\n- `seats_exhausted` (429) — свободные места закончились: докупите места или освободите их, отозвав приглашение\n- `seat_price_unknown` (503) — цена места сейчас неизвестна (тариф не прочитан или настроен неверно), деньги не списаны — повторить позже\n- `otp_mail_failed` (503) — письмо с кодом входа не отправлено: попробуйте позже\n- `seat_period_unknown` (503) — не удалось сверить период подписки с биллингом: деньги не списаны, попробуйте позже\n\nНезнакомый code — вести себя по type.","example":"balance_exhausted","uniqueKey":"error.code","typeLabel":"string"},"permission":{"type":"string","description":"При code = missing_permission — какого права не хватает: права в компании (company.read, company.manage, company.members.manage, onec.connect, proposals.create, proposals.approve, chat.use, audit.read, automations.manage) или права только ключа API (automations.read, webhooks.manage). Показать «нужно право …» и предложить попросить админа (или выпустить ключ с этим правом).","example":"proposals.approve","uniqueKey":"error.permission","typeLabel":"string"},"resets_at":{"type":"string","format":"date-time","description":"Когда ограничение снимется само — ISO 8601, UTC. Есть у plan_limit_reached (конец окна тарифа) и у месячных потолков (workspace_cap_reached, company_cap_reached, member_cap_reached, key_cap_reached, platform_cap_reached — 1-е число, 00:00 по Алматы). Показать в местном времени: «Лимит обновится в 14:30». Нет поля — само не пройдёт.","example":"2026-11-01T19:00:00.000Z","uniqueKey":"error.resets_at","typeLabel":"string\u003cdate-time>"},"allowed_methods":{"type":"array","items":{"type":"string","enum":["email_otp","google","apple","telegram","sso"],"uniqueKey":"error.allowed_methods.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"При code = login_method_not_allowed — какими способами входа организация пускает к своим данным: email_otp — код из почты, google, apple, telegram, sso — SSO организации. Предложить выйти и войти одним из них.","uniqueKey":"error.allowed_methods","typeLabel":"enum\u003cstring>[]"},"role":{"type":"string","description":"При code = role_above_yours — ключ роли в компании, которую нельзя выдать или снять (например chief_accountant).","uniqueKey":"error.role","typeLabel":"string"},"permissions":{"type":"array","items":{"type":"string","uniqueKey":"error.permissions.items.[INDEX]","typeLabel":"string"},"description":"При code = role_above_yours — права этой роли, которых нет у того, кто выдаёт. Показать списком: «у роли есть права, которых нет у вас: …».","uniqueKey":"error.permissions","typeLabel":"string[]"},"fields":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string","description":"Путь к полю через точку, как в теле запроса или имени параметра: `name`, `lines.0.amount`. Пустая строка — всё тело (не объект, лишние поля).","example":"bin","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].path","typeLabel":"string"},"code":{"type":"string","enum":["invalid_type","too_small","too_big","invalid_format","invalid_value","not_multiple_of","unrecognized_keys","invalid_union","invalid_key","invalid_element","custom"],"description":"Что не так: invalid_type — не тот тип или поле не передано; too_small / too_big — короче/меньше или длиннее/больше допустимого; invalid_format — неверный вид (почта, дата, шаблон); invalid_value — значения нет среди допустимых; not_multiple_of — не кратно; unrecognized_keys — лишние поля; invalid_union — не подходит ни один вид; invalid_key / invalid_element — неверный ключ или элемент; custom — своё правило ручки","example":"invalid_format","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Текст для человека по-русски — показать под полем","example":"БИН/ИИН — 12 цифр","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].message","typeLabel":"string"}},"required":["path","code","message"],"description":"Ошибка одного поля запроса","uniqueKey":"error.fields.items.[INDEX]","typeLabel":"object"},"description":"При code = validation_failed — ошибки по полям, в порядке проверки; у одного поля может быть несколько.","uniqueKey":"error.fields","typeLabel":"object[]"}},"required":["type","message"],"additionalProperties":{"oneOf":[{}],"uniqueKey":"error.additionalProperties","typeLabel":"any"},"description":"Что пошло не так. Все 503 — с заголовком Retry-After (через сколько секунд повторить). Кроме описанных, у отдельных ручек бывают свои поля рядом с code (например status у wrong_status, state у wrong_state, reason у dialog_closed) — они описаны у этих ручек.","isRequired":true,"uniqueKey":"error","typeLabel":"object"},"request_id":{"oneOf":[{"type":"string","description":"Номер запроса (тот же, что в заголовке x-request-id). Показывать мелко рядом с ошибкой с кнопкой «скопировать»: по нему поддержка находит запрос в журнале. null — номер не успел появиться (очень ранний отказ).","example":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f","isRequired":true,"uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Номер запроса (тот же, что в заголовке x-request-id). Показывать мелко рядом с ошибкой с кнопкой «скопировать»: по нему поддержка находит запрос в журнале. null — номер не успел появиться (очень ранний отказ).","example":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f","isRequired":true,"uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"request_id","typeLabel":"string | null"}},"required":["type","error","request_id"],"description":"Тело любой ошибки API (статусы 4xx и 5xx): `{\"type\":\"error\",\"error\":{\"type\":\"…\",\"code\":\"…\",\"message\":\"…\"},\"request_id\":\"…\"}`. Интерфейс ветвится по error.type и error.code, человеку показывает error.message и request_id.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"type":"error","error":{"type":"payment_required_error","message":"Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.","code":"balance_exhausted","permission":"proposals.approve","resets_at":"2026-11-01T19:00:00.000Z","allowed_methods":["email_otp"],"role":"\u003cstring>","permissions":["\u003cstring>"],"fields":[{"path":"bin","code":"invalid_format","message":"БИН/ИИН — 12 цифр"}]},"request_id":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"}}},"exampleType":"generated"}},"headers":{"x-request-id":{"description":"Номер запроса (тот же, что request_id в теле ошибки) — назвать в обращении в поддержку. Его всегда создаёт сервер: присланный клиентом x-request-id номером не становится","schema":{"type":"string","example":"req_3f2a9c0d1e4b4c5d8e7f6a5b4c3d2e1f"}},"x-ratelimit-limit":{"description":"Только при входе по ключу API: сколько запросов можно в текущем окне — самый тесный предел из ключа и организации","schema":{"type":"integer"}},"x-ratelimit-remaining":{"description":"Только при входе по ключу API: сколько запросов осталось по этому пределу в текущем окне","schema":{"type":"integer"}},"x-ratelimit-reset":{"description":"Только при входе по ключу API: секунд до нового окна этого предела","schema":{"type":"integer"}}},"exampleType":"generated"},"46bb4380-025f-4343-98ea-3e2a1f312ab9":{"description":"Предел (частота, окно тарифа, число объектов) — см. Retry-After и error.resets_at (error.type: limit_error)","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["error"],"description":"Всегда «error»: так тело ошибки отличается от обычного ответа.","isRequired":true,"uniqueKey":"type","typeLabel":"enum\u003cstring>"},"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request_error","authentication_error","payment_required_error","permission_error","not_found_error","conflict_error","gone_error","limit_error","api_error","unavailable_error"],"description":"Вид ошибки — по нему ветвится клиент (не по тексту message). Статус HTTP у вида один, кроме invalid_request_error:\n- `invalid_request_error` (400) — запрос неверен: поле не прошло проверку, неверный формат, действие сейчас недопустимо. Показать message рядом с формой; повтор без исправления не поможет. Обычно 400; 413 и 422 — у кодов, где это сказано в списке code.\n- `authentication_error` (401) — нет входа: сессия закончилась, cookie нет, ключ API неверен, отозван или истёк. Кабинет — отправить на страницу входа; по ключу — проверить ключ (см. code).\n- `payment_required_error` (402) — нужны деньги или решение владельца/админа организации: ждать бесполезно. Показать message и кнопку действия по code (оформить тариф, пополнить баланс, поднять потолок); без code — не оплачено подключение компании.\n- `permission_error` (403) — нельзя: не хватает права или роли, организация заблокирована, вход не тем способом. Показать message (в нём сказано, к кому обратиться); детали — в code и полях рядом.\n- `not_found_error` (404) — нет такого объекта — или он чужой: чужие организации, компании и записи тоже отвечают 404, чтобы не раскрывать, что они есть. Показать «не найдено» и вернуть к списку.\n- `conflict_error` (409) — состояние не позволяет: уже сделано, уже идёт другое действие, версия устарела. Перечитать объект, обновить экран и показать message.\n- `gone_error` (410) — объекта больше нет: разговор не найден или истёк (вопрос в чате, ответ на вопрос ИИ, подсчёт токенов — начать новый разговор), ход потерян при перезапуске сервера, ссылка привязки программы устарела или уже использована (code connector_link_gone). Повторять незачем.\n- `limit_error` (429) — предел: частота запросов, окно тарифа, число объектов или мест. Если есть заголовок Retry-After или resets_at — пройдёт само, показать, когда; иначе нужно освободить место (удалить лишнее) или сменить тариф.\n- `api_error` (500) — сбой на нашей стороне. Показать message и request_id (для поддержки); повторить позже.\n- `unavailable_error` (503) — временно недоступно (внешний сервис, ИИ, настройка сервера). Повторить позже; если повторяется — сообщить request_id в поддержку.","example":"payment_required_error","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Готовый текст для человека по-русски: что случилось, что делать и к кому обратиться. Показывать как есть; не разбирать — формулировки меняются.","example":"Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"code":{"type":"string","description":"Уточнение вида: по нему выбирается действие интерфейса (кнопка «Пополнить», «Войти иначе»…). Нет поля — хватает type и message. Известные коды:\n- `sso_domain_taken` (409) — домен SSO уже подтверждён другой организацией\n- `sso_last_verified_domain` (409) — включён обязательный вход, а это последний подтверждённый домен — сначала выключить обязательный вход\n- `sso_login_required` (400) — включить обязательный вход можно только из сессии, открытой через SSO этой организации\n- `domain_verification_failed` (400) — запись DNS для домена не найдена или не совпала — проверить и повторить\n- `oidc_openid_scope_required` (400) — в scopes сервера входа OIDC нет openid — добавить её: без неё вход через SSO не пройдёт\n- `enterprise_only` (403) — возможность есть только на тарифе Enterprise\n- `groups_limit` (429) — достигнут предел групп в организации\n- `custom_roles_limit` (429) — достигнут предел своих ролей в организации\n- `group_managed_by_directory` (409) — группа из каталога: название и состав меняются только там\n- `group_member_not_in_workspace` (400) — в группу можно добавить только сотрудника этой организации\n- `role_above_ceiling` (400) — роль даёт права выше потолка организации\n- `unknown_model` (400) — такой модели нет — список в available_models\n- `price_required` (400) — админка, тариф целиком: у платного тарифа нужна цена (price)\n- `lago_rejected` (409) — админка, тариф целиком: Lago отказал по существу (4xx, текст Lago в message) — правила не изменены, повтор без правки не поможет\n- `price_mismatch` (400) — админка, тариф целиком: цена не сходится с правилами (место без per_seat, per_seat без цены места, цена у бесплатного)\n- `model_not_allowed` (403) — политика организации не разрешает эту модель, а подходящей разрешённой нет — админу дополнить список\n- `retention_too_short` (400) — срок хранения меньше наименьшего\n- `audit_export_range` (400) — неверный период выгрузки журнала: конец раньше начала или период слишком длинный\n- `compliance_disabled` (403) — адрес для проверок выключен — владелец включает его в настройке\n- `missing_credentials` (401) — нет ни cookie сессии, ни ключа API — войти или передать x-api-key\n- `link_revoked` (401) — вход в Tungo из 1С больше не действует (вышли, отключили на сайте, вошли в той же базе заново, компания или человек заблокированы) — 1С просит войти заново\n- `login_denied` (403) — вход из 1С отклонён на сайте Tungo — 1С показывает отказ\n- `code_expired` (410) — код входа из 1С устарел или уже использован — 1С просит новый код\n- `code_gone` (410) — код входа из 1С уже подтверждён, отклонён или устарел — на сайте подтверждать нечего\n- `invalid_api_key` (401) — ключ API неверен (опечатка или удалён)\n- `key_revoked` (401) — ключ API отозван (при правке ключа — 409 с тем же code: отозванный ключ не меняется)\n- `key_expired` (401) — срок ключа API истёк — сменить секрет (POST …/api-keys/{id}/roll: срок начнётся заново) или выпустить новый (при правке срока — 409 с тем же code: PATCH истёкший ключ не оживляет)\n- `key_disabled` (401) — ключ API выключен — включить может автор ключа или владелец организации (POST …/api-keys/{id}/enable)\n- `key_creator_lost_access` (401) — тот, кто выпустил ключ, больше не владелец/админ организации — ключ недействителен\n- `user_banned` (401) — вход в аккаунт закрыт администратором Tungo — только поддержка Tungo\n- `onboarding_unpaid` (402) — подключение компании к ИИ-бухгалтеру не оплачено (разовый платёж): владельцу/админу организации — «Оплатить» в настройках компании; остальным — сообщить им\n- `onboarding_pending` (402) — оплата подключения компании ещё проходит в банке — ИИ заработает после подтверждения; опрашивать состояние подключения\n- `no_active_plan` (402) — нет действующей подписки (не оформлена, закончилась, первая оплата не прошла или ждёт 3-D Secure). Владельцу/админу — кнопка в настройки оплаты; остальным — «обратитесь к владельцу организации». Что именно случилось — в message\n- `balance_exhausted` (402) — баланс доп. использования кончился. Владельцу/админу — «Пополнить баланс» или включить автопополнение; остальным — сообщить им\n- `workspace_cap_reached` (402) — достигнут месячный потолок доп. использования организации. resets_at — 1-е число следующего месяца, 00:00 по Алматы; раньше — если админ поднимет потолок\n- `report_busy` (429) — сейчас собирается много отчётов команды: повторить через время из Retry-After\n- `report_timeout` (503) — отчёт команды не успел собраться: сократить период или выбрать разбивку по месяцам\n- `company_cap_reached` (402) — достигнут месячный потолок доп. использования компании. Письмо владельцу и админам уже отправлено. resets_at — 1-е число; раньше — если админ поднимет потолок (PUT /v1/workspaces/{ws}/team/company-caps/{co})\n- `member_cap_reached` (402) — достигнут личный месячный потолок доп. использования сотрудника. resets_at — 1-е число; раньше — если админ поднимет его потолок\n- `key_cap_reached` (402) — достигнут месячный потолок расхода ключа API (или остаток меньше оценки одного вызова). resets_at — 1-е число\n- `platform_balance_exhausted` (402) — баланс платформы пуст: вызов по ключу или автоматизация не сделаны. Пополнить — POST /v1/workspaces/{ws}/platform/purchases или автопополнением\n- `platform_cap_reached` (402) — достигнут месячный потолок трат платформы. resets_at — 1-е число следующего месяца, 00:00 по Алматы; раньше — поднять потолок в PUT /v1/workspaces/{ws}/platform/account\n- `platform_disabled` (402) — платформа выключена в организации: вызовы по ключам и автоматизации остановлены. Включить — PUT /v1/workspaces/{ws}/platform/account\n- `free_plan_chat_only` (402) — бесплатный тариф: пачки из кабинета только на платных тарифах. Ключам API и автоматизациям тариф не нужен\n- `free_limit_unavailable` (402) — бесплатный лимит этой учётной записи не положен (проверка регистрации или решение администратора) — оформить тариф\n- `plan_company_limit` (402) — в организации уже столько компаний не в архиве, сколько разрешает тариф (max_companies в GET /v1/plans; limit и plan_code — в ответе): новую не завести и из архива не вернуть. Убрать лишнюю в архив или перейти на тариф больше\n- `effort_not_in_plan` (402) — поле effort в чате на тарифе без выбора усилия (max_effort тарифа null, например бесплатный): ход не начат. Прислать вопрос без effort или оформить платный тариф\n- `model_not_in_plan` (402) — модель сильнее потолка тарифа (plans.model_ceiling): вызов не сделан; более сильные модели — на платных тарифах\n- `missing_permission` (403) — не хватает права в компании (или у ключа API); какого — в поле permission\n- `login_method_not_allowed` (403) — организация пускает к своим данным только после входа другим способом; какими — в allowed_methods. Предложить выйти и войти так\n- `ip_not_allowed` (403) — ключ API не принимает запросы с этого адреса — поправить allowed_ips ключа (PATCH …/api-keys/{id}) или вызывать с разрешённого адреса\n- `key_write_limit` (403) — запись в 1С по ключу API — сверх его пределов (сумма на документ или в день, виды документов) или правило автоодобрения шире пределов ключа; в сообщении — что и на сколько\n- `human_only` (403) — это решение принимает только человек в кабинете Tungo, не ключ API: например, отклонить «не знаем, записан ли» на снимке базы без проверки 1С (confirm_unknown_write)\n- `autonomy_raise_requires_session` (403) — поднять уровень доверия ИИ или потолки компании можно только владельцу или админу организации из кабинета; ключом API — только понизить\n- `id_path_required` (400) — для автоодобрения по хуку задайте хуку id_path — путь к номеру операции в теле события: без него повтор доставки нельзя отличить от новой операции\n- `directbank_rule_exists` (400) — у компании уже есть сценарий с правилом для выписки DirectBank — правило выписки одно на компанию\n- `event_not_found` (404) — события нет в этой компании или оно удалено по сроку хранения — для пробного прогона выберите событие посвежее\n- `event_body_unavailable` (409) — тело события зашифровано, а ключ шифрования на сервере сменился — прогнать сценарий на нём нельзя\n- `scenario_steps_required` (409) — у сценария цепочка шагов, а в замене (PUT) нет ни steps, ни output: передайте steps явно, иначе замена молча убрала бы цепочку\n- `scenario_output_required` (409) — у сценария форма итога, а в замене (PUT) нет ни steps, ни output: передайте output явно (null — снять форму)\n- `automation_queue_full` (429) — у компании слишком много запусков в очереди: повторите позже (событие хука отправитель повторит сам)\n- `restarting` (503) — сервис перезапускается: новый ход не начат — повторите через Retry-After\n- `company_suspended` (403) — работа с компанией приостановлена (решение платформы или оплаты); карточка видна, работать, править и архивировать нельзя (архив — 409 с тем же code)\n- `company_archived` (403) — компания в архиве: карточка видна, работать с ней нельзя. Вернуть — POST /v1/companies/{company_id}/unarchive (владелец компании или владелец/админ организации)\n- `workspace_blocked` (403) — организация заблокирована администратором платформы — только поддержка Tungo\n- `untrusted_origin` (403) — запрос пришёл не со страницы Tungo (защита от подделки запросов) — открыть кабинет по обычному адресу; для /admin/* — только со страниц ADMIN_ORIGINS\n- `cors_not_supported` (403) — вызов API из чужого браузерного кода (CORS) не поддерживается: ключ API — секрет сервера\n- `api_keys_disabled_by_policy` (403) — политика организации запрещает ключи API\n- `owner_role_reserved` (403) — владельца компании назначает, меняет и снимает только владелец или админ организации\n- `role_above_yours` (403) — у выдаваемой (или снимаемой) роли есть права, которых нет у вас; роль — в поле role, лишние права — в permissions\n- `not_key_creator` (403) — менять компании, права, срок и секрет ключа, снимать и поднимать его пределы записи в 1С может только тот, кто его выпустил (ужесточить пределы может любой админ)\n- `transfer_wider_than_target` (403) — передать ключ нельзя: у нового владельца нет нужного права (или доступа) в одной из компаний ключа\n- `invalid_allowed_ips` (400) — в allowed_ips ключа — не IP-адрес и не подсеть CIDR; какая запись — в сообщении\n- `transfer_target_not_admin` (400) — передать ключ можно только владельцу или админу этой организации\n- `platform_model_not_allowed` (403) — модель сильнее потолка платформы (настройка platform.billing): вызов не сделан и ничего не списано\n- `managed_by_sso` (403) — удаление аккаунта: аккаунт ведёт организация (SSO или SCIM) — удаляет её администратор; организации — в workspaces\n- `fresh_session_required` (403) — удаление аккаунта без почты (Telegram): нужен свежий вход — выйти, войти снова и подтвердить\n- `api_key_not_allowed` (403) — действие только из кабинета (сессия), не по ключу API: удаление аккаунта\n- `not_own_key` (403) — по ключу API виден только расход самого этого ключа\n- `webhooks_not_in_plan` (403) — вебхуков нет в тарифе организации\n- `admin_2fa_required` (403) — админ-API: у администратора платформы нет второго фактора или эта сессия не подтверждена кодом приложения-аутентификатора (POST /v1/auth/two-factor/enable, затем verify-totp)\n- `two_factor_required` (403) — отключить второй фактор, показать его секрет или выпустить резервные коды — только после кода из приложения-аутентификатора в этой сессии\n- `webhooks_require_all_companies` (403) — вебхуки — только ключу на все компании организации (при выпуске ключа — 400 с тем же code)\n- `audit_requires_all_companies` (403) — журнал организации — только ключу на все компании организации\n- `policy_blocked` (403) — одобрение: организация не доверяет ИИ записывать такой документ этим способом (поле level — уровень доверия); одобрить по одному или поднять уровень\n- `onec_read_only` (403) — одобрение: у пользователя 1С из подключения нет права записи — дать права в 1С\n- `validation_failed` (400) — тело или параметры запроса не прошли проверку: что не так с каждым полем — в fields (путь, код, текст по-русски). Подсветить поля формы; общий message — над формой\n- `invalid_json` (400) — тело запроса — не JSON-объект\n- `personal_workspace` (400) — в личной организации нет сотрудников, приглашений и политик — нужна организация Team или Enterprise\n- `api_key_required` (400) — адрес только для запроса по ключу API\n- `email_code_unavailable` (400) — удаление аккаунта: у аккаунта нет почты для кода (вход через Telegram) — подтверждать свежим входом, без кода\n- `deletion_code_invalid` (400) — удаление аккаунта: неверный код из письма; сколько попыток осталось — attempts_left\n- `deletion_code_expired` (400) — удаление аккаунта: код истёк, попытки кончились или код не запрашивался — запросить новый (POST /v1/me/deletion/code)\n- `unsafe_url` (400) — адрес вебхука недопустим (внутренняя сеть, не HTTPS)\n- `idempotency_key_invalid` (400) — Idempotency-Key неверного вида\n- `payload_too_large` (413) — тело запроса (или события хука) больше допустимого; пределы — настройки платформы\n- `idempotency_key_reused` (422) — этот Idempotency-Key уже был у другого запроса — для нового действия нужен новый ключ\n- `has_blockers` (422) — одобрение: у предложения есть блокеры — сначала исправить их\n- `batch_too_large` (413) — одобрение пачкой: предложений больше предела (поля limit, requested) — разбить на части\n- `unknown_kind` (400) — настройки писем: такого вида уведомлений нет — взять список из GET /v1/me/notifications\n- `kind_locked` (400) — настройки писем: этот вид (безопасность и аккаунт) выключить нельзя — переключатель неактивен (locked)\n- `onec_rejected` (400) — одобрение: 1С отклонила документ (причина — в message): исправить в 1С или построить предложение заново\n- `proposal_not_found` (404) — предложения с таким id нет в компании\n- `export_link_expired` (404) — ссылка на архив выгрузки истекла или неверна — получить новую: GET /v1/me/export\n- `batch_not_found` (404) — одобрение пачкой: задания с таким batch_id нет (или в нём нет предложений)\n- `idempotency_in_progress` (409) — первый запрос с этим Idempotency-Key ещё выполняется — подождать и повторить, придёт тот же ответ\n- `idempotency_response_not_kept` (409) — запрос с этим Idempotency-Key уже выполнен, но копия ответа не хранится (в нём персональные данные): результат — по ссылке в ответе (dialog_url) или в списке; статус первого ответа — original_status\n- `idempotency_response_too_large` (409) — запрос с этим Idempotency-Key уже выполнен, но ответ слишком большой, чтобы повторить его целиком: результат — в списке; статус первого ответа — original_status\n- `sole_owner` (409) — удаление аккаунта: вы единственный владелец организации с другими участниками (workspaces) — передать владение (POST /v1/workspaces/{ws}/ownership) или удалить организацию\n- `account_deletion_in_progress` (409) — удаление аккаунта: фон уже стирает аккаунт — новый код и подтверждение не принимаются, отменить нельзя\n- `wrong_status` (409) — предложение уже не в том состоянии (поле status — нынешнее): обновить его\n- `wrong_state` (409) — запуск автоматизации уже не в том состоянии (поле state — нынешнее)\n- `dialog_closed` (409) — разговор закрыт (поле reason — почему): начать новый\n- `dialog_id_taken` (409) — разговор с таким dialog_id уже есть — для нового прислать другой id или не присылать его\n- `turn_in_progress` (409) — в разговоре уже идёт ход ИИ (поле turn — его номер): дождаться его конца или остановить\n- `turn_superseded` (409) — читаемый ход уже закончился и идёт следующий (поле turn) — читать его с начала\n- `dialog_changed` (409) — разговор только что изменился в другом окне или на другом сервере Tungo — открыть его заново (GET …/chat/{id}) и повторить\n- `already_answered` (409) — на этот вопрос ИИ уже ответили (поле turn — ход с ответом)\n- `question_stale` (409) — вопрос ИИ устарел (в разговоре уже другой вопрос или его нет) — обновить разговор\n- `dismissed` (409) — вопрос ИИ закрыт без ответа — написать обычное сообщение\n- `job_running` (409) — задание (пачка) ещё идёт — дождаться отчёта; поле batch_id\n- `payload_changed` (409) — одобрение: документ изменился после превью — построить предложение заново\n- `onec_conflict` (409) — одобрение: 1С отказала из-за конфликта (объект занят или изменён) — повторить позже\n- `onec_not_found` (409) — одобрение: в 1С нет объекта, на который ссылается документ — построить предложение заново\n- `plan_limit_reached` (429) — лимит окна тарифа исчерпан; resets_at и Retry-After — когда обновится. Показать время; если в message предложено доп. использование — дать кнопку включить\n- `rate_limited` (429) — слишком часто (по ключу API, уведомления ePay с одного адреса, попытки кода второго фактора) — подождать Retry-After секунд\n- `concurrent_turns_limit` (429) — по ключу API уже идёт предельное число ходов ИИ одновременно — дождаться окончания\n- `api_keys_limit` (429) — в организации предельное число действующих ключей API — отозвать ненужные\n- `webhook_endpoints_limit` (429) — предельное число адресов вебхуков — удалить ненужные\n- `export_too_soon` (429) — выгрузку данных можно запрашивать не чаще раза в сутки: next_request_at и Retry-After — когда можно снова\n- `hook_rate_limited` (429) — приём событий хука: больше automations.hook_events_per_minute в минуту — повторить через Retry-After секунд\n- `lago_unavailable` (503) — админка, тариф целиком: Lago не настроен или не ответил (сеть, 5xx) — правила не изменены, повторить позже\n- `model_price_missing` (503) — у модели ИИ не задана цена — сбой настройки платформы, ничего не списано; повторить позже\n- `data_export_disabled` (503) — выгрузка данных на сервере не настроена (поддержка Tungo)\n- `webhooks_disabled` (503) — вебхуки на сервере не настроены\n- `webhooks_unavailable` (503) — служба доставки вебхуков временно недоступна\n- `model_not_configured` (503) — сервис модели ИИ не настроен на сервере — повторить позже (Retry-After)\n- `write_unknown` (503) — одобрение: исход записи в 1С неизвестен (связь оборвалась) — проверить документ в 1С по метке (поле marker); повтор безопасен (retry_safe); слишком ранний повтор в 1С не пишет — подождать retry_after секунд (Retry-After)\n- `onec_unavailable` (503) — 1С сейчас не отвечает — повторить позже (Retry-After)\n- `onec_check_busy` (503) — проверка связи 1С: сервер сейчас проверяет слишком много подключений — повторить через Retry-After секунд\n- `onec_failed` (503) — записать документ в 1С не удалось по неизвестной причине — повторить позже\n- `journal_unavailable` (503) — журнал решений недоступен — пачка не одобрена, повторить позже\n- `hook_secret_unavailable` (503) — приём событий хука: секрет подписи сейчас не открыть — отправителю повторить доставку позже\n- `secret_box_missing` (503) — на сервере не задан ключ шифрования настроек — секрет подписи хука сохранить нельзя (поддержка Tungo)\n- `not_personal` (409) — перевод в команду: организация уже не личная — обновить экран\n- `subscription_blocks_conversion` (409) — перевод в команду: действует подписка для одного человека — сначала отменить её и дождаться конца периода\n- `subscription_kind_mismatch` (409) — админка: действующая подписка оформлена на другой вид организации — вид не меняется, пока она идёт\n- `enterprise_features_active` (409) — админка: у организации подключены SSO или SCIM — сначала отключить, потом снимать Enterprise\n- `too_many_members_for_personal` (409) — админка: в личной организации один человек — сначала убрать остальных участников\n- `open_debt` (409) — есть неоплаченный счёт — сначала оплатить; в плане удаления этот же код лежит в blockers\n- `active_work` (409) — в организации идут ходы ИИ или автоматизации — дождаться окончания и повторить; в плане удаления этот же код лежит в blockers\n- `deletion_already_scheduled` (409) — удаление организации уже запланировано — показать дату из плана\n- `deletion_purging` (409) — очистка организации уже идёт — отменить её нельзя\n- `workspace_deleting` (409) — админка: организация удаляется по просьбе владельца — блок удаления снимает только отмена удаления\n- `invitation_not_pending` (409) — приглашение принято, отозвано или истекло — письмо не отправить, пригласить заново\n- `last_owner` (409) — это последний владелец организации — сначала передать владение другому участнику\n- `seats_by_contract` (409) — места Enterprise — по договору, карта и докупка не работают: обратиться к менеджеру\n- `no_subscription` (409) — нет действующей подписки — сначала оформить тариф\n- `not_per_seat` (409) — этот тариф не считает оплату за место — докупка не нужна, предел мест показан в ответе GET …/seats\n- `subscription_ended` (409) — возобновление: период отменённой подписки уже закончился — ничего не списано, оформить тариф заново (повторный PUT — обычное оформление)\n- `subscription_busy` (409) — подписка уже меняется другим запросом (отмена или возобновление) — обновить экран через несколько секунд\n- `subscription_ending` (409) — подписка отменена и закончится в конце периода — места не докупаются и не сокращаются\n- `seats_unpaid_debt` (409) — подписка просрочена — сначала оплатить счёт; участники остаются, новых приглашать нельзя\n- `idempotency_conflict` (409) — докупка: этот ключ уже использован с другим числом мест — для новой покупки нужен новый ключ\n- `seat_quote_changed` (409) — докупка: сумма изменилась (другой день или новая цена), деньги не списаны — показать новую сумму из поля и спросить снова\n- `no_paid_seats` (409) — оплаченных мест ещё нет — сокращать нечего\n- `seats_below_occupied` (409) — занято больше мест, чем просите оставить — сначала убрать участников или отозвать приглашения\n- `not_enterprise` (409) — админка: места по договору есть только у Enterprise — сначала поставить вид\n- `per_seat_plan_change` (409) — смена тарифа с оплатой за место не делается сразу: Lago взял бы плату за места дважды. Отменить и оформить новый с конца периода\n- `confirm_name_mismatch` (400) — удаление организации: название введено неверно — ввести точно как в плане удаления\n- `below_min_seats` (400) — на этом тарифе мест меньше нельзя: минимум — min_seats тарифа\n- `seats_over_max` (400) — мест больше предела одной организации (team.limits.max_seats) — обратиться в поддержку\n- `seats_above_paid` (400) — PUT …/seats только сокращает; новые места — через POST …/seats с оплатой\n- `onec_check_running` (429) — проверка связи 1С уже идёт у этой компании, у вас (другая компания) или у двух других компаний организации — дождаться её итога и повторить (Retry-After)\n- `invitation_resend_too_soon` (429) — письмо с приглашением уже отправлено только что — подождать Retry-After секунд\n- `seats_exhausted` (429) — свободные места закончились: докупите места или освободите их, отозвав приглашение\n- `seat_price_unknown` (503) — цена места сейчас неизвестна (тариф не прочитан или настроен неверно), деньги не списаны — повторить позже\n- `otp_mail_failed` (503) — письмо с кодом входа не отправлено: попробуйте позже\n- `seat_period_unknown` (503) — не удалось сверить период подписки с биллингом: деньги не списаны, попробуйте позже\n\nНезнакомый code — вести себя по type.","example":"balance_exhausted","uniqueKey":"error.code","typeLabel":"string"},"permission":{"type":"string","description":"При code = missing_permission — какого права не хватает: права в компании (company.read, company.manage, company.members.manage, onec.connect, proposals.create, proposals.approve, chat.use, audit.read, automations.manage) или права только ключа API (automations.read, webhooks.manage). Показать «нужно право …» и предложить попросить админа (или выпустить ключ с этим правом).","example":"proposals.approve","uniqueKey":"error.permission","typeLabel":"string"},"resets_at":{"type":"string","format":"date-time","description":"Когда ограничение снимется само — ISO 8601, UTC. Есть у plan_limit_reached (конец окна тарифа) и у месячных потолков (workspace_cap_reached, company_cap_reached, member_cap_reached, key_cap_reached, platform_cap_reached — 1-е число, 00:00 по Алматы). Показать в местном времени: «Лимит обновится в 14:30». Нет поля — само не пройдёт.","example":"2026-11-01T19:00:00.000Z","uniqueKey":"error.resets_at","typeLabel":"string\u003cdate-time>"},"allowed_methods":{"type":"array","items":{"type":"string","enum":["email_otp","google","apple","telegram","sso"],"uniqueKey":"error.allowed_methods.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"При code = login_method_not_allowed — какими способами входа организация пускает к своим данным: email_otp — код из почты, google, apple, telegram, sso — SSO организации. Предложить выйти и войти одним из них.","uniqueKey":"error.allowed_methods","typeLabel":"enum\u003cstring>[]"},"role":{"type":"string","description":"При code = role_above_yours — ключ роли в компании, которую нельзя выдать или снять (например chief_accountant).","uniqueKey":"error.role","typeLabel":"string"},"permissions":{"type":"array","items":{"type":"string","uniqueKey":"error.permissions.items.[INDEX]","typeLabel":"string"},"description":"При code = role_above_yours — права этой роли, которых нет у того, кто выдаёт. Показать списком: «у роли есть права, которых нет у вас: …».","uniqueKey":"error.permissions","typeLabel":"string[]"},"fields":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string","description":"Путь к полю через точку, как в теле запроса или имени параметра: `name`, `lines.0.amount`. Пустая строка — всё тело (не объект, лишние поля).","example":"bin","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].path","typeLabel":"string"},"code":{"type":"string","enum":["invalid_type","too_small","too_big","invalid_format","invalid_value","not_multiple_of","unrecognized_keys","invalid_union","invalid_key","invalid_element","custom"],"description":"Что не так: invalid_type — не тот тип или поле не передано; too_small / too_big — короче/меньше или длиннее/больше допустимого; invalid_format — неверный вид (почта, дата, шаблон); invalid_value — значения нет среди допустимых; not_multiple_of — не кратно; unrecognized_keys — лишние поля; invalid_union — не подходит ни один вид; invalid_key / invalid_element — неверный ключ или элемент; custom — своё правило ручки","example":"invalid_format","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Текст для человека по-русски — показать под полем","example":"БИН/ИИН — 12 цифр","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].message","typeLabel":"string"}},"required":["path","code","message"],"description":"Ошибка одного поля запроса","uniqueKey":"error.fields.items.[INDEX]","typeLabel":"object"},"description":"При code = validation_failed — ошибки по полям, в порядке проверки; у одного поля может быть несколько.","uniqueKey":"error.fields","typeLabel":"object[]"}},"required":["type","message"],"additionalProperties":{"oneOf":[{}],"uniqueKey":"error.additionalProperties","typeLabel":"any"},"description":"Что пошло не так. Все 503 — с заголовком Retry-After (через сколько секунд повторить). Кроме описанных, у отдельных ручек бывают свои поля рядом с code (например status у wrong_status, state у wrong_state, reason у dialog_closed) — они описаны у этих ручек.","isRequired":true,"uniqueKey":"error","typeLabel":"object"},"request_id":{"oneOf":[{"type":"string","description":"Номер запроса (тот же, что в заголовке x-request-id). Показывать мелко рядом с ошибкой с кнопкой «скопировать»: по нему поддержка находит запрос в журнале. null — номер не успел появиться (очень ранний отказ).","example":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f","isRequired":true,"uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Номер запроса (тот же, что в заголовке x-request-id). Показывать мелко рядом с ошибкой с кнопкой «скопировать»: по нему поддержка находит запрос в журнале. null — номер не успел появиться (очень ранний отказ).","example":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f","isRequired":true,"uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"request_id","typeLabel":"string | null"}},"required":["type","error","request_id"],"description":"Тело любой ошибки API (статусы 4xx и 5xx): `{\"type\":\"error\",\"error\":{\"type\":\"…\",\"code\":\"…\",\"message\":\"…\"},\"request_id\":\"…\"}`. Интерфейс ветвится по error.type и error.code, человеку показывает error.message и request_id.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"type":"error","error":{"type":"payment_required_error","message":"Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.","code":"balance_exhausted","permission":"proposals.approve","resets_at":"2026-11-01T19:00:00.000Z","allowed_methods":["email_otp"],"role":"\u003cstring>","permissions":["\u003cstring>"],"fields":[{"path":"bin","code":"invalid_format","message":"БИН/ИИН — 12 цифр"}]},"request_id":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"}}},"exampleType":"generated"}},"headers":{"x-request-id":{"description":"Номер запроса (тот же, что request_id в теле ошибки) — назвать в обращении в поддержку. Его всегда создаёт сервер: присланный клиентом x-request-id номером не становится","schema":{"type":"string","example":"req_3f2a9c0d1e4b4c5d8e7f6a5b4c3d2e1f"}},"x-ratelimit-limit":{"description":"Только при входе по ключу API: сколько запросов можно в текущем окне — самый тесный предел из ключа и организации","schema":{"type":"integer"}},"x-ratelimit-remaining":{"description":"Только при входе по ключу API: сколько запросов осталось по этому пределу в текущем окне","schema":{"type":"integer"}},"x-ratelimit-reset":{"description":"Только при входе по ключу API: секунд до нового окна этого предела","schema":{"type":"integer"}},"Retry-After":{"description":"Через сколько секунд повторить запрос (отказ пройдёт сам); нет — ждать бесполезно, смотреть error.code","schema":{"type":"integer","minimum":1}}},"exampleType":"generated"}},"security":{"24725876-1736-4794-b5b5-cdfbf86c499d":{"session":{"type":"apiKey","in":"cookie","name":"tungo.session_token","description":"Сессия кабинета: cookie ставит вход через /v1/auth/* (Better Auth), браузер шлёт её сам — фронтенду кабинета ничего добавлять не нужно (fetch с credentials: 'include'). За HTTPS имя cookie — __Secure-tungo.session_token. Сессия кончилась — 401 authentication_error: отправить на вход.","scopes":[],"schemeName":"session"}},"a9f136e3-759f-4b6f-a856-36deaba00d8d":{"apiKey":{"type":"apiKey","in":"header","name":"x-api-key","description":"Ключ API организации: `x-api-key: tg_…`. Для серверных интеграций, не для кабинета: ключ — секрет, из браузера его не слать (CORS закрыт). Какие адреса пускают по ключу — x-api-key-access у операции.","scopes":[],"schemeName":"apiKey"}},"e273a860-b4e0-4dfe-9b5b-1327b4e45f2f":{"bearerKey":{"type":"http","scheme":"bearer","bearerFormat":"tg_…","description":"Тот же ключ API другим заголовком: `Authorization: Bearer tg_…`.","scopes":[],"schemeName":"bearerKey"}}},"servers":{"c389c850-4818-4663-a4a8-1bad0282721d":{"url":"https://api.tungo.kz","description":"Адрес API Tungo"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"cookie","name":"tungo.session_token","description":"Сессия кабинета: cookie ставит вход через /v1/auth/* (Better Auth), браузер шлёт её сам — фронтенду кабинета ничего добавлять не нужно (fetch с credentials: 'include'). За HTTPS имя cookie — __Secure-tungo.session_token. Сессия кончилась — 401 authentication_error: отправить на вход.","scopes":[],"schemeName":"session"},"schema":{"title":"tungo.session_token","type":"string","description":"Сессия кабинета: cookie ставит вход через /v1/auth/* (Better Auth), браузер шлёт её сам — фронтенду кабинета ничего добавлять не нужно (fetch с credentials: 'include'). За HTTPS имя cookie — __Secure-tungo.session_token. Сессия кончилась — 401 authentication_error: отправить на вход.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"session","name":"tungo.session_token"}],"title":"session"},{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-api-key","description":"Ключ API организации: `x-api-key: tg_…`. Для серверных интеграций, не для кабинета: ключ — секрет, из браузера его не слать (CORS закрыт). Какие адреса пускают по ключу — x-api-key-access у операции.","scopes":[],"schemeName":"apiKey"},"schema":{"title":"x-api-key","type":"string","description":"Ключ API организации: `x-api-key: tg_…`. Для серверных интеграций, не для кабинета: ключ — секрет, из браузера его не слать (CORS закрыт). Какие адреса пускают по ключу — x-api-key-access у операции.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"apiKey","name":"x-api-key"}],"title":"apiKey"},{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"tg_…","description":"Тот же ключ API другим заголовком: `Authorization: Bearer tg_…`.","scopes":[],"schemeName":"bearerKey"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Тот же ключ API другим заголовком: `Authorization: Bearer tg_…`.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerKey","name":"Authorization"}],"title":"bearerKey"}]},"originalFileLocation":"https://api.tungo.kz/v1/openapi.json"},"subdomain":"tungo-ai","siteName":"Tungo","title":"Журнал запусков - Tungo","navMaps":{"firstHrefInVersion":{"Русский":{"href":"/api-reference/автоматизации/журнал-запусков","matchLevel":0},"Қазақша":{"href":"/api-reference/автоматизации/журнал-запусков","matchLevel":0}},"firstHrefInLanguage":{"ru":{"href":"/api-reference/автоматизации/журнал-запусков","matchLevel":0}}},"lastModified":"2026-11-11T22:37:21.398Z","originalFileLocation":"api-reference/автоматизации/журнал-запусков.mdx","locale":"ru"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Доступ: company.read. Доступно по ключу API.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Tungo\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/tungo-ai/-uR9GpSNzhPlx0_i/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/tungo-ai/-uR9GpSNzhPlx0_i/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/tungo-ai/-uR9GpSNzhPlx0_i/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/tungo-ai/-uR9GpSNzhPlx0_i/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/tungo-ai/-uR9GpSNzhPlx0_i/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/tungo-ai/-uR9GpSNzhPlx0_i/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/tungo-ai/-uR9GpSNzhPlx0_i/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/tungo-ai/-uR9GpSNzhPlx0_i/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/tungo-ai/-uR9GpSNzhPlx0_i/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Журнал запусков - Tungo\">\u003cmeta data-mint-head property=\"og:description\" content=\"Доступ: company.read. Доступно по ключу API.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Tungo\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://tungo-ai.mintlify.app/api-reference/автоматизации/журнал-запусков\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://tungo-ai.mintlify.site/_mintlify/api/og/v2?division=%D0%90%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8\u0026amp;title=%D0%96%D1%83%D1%80%D0%BD%D0%B0%D0%BB+%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA%D0%BE%D0%B2\u0026amp;description=%D0%94%D0%BE%D1%81%D1%82%D1%83%D0%BF%3A+company.read.%0A%0A%D0%94%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%BD%D0%BE+%D0%BF%D0%BE+%D0%BA%D0%BB%D1%8E%D1%87%D1%83+API.\u0026amp;theme=dfce91326f5ce74a967be081\u0026amp;signature=583cdb72a499b735465a5edba149317084410c752040fe3f5bba12fca4cac826\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Журнал запусков - Tungo\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Доступ: company.read. Доступно по ключу API.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://tungo-ai.mintlify.site/_mintlify/api/og/v2?division=%D0%90%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8\u0026amp;title=%D0%96%D1%83%D1%80%D0%BD%D0%B0%D0%BB+%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA%D0%BE%D0%B2\u0026amp;description=%D0%94%D0%BE%D1%81%D1%82%D1%83%D0%BF%3A+company.read.%0A%0A%D0%94%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%BD%D0%BE+%D0%BF%D0%BE+%D0%BA%D0%BB%D1%8E%D1%87%D1%83+API.\u0026amp;theme=dfce91326f5ce74a967be081\u0026amp;signature=583cdb72a499b735465a5edba149317084410c752040fe3f5bba12fca4cac826\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/tungo-ai/-uR9GpSNzhPlx0_i/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Tungo\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#1b1b1b\">\u003clink data-mint-head rel=\"canonical\" href=\"https://tungo-ai.mintlify.app/api-reference/автоматизации/журнал-запусков\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8/%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA%D0%BE%D0%B2.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://tungo-ai.mintlify.app/#organization\",\"name\":\"Tungo\",\"url\":\"https://tungo-ai.mintlify.app\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/tungo-ai/Rh5Iy_fOmTN2xA57/logo/light.svg?fit=max\u0026auto=format\u0026n=Rh5Iy_fOmTN2xA57\u0026q=85\u0026s=01cf341ba8b8a958a335b86c62038dd6\"}},{\"@type\":\"WebSite\",\"@id\":\"https://tungo-ai.mintlify.app#website\",\"name\":\"Tungo\",\"url\":\"https://tungo-ai.mintlify.app\",\"publisher\":{\"@id\":\"https://tungo-ai.mintlify.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8/%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA%D0%BE%D0%B2#webpage\",\"url\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8/%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA%D0%BE%D0%B2\",\"name\":\"Журнал запусков\",\"description\":\"Доступ: company.read. Доступно по ключу API.\",\"dateModified\":\"2026-11-11T22:37:21.398Z\",\"isPartOf\":{\"@id\":\"https://tungo-ai.mintlify.app#website\"},\"breadcrumb\":{\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8/%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA%D0%BE%D0%B2#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8/%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA%D0%BE%D0%B2#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Справочник API\",\"item\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B0%D0%BA%D0%BA%D0%B0%D1%83%D0%BD%D1%82/%D0%BC%D0%BE%D0%B8-%D0%BE%D1%80%D0%B3%D0%B0%D0%BD%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8-workspace-%D1%81-%D0%BF%D1%83%D0%B1%D0%BB%D0%B8%D1%87%D0%BD%D1%8B%D0%BC%D0%B8-id-ws_%E2%80%A6\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Автоматизации\",\"item\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8/%D0%BF%D1%80%D0%B8%D0%BD%D1%8F%D1%82%D1%8C-%D1%81%D0%BE%D0%B1%D1%8B%D1%82%D0%B8%D0%B5-%D0%BF%D0%BE-%D0%B0%D0%B4%D1%80%D0%B5%D1%81%D1%83-%D1%85%D1%83%D0%BA%D0%B0\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Журнал запусков\",\"item\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8/%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA%D0%BE%D0%B2\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8/%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA%D0%BE%D0%B2#apireference\",\"headline\":\"Журнал запусков\",\"name\":\"Журнал запусков\",\"description\":\"Доступ: company.read. Доступно по ключу API.\",\"url\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8/%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA%D0%BE%D0%B2\",\"mainEntityOfPage\":{\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8/%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA%D0%BE%D0%B2#webpage\"},\"dateModified\":\"2026-11-11T22:37:21.398Z\",\"publisher\":{\"@id\":\"https://tungo-ai.mintlify.app/#organization\"},\"isPartOf\":{\"@id\":\"https://tungo-ai.mintlify.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Tungo\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Tungo\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8/%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB-%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA%D0%BE%D0%B2.md","siteName":"Tungo","nav":{"global":null,"languages":[{"language":"ru","versions":[{"version":"Русский","default":true,"tabs":[{"tab":"Главная","pages":[{"title":"Главная","href":""}]},{"tab":"Начало","pages":[{"title":"Начало","href":"/start/quickstart"}]},{"tab":"Подключение 1С","pages":[{"title":"Подключение 1С","href":"/1c/overview"}]},{"tab":"ИИ-бухгалтер","pages":[{"title":"ИИ-бухгалтер","href":"/assistant/ask"}]},{"tab":"Тарифы и оплата","pages":[{"title":"Тарифы и оплата","href":"/billing/plans"}]},{"tab":"Аккаунт и команда","pages":[{"title":"Аккаунт и команда","href":"/account/sign-in"}]},{"tab":"Решение проблем","pages":[{"title":"Решение проблем","href":"/help/sign-in"}]},{"tab":"Платформа","pages":[{"title":"Платформа","href":"/platform/overview"}]},{"tab":"API","groups":[{"group":"Справочник API","pages":[{"group":"Аккаунт","pages":[{"title":"Мои организации (workspace) с публичными id ws_…","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces","href":"/api-reference/аккаунт/мои-организации-workspace-с-публичными-id-ws_…"}]},{"group":"Компании","pages":[{"title":"Мои компании во всех workspace","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies","href":"/api-reference/компании/мои-компании-во-всех-workspace"},{"title":"Компания","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}","href":"/api-reference/компании/компания"}]},{"group":"Биллинг","pages":[{"title":"Привязать карту (форма ePay)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/billing/card-sessions","href":"/api-reference/биллинг/привязать-карту-форма-epay"},{"title":"Привязанные карты","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/billing/payment-methods","href":"/api-reference/биллинг/привязанные-карты"},{"title":"Отвязать карту","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/workspaces/{ws}/billing/payment-methods/{pm}","href":"/api-reference/биллинг/отвязать-карту"},{"title":"Оплатить на форме ePay (с 3-D Secure)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/billing/payments/{id}/pay-form","href":"/api-reference/биллинг/оплатить-на-форме-epay-с-3-d-secure"}]},{"group":"Тарифы и расход","pages":[{"title":"Цены моделей","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/usage-rates","href":"/api-reference/тарифы-и-расход/цены-моделей"}]},{"group":"Платформа: баланс и расход","pages":[{"title":"Счёт платформы","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/account","href":"/api-reference/платформа:-баланс-и-расход/счёт-платформы"},{"title":"Настройки платформы","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json put /v1/workspaces/{ws}/platform/account","href":"/api-reference/платформа:-баланс-и-расход/настройки-платформы"},{"title":"Пополнить баланс платформы","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/platform/purchases","href":"/api-reference/платформа:-баланс-и-расход/пополнить-баланс-платформы"},{"title":"Движения баланса платформы","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/ledger","href":"/api-reference/платформа:-баланс-и-расход/движения-баланса-платформы"},{"title":"Расход платформы","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/usage","href":"/api-reference/платформа:-баланс-и-расход/расход-платформы"},{"title":"Журнал действий организации","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/audit","href":"/api-reference/платформа:-баланс-и-расход/журнал-действий-организации"},{"title":"Журнал запросов по ключам","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/requests","href":"/api-reference/платформа:-баланс-и-расход/журнал-запросов-по-ключам"},{"title":"Пределы платформы и сколько осталось","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/limits","href":"/api-reference/платформа:-баланс-и-расход/пределы-платформы-и-сколько-осталось"}]},{"group":"Ключи API","pages":[{"title":"Кому можно передать ключ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/api-keys/people","href":"/api-reference/ключи-api/кому-можно-передать-ключ"},{"title":"Ключи API (без секретов)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/api-keys","href":"/api-reference/ключи-api/ключи-api-без-секретов"},{"title":"Выпустить ключ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys","href":"/api-reference/ключи-api/выпустить-ключ"},{"title":"Ключ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/api-keys/{id}","href":"/api-reference/ключи-api/ключ"},{"title":"Отозвать ключ (сразу и навсегда)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/workspaces/{ws}/api-keys/{id}","href":"/api-reference/ключи-api/отозвать-ключ-сразу-и-навсегда"},{"title":"Изменить ключ: имя, срок, месячный потолок, компании и права","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/workspaces/{ws}/api-keys/{id}","href":"/api-reference/ключи-api/изменить-ключ:-имя-срок-месячный-потолок-компании-и-права"},{"title":"Сменить секрет ключа","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys/{id}/roll","href":"/api-reference/ключи-api/сменить-секрет-ключа"},{"title":"Передать ключ другому владельцу или админу","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys/{id}/transfer","href":"/api-reference/ключи-api/передать-ключ-другому-владельцу-или-админу"},{"title":"Выключить ключ (можно включить обратно)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys/{id}/disable","href":"/api-reference/ключи-api/выключить-ключ-можно-включить-обратно"},{"title":"Включить выключенный ключ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys/{id}/enable","href":"/api-reference/ключи-api/включить-выключенный-ключ"},{"title":"Расход ключа за период","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/api-keys/{id}/usage","href":"/api-reference/ключи-api/расход-ключа-за-период"},{"title":"Ключ, по которому пришёл запрос (кто я)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/api-key","href":"/api-reference/ключи-api/ключ-по-которому-пришёл-запрос-кто-я"},{"title":"Расход ключа, по которому пришёл запрос","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/api-key/usage","href":"/api-reference/ключи-api/расход-ключа-по-которому-пришёл-запрос"}]},{"group":"Вебхуки","pages":[{"title":"Какие события бывают","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/event-types","href":"/api-reference/вебхуки/какие-события-бывают"},{"title":"Счётчик событий месяца","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/usage","href":"/api-reference/вебхуки/счётчик-событий-месяца"},{"title":"Адреса вебхуков","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints","href":"/api-reference/вебхуки/адреса-вебхуков"},{"title":"Завести адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints","href":"/api-reference/вебхуки/завести-адрес"},{"title":"Адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/адрес"},{"title":"Удалить адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/удалить-адрес"},{"title":"Поменять адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/поменять-адрес"},{"title":"Секрет подписи адреса","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}/secret","href":"/api-reference/вебхуки/секрет-подписи-адреса"},{"title":"Новый секрет подписи","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints/{id}/secret/rotate","href":"/api-reference/вебхуки/новый-секрет-подписи"},{"title":"Пробное событие на адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints/{id}/test","href":"/api-reference/вебхуки/пробное-событие-на-адрес"},{"title":"Попытки доставки на адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}/attempts","href":"/api-reference/вебхуки/попытки-доставки-на-адрес"},{"title":"Отправленные события","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/messages","href":"/api-reference/вебхуки/отправленные-события"},{"title":"Попытки доставки события","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/messages/{id}/attempts","href":"/api-reference/вебхуки/попытки-доставки-события"},{"title":"Отправить событие на адрес ещё раз","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/messages/{id}/resend","href":"/api-reference/вебхуки/отправить-событие-на-адрес-ещё-раз"},{"title":"Proposalawaiting approval","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.awaiting_approval","href":"/api-reference/вебхуки/proposalawaiting_approval"},{"title":"Proposalwritten","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.written","href":"/api-reference/вебхуки/proposalwritten"},{"title":"Proposalfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.failed","href":"/api-reference/вебхуки/proposalfailed"},{"title":"Paymentsucceeded","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook payment.succeeded","href":"/api-reference/вебхуки/paymentsucceeded"},{"title":"Paymentfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook payment.failed","href":"/api-reference/вебхуки/paymentfailed"},{"title":"Automationruncompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.completed","href":"/api-reference/вебхуки/automationruncompleted"},{"title":"Automationrunfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.failed","href":"/api-reference/вебхуки/automationrunfailed"},{"title":"Esfincomingreceived","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook esf.incoming.received","href":"/api-reference/вебхуки/esfincomingreceived"},{"title":"Bank statementreceived","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook bank_statement.received","href":"/api-reference/вебхуки/bank_statementreceived"},{"title":"Proposalrejected","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.rejected","href":"/api-reference/вебхуки/proposalrejected"},{"title":"Batchcompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook batch.completed","href":"/api-reference/вебхуки/batchcompleted"},{"title":"Batchfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook batch.failed","href":"/api-reference/вебхуки/batchfailed"},{"title":"Automationwrite unknown","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.write_unknown","href":"/api-reference/вебхуки/automationwrite_unknown"},{"title":"Automationrunnotice","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.notice","href":"/api-reference/вебхуки/automationrunnotice"},{"title":"Chatturncompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook chat.turn.completed","href":"/api-reference/вебхуки/chatturncompleted"},{"title":"Platformbalance low","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.balance_low","href":"/api-reference/вебхуки/platformbalance_low"},{"title":"Platformbalance exhausted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.balance_exhausted","href":"/api-reference/вебхуки/platformbalance_exhausted"},{"title":"Platformcap threshold reached","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.cap_threshold_reached","href":"/api-reference/вебхуки/platformcap_threshold_reached"},{"title":"Onecconnectionchanged","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook onec.connection.changed","href":"/api-reference/вебхуки/onecconnectionchanged"},{"title":"Api keyexpiring","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook api_key.expiring","href":"/api-reference/вебхуки/api_keyexpiring"},{"title":"Api keycap reached","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook api_key.cap_reached","href":"/api-reference/вебхуки/api_keycap_reached"},{"title":"Ping","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook ping","href":"/api-reference/вебхуки/ping"}]},{"group":"ИИ-бухгалтер: чат","pages":[{"title":"Свои разговоры в компании, свежие сверху","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/chat","href":"/api-reference/ии-бухгалтер:-чат/свои-разговоры-в-компании-свежие-сверху"},{"title":"Сообщение ИИ-бухгалтеру (ход потоком SSE)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat","href":"/api-reference/ии-бухгалтер:-чат/сообщение-ии-бухгалтеру-ход-потоком-sse"},{"title":"Разговор целиком","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/chat/{id}","href":"/api-reference/ии-бухгалтер:-чат/разговор-целиком"},{"title":"Стереть свой разговор","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/companies/{co}/chat/{id}","href":"/api-reference/ии-бухгалтер:-чат/стереть-свой-разговор"},{"title":"Переименовать свой разговор","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/companies/{co}/chat/{id}","href":"/api-reference/ии-бухгалтер:-чат/переименовать-свой-разговор"},{"title":"Ответ на уточняющий вопрос ИИ (событие choice)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat/{id}/answer","href":"/api-reference/ии-бухгалтер:-чат/ответ-на-уточняющий-вопрос-ии-событие-choice"},{"title":"Переподключиться к идущему ходу","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/chat/{id}/events","href":"/api-reference/ии-бухгалтер:-чат/переподключиться-к-идущему-ходу"},{"title":"Сколько токенов и денег займёт вопрос, не задавая его","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat/count-tokens","href":"/api-reference/ии-бухгалтер:-чат/сколько-токенов-и-денег-займёт-вопрос-не-задавая-его"},{"title":"Остановить ход или закрыть открытый вопрос","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat/{id}/stop","href":"/api-reference/ии-бухгалтер:-чат/остановить-ход-или-закрыть-открытый-вопрос"}]},{"group":"ИИ-бухгалтер: предложения","pages":[{"title":"Очередь предложений","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/proposals","href":"/api-reference/ии-бухгалтер:-предложения/очередь-предложений"},{"title":"Карточка предложения","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/proposals/{id}","href":"/api-reference/ии-бухгалтер:-предложения/карточка-предложения"},{"title":"Одобрить и записать в 1С","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/proposals/{id}/approve","href":"/api-reference/ии-бухгалтер:-предложения/одобрить-и-записать-в-1с"},{"title":"Отклонить с причиной","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/proposals/{id}/reject","href":"/api-reference/ии-бухгалтер:-предложения/отклонить-с-причиной"},{"title":"Одобрить пачку предложений","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/proposals/approve-batch","href":"/api-reference/ии-бухгалтер:-предложения/одобрить-пачку-предложений"}]},{"group":"ИИ-бухгалтер: лента","pages":[{"title":"Лента компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/feed","href":"/api-reference/ии-бухгалтер:-лента/лента-компании"},{"title":"Новые события ленты потоком SSE","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/feed/events","href":"/api-reference/ии-бухгалтер:-лента/новые-события-ленты-потоком-sse"}]},{"group":"ИИ-бухгалтер: пачки","pages":[{"title":"Разобрать банковскую выписку в предложения","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/batch/bank-statement","href":"/api-reference/ии-бухгалтер:-пачки/разобрать-банковскую-выписку-в-предложения"},{"title":"Поступления по непривязанным входящим ЭСФ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/batch/esf-purchases","href":"/api-reference/ии-бухгалтер:-пачки/поступления-по-непривязанным-входящим-эсф"},{"title":"Свои задания и выписки дня, свежие сверху","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch","href":"/api-reference/ии-бухгалтер:-пачки/свои-задания-и-выписки-дня-свежие-сверху"},{"title":"Задание с отчётом","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch/{id}","href":"/api-reference/ии-бухгалтер:-пачки/задание-с-отчётом"},{"title":"Сводка задания для «Одобрить и отправить в 1С»","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch/{id}/summary","href":"/api-reference/ии-бухгалтер:-пачки/сводка-задания-для-«одобрить-и-отправить-в-1с»"},{"title":"Прогресс задания потоком SSE","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch/{id}/events","href":"/api-reference/ии-бухгалтер:-пачки/прогресс-задания-потоком-sse"},{"title":"Остановить задание","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/batch/{id}/stop","href":"/api-reference/ии-бухгалтер:-пачки/остановить-задание"},{"title":"Выписки DirectBank по дням","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/statements","href":"/api-reference/ии-бухгалтер:-пачки/выписки-directbank-по-дням"},{"title":"Опросить DirectBank сейчас","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/statements/directbank","href":"/api-reference/ии-бухгалтер:-пачки/опросить-directbank-сейчас"}]},{"group":"ЭСФ","pages":[{"title":"Реализации без действующего ЭСФ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/esf/outgoing","href":"/api-reference/эсф/реализации-без-действующего-эсф"},{"title":"Входящие ЭСФ и поступления в 1С","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/esf/incoming","href":"/api-reference/эсф/входящие-эсф-и-поступления-в-1с"}]},{"group":"Формы","pages":[{"title":"Налоговые формы года","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms","href":"/api-reference/формы/налоговые-формы-года"},{"title":"Посчитать форму","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/build","href":"/api-reference/формы/посчитать-форму"},{"title":"Файл формы для КНП ИСНА","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/isna","href":"/api-reference/формы/файл-формы-для-кнп-исна"},{"title":"Примечания к финотчётности","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/notes","href":"/api-reference/формы/примечания-к-финотчётности"},{"title":"Чего не хватает в 1С","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/data-gaps","href":"/api-reference/формы/чего-не-хватает-в-1с"}]},{"group":"1С","pages":[{"title":"Состояние подключения к 1С (без настроек и секретов)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/onec/status","href":"/api-reference/1с/состояние-подключения-к-1с-без-настроек-и-секретов"}]},{"group":"Автоматизации","pages":[{"title":"Принять событие по адресу хука","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /hooks/{token}","href":"/api-reference/автоматизации/принять-событие-по-адресу-хука"},{"title":"Хуки компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/hooks","href":"/api-reference/автоматизации/хуки-компании"},{"title":"Завести хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/hooks","href":"/api-reference/автоматизации/завести-хук"},{"title":"Хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/hooks/{id}","href":"/api-reference/автоматизации/хук"},{"title":"Удалить хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/companies/{co}/automations/hooks/{id}","href":"/api-reference/автоматизации/удалить-хук"},{"title":"Изменить хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/companies/{co}/automations/hooks/{id}","href":"/api-reference/автоматизации/изменить-хук"},{"title":"Новый токен хука","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/hooks/{id}/rotate","href":"/api-reference/автоматизации/новый-токен-хука"},{"title":"Пробное событие хука","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/hooks/{id}/test","href":"/api-reference/автоматизации/пробное-событие-хука"},{"title":"Сценарии компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/scenarios","href":"/api-reference/автоматизации/сценарии-компании"},{"title":"Завести сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/scenarios","href":"/api-reference/автоматизации/завести-сценарий"},{"title":"Сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/сценарий"},{"title":"Заменить сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json put /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/заменить-сценарий"},{"title":"Удалить сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/удалить-сценарий"},{"title":"Включить или выключить сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/включить-или-выключить-сценарий"},{"title":"Запустить сценарий вручную или на прошлом событии","description":"Сценарий с ИИ (action: agent или шаг agent) запускает и прогоняет на событии только тот, у кого есть chat.use: ход стоит денег и идёт с правами сохранившего (иначе 403 permission_error, permission chat.use). Без тела: сценарий по хуку или по событию Tungo так не запускается — ему нужно событие. Выключенный сценарий вручную запускается. Сценарий с автоодобрением запускает только тот, у кого есть proposals.approve; ключ API с пределами записи — только если правило не шире их (иначе 403 key_write_limit).\n\nС `event_id` — пробный прогон (trial) на прошлом событии этой компании (хука или события Tungo): например, поменяли поручение и хотите проверить его на настоящем платеже. ИИ разбирает событие по нынешнему поручению, а в 1С само ничего не пишется даже при правиле автоодобрения — все предложения ждут человека (поэтому proposals.approve не нужно). Стоимость ИИ — как у обычного запуска, с баланса платформы. Повторять на одном событии можно сколько угодно; настоящая повторная доставка события по-прежнему второй раз сценарий не запускает. Событие не подходит фильтру сценария — прогон всё равно идёт (filter_matched: false). Только для action: agent. Событие чужой компании или удалённое по сроку хранения — 404 `event_not_found`.\n\nIdempotency-Key: повтор с тем же ключом и тем же телом отдаёт прежний ответ (статус и тело) с заголовком Idempotent-Replayed: true и ничего не делает второй раз; тот же ключ с другим адресом или телом — 422 (error.code = idempotency_key_reused); первый запрос с этим ключом ещё идёт — 409 (error.code = idempotency_in_progress). Запоминается только удачный ответ (2xx): после отказа повтор с тем же ключом выполнится заново. Ключ живёт сутки (настройка idempotency.keys), область — организация и тот, кто прислал (ключ API или человек).\n\nДоступ: automations.manage | company.manage.\n\nДоступно по ключу API.","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/scenarios/{id}/run","href":"/api-reference/автоматизации/запустить-сценарий-вручную-или-на-прошлом-событии"},{"title":"Журнал запусков","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/runs","href":"/api-reference/автоматизации/журнал-запусков"},{"title":"Запуск","description":"Событие, ответ ИИ, предложения с текущим статусом, цена.\n\nДоступ: company.read.\n\nДоступно по ключу API.","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/runs/{id}","href":"/api-reference/автоматизации/запуск"},{"title":"Повторить упавший запуск","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/runs/{id}/retry","href":"/api-reference/автоматизации/повторить-упавший-запуск"},{"title":"Отменить запуск","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/runs/{id}/cancel","href":"/api-reference/автоматизации/отменить-запуск"},{"title":"Пауза автоматизаций компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/state","href":"/api-reference/автоматизации/пауза-автоматизаций-компании"},{"title":"Поставить на паузу или снять паузу","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json put /v1/companies/{co}/automations/state","href":"/api-reference/автоматизации/поставить-на-паузу-или-снять-паузу"},{"title":"Доверие ИИ в компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/autonomy","href":"/api-reference/автоматизации/доверие-ии-в-компании"},{"title":"Изменить доверие ИИ в компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json put /v1/companies/{co}/autonomy","href":"/api-reference/автоматизации/изменить-доверие-ии-в-компании"}]}]}]}]},{"version":"Қазақша","tabs":[{"tab":"Басты бет","pages":[{"title":"Басты бет","href":"/kk"}]},{"tab":"Бастау","pages":[{"title":"Бастау","href":"/kk/start/quickstart"}]},{"tab":"1С қосу","pages":[{"title":"1С қосу","href":"/kk/1c/overview"}]},{"tab":"ЖИ-бухгалтер","pages":[{"title":"ЖИ-бухгалтер","href":"/kk/assistant/ask"}]},{"tab":"Тарифтер және төлем","pages":[{"title":"Тарифтер және төлем","href":"/kk/billing/plans"}]},{"tab":"Аккаунт және команда","pages":[{"title":"Аккаунт және команда","href":"/kk/account/sign-in"}]},{"tab":"Мәселелерді шешу","pages":[{"title":"Мәселелерді шешу","href":"/kk/help/sign-in"}]},{"tab":"Платформа","pages":[{"title":"Платформа","href":"/kk/platform/overview"}]},{"tab":"API","groups":[{"group":"API анықтамалығы","pages":[{"group":"Аккаунт","pages":[{"title":"Мои организации (workspace) с публичными id ws_…","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces","href":"/api-reference/аккаунт/мои-организации-workspace-с-публичными-id-ws_…"}]},{"group":"Компании","pages":[{"title":"Мои компании во всех workspace","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies","href":"/api-reference/компании/мои-компании-во-всех-workspace"},{"title":"Компания","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}","href":"/api-reference/компании/компания"}]},{"group":"Биллинг","pages":[{"title":"Привязать карту (форма ePay)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/billing/card-sessions","href":"/api-reference/биллинг/привязать-карту-форма-epay"},{"title":"Привязанные карты","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/billing/payment-methods","href":"/api-reference/биллинг/привязанные-карты"},{"title":"Отвязать карту","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/workspaces/{ws}/billing/payment-methods/{pm}","href":"/api-reference/биллинг/отвязать-карту"},{"title":"Оплатить на форме ePay (с 3-D Secure)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/billing/payments/{id}/pay-form","href":"/api-reference/биллинг/оплатить-на-форме-epay-с-3-d-secure"}]},{"group":"Тарифы и расход","pages":[{"title":"Цены моделей","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/usage-rates","href":"/api-reference/тарифы-и-расход/цены-моделей"}]},{"group":"Платформа: баланс и расход","pages":[{"title":"Счёт платформы","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/account","href":"/api-reference/платформа:-баланс-и-расход/счёт-платформы"},{"title":"Настройки платформы","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json put /v1/workspaces/{ws}/platform/account","href":"/api-reference/платформа:-баланс-и-расход/настройки-платформы"},{"title":"Пополнить баланс платформы","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/platform/purchases","href":"/api-reference/платформа:-баланс-и-расход/пополнить-баланс-платформы"},{"title":"Движения баланса платформы","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/ledger","href":"/api-reference/платформа:-баланс-и-расход/движения-баланса-платформы"},{"title":"Расход платформы","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/usage","href":"/api-reference/платформа:-баланс-и-расход/расход-платформы"},{"title":"Журнал действий организации","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/audit","href":"/api-reference/платформа:-баланс-и-расход/журнал-действий-организации"},{"title":"Журнал запросов по ключам","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/requests","href":"/api-reference/платформа:-баланс-и-расход/журнал-запросов-по-ключам"},{"title":"Пределы платформы и сколько осталось","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/limits","href":"/api-reference/платформа:-баланс-и-расход/пределы-платформы-и-сколько-осталось"}]},{"group":"Ключи API","pages":[{"title":"Кому можно передать ключ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/api-keys/people","href":"/api-reference/ключи-api/кому-можно-передать-ключ"},{"title":"Ключи API (без секретов)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/api-keys","href":"/api-reference/ключи-api/ключи-api-без-секретов"},{"title":"Выпустить ключ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys","href":"/api-reference/ключи-api/выпустить-ключ"},{"title":"Ключ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/api-keys/{id}","href":"/api-reference/ключи-api/ключ"},{"title":"Отозвать ключ (сразу и навсегда)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/workspaces/{ws}/api-keys/{id}","href":"/api-reference/ключи-api/отозвать-ключ-сразу-и-навсегда"},{"title":"Изменить ключ: имя, срок, месячный потолок, компании и права","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/workspaces/{ws}/api-keys/{id}","href":"/api-reference/ключи-api/изменить-ключ:-имя-срок-месячный-потолок-компании-и-права"},{"title":"Сменить секрет ключа","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys/{id}/roll","href":"/api-reference/ключи-api/сменить-секрет-ключа"},{"title":"Передать ключ другому владельцу или админу","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys/{id}/transfer","href":"/api-reference/ключи-api/передать-ключ-другому-владельцу-или-админу"},{"title":"Выключить ключ (можно включить обратно)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys/{id}/disable","href":"/api-reference/ключи-api/выключить-ключ-можно-включить-обратно"},{"title":"Включить выключенный ключ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys/{id}/enable","href":"/api-reference/ключи-api/включить-выключенный-ключ"},{"title":"Расход ключа за период","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/api-keys/{id}/usage","href":"/api-reference/ключи-api/расход-ключа-за-период"},{"title":"Ключ, по которому пришёл запрос (кто я)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/api-key","href":"/api-reference/ключи-api/ключ-по-которому-пришёл-запрос-кто-я"},{"title":"Расход ключа, по которому пришёл запрос","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/api-key/usage","href":"/api-reference/ключи-api/расход-ключа-по-которому-пришёл-запрос"}]},{"group":"Вебхуки","pages":[{"title":"Какие события бывают","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/event-types","href":"/api-reference/вебхуки/какие-события-бывают"},{"title":"Счётчик событий месяца","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/usage","href":"/api-reference/вебхуки/счётчик-событий-месяца"},{"title":"Адреса вебхуков","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints","href":"/api-reference/вебхуки/адреса-вебхуков"},{"title":"Завести адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints","href":"/api-reference/вебхуки/завести-адрес"},{"title":"Адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/адрес"},{"title":"Удалить адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/удалить-адрес"},{"title":"Поменять адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/поменять-адрес"},{"title":"Секрет подписи адреса","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}/secret","href":"/api-reference/вебхуки/секрет-подписи-адреса"},{"title":"Новый секрет подписи","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints/{id}/secret/rotate","href":"/api-reference/вебхуки/новый-секрет-подписи"},{"title":"Пробное событие на адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints/{id}/test","href":"/api-reference/вебхуки/пробное-событие-на-адрес"},{"title":"Попытки доставки на адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}/attempts","href":"/api-reference/вебхуки/попытки-доставки-на-адрес"},{"title":"Отправленные события","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/messages","href":"/api-reference/вебхуки/отправленные-события"},{"title":"Попытки доставки события","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/messages/{id}/attempts","href":"/api-reference/вебхуки/попытки-доставки-события"},{"title":"Отправить событие на адрес ещё раз","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/messages/{id}/resend","href":"/api-reference/вебхуки/отправить-событие-на-адрес-ещё-раз"},{"title":"Proposalawaiting approval","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.awaiting_approval","href":"/api-reference/вебхуки/proposalawaiting_approval"},{"title":"Proposalwritten","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.written","href":"/api-reference/вебхуки/proposalwritten"},{"title":"Proposalfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.failed","href":"/api-reference/вебхуки/proposalfailed"},{"title":"Paymentsucceeded","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook payment.succeeded","href":"/api-reference/вебхуки/paymentsucceeded"},{"title":"Paymentfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook payment.failed","href":"/api-reference/вебхуки/paymentfailed"},{"title":"Automationruncompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.completed","href":"/api-reference/вебхуки/automationruncompleted"},{"title":"Automationrunfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.failed","href":"/api-reference/вебхуки/automationrunfailed"},{"title":"Esfincomingreceived","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook esf.incoming.received","href":"/api-reference/вебхуки/esfincomingreceived"},{"title":"Bank statementreceived","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook bank_statement.received","href":"/api-reference/вебхуки/bank_statementreceived"},{"title":"Proposalrejected","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.rejected","href":"/api-reference/вебхуки/proposalrejected"},{"title":"Batchcompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook batch.completed","href":"/api-reference/вебхуки/batchcompleted"},{"title":"Batchfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook batch.failed","href":"/api-reference/вебхуки/batchfailed"},{"title":"Automationwrite unknown","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.write_unknown","href":"/api-reference/вебхуки/automationwrite_unknown"},{"title":"Automationrunnotice","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.notice","href":"/api-reference/вебхуки/automationrunnotice"},{"title":"Chatturncompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook chat.turn.completed","href":"/api-reference/вебхуки/chatturncompleted"},{"title":"Platformbalance low","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.balance_low","href":"/api-reference/вебхуки/platformbalance_low"},{"title":"Platformbalance exhausted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.balance_exhausted","href":"/api-reference/вебхуки/platformbalance_exhausted"},{"title":"Platformcap threshold reached","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.cap_threshold_reached","href":"/api-reference/вебхуки/platformcap_threshold_reached"},{"title":"Onecconnectionchanged","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook onec.connection.changed","href":"/api-reference/вебхуки/onecconnectionchanged"},{"title":"Api keyexpiring","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook api_key.expiring","href":"/api-reference/вебхуки/api_keyexpiring"},{"title":"Api keycap reached","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook api_key.cap_reached","href":"/api-reference/вебхуки/api_keycap_reached"},{"title":"Ping","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook ping","href":"/api-reference/вебхуки/ping"}]},{"group":"ИИ-бухгалтер: чат","pages":[{"title":"Свои разговоры в компании, свежие сверху","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/chat","href":"/api-reference/ии-бухгалтер:-чат/свои-разговоры-в-компании-свежие-сверху"},{"title":"Сообщение ИИ-бухгалтеру (ход потоком SSE)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat","href":"/api-reference/ии-бухгалтер:-чат/сообщение-ии-бухгалтеру-ход-потоком-sse"},{"title":"Разговор целиком","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/chat/{id}","href":"/api-reference/ии-бухгалтер:-чат/разговор-целиком"},{"title":"Стереть свой разговор","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/companies/{co}/chat/{id}","href":"/api-reference/ии-бухгалтер:-чат/стереть-свой-разговор"},{"title":"Переименовать свой разговор","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/companies/{co}/chat/{id}","href":"/api-reference/ии-бухгалтер:-чат/переименовать-свой-разговор"},{"title":"Ответ на уточняющий вопрос ИИ (событие choice)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat/{id}/answer","href":"/api-reference/ии-бухгалтер:-чат/ответ-на-уточняющий-вопрос-ии-событие-choice"},{"title":"Переподключиться к идущему ходу","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/chat/{id}/events","href":"/api-reference/ии-бухгалтер:-чат/переподключиться-к-идущему-ходу"},{"title":"Сколько токенов и денег займёт вопрос, не задавая его","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat/count-tokens","href":"/api-reference/ии-бухгалтер:-чат/сколько-токенов-и-денег-займёт-вопрос-не-задавая-его"},{"title":"Остановить ход или закрыть открытый вопрос","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat/{id}/stop","href":"/api-reference/ии-бухгалтер:-чат/остановить-ход-или-закрыть-открытый-вопрос"}]},{"group":"ИИ-бухгалтер: предложения","pages":[{"title":"Очередь предложений","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/proposals","href":"/api-reference/ии-бухгалтер:-предложения/очередь-предложений"},{"title":"Карточка предложения","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/proposals/{id}","href":"/api-reference/ии-бухгалтер:-предложения/карточка-предложения"},{"title":"Одобрить и записать в 1С","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/proposals/{id}/approve","href":"/api-reference/ии-бухгалтер:-предложения/одобрить-и-записать-в-1с"},{"title":"Отклонить с причиной","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/proposals/{id}/reject","href":"/api-reference/ии-бухгалтер:-предложения/отклонить-с-причиной"},{"title":"Одобрить пачку предложений","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/proposals/approve-batch","href":"/api-reference/ии-бухгалтер:-предложения/одобрить-пачку-предложений"}]},{"group":"ИИ-бухгалтер: лента","pages":[{"title":"Лента компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/feed","href":"/api-reference/ии-бухгалтер:-лента/лента-компании"},{"title":"Новые события ленты потоком SSE","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/feed/events","href":"/api-reference/ии-бухгалтер:-лента/новые-события-ленты-потоком-sse"}]},{"group":"ИИ-бухгалтер: пачки","pages":[{"title":"Разобрать банковскую выписку в предложения","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/batch/bank-statement","href":"/api-reference/ии-бухгалтер:-пачки/разобрать-банковскую-выписку-в-предложения"},{"title":"Поступления по непривязанным входящим ЭСФ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/batch/esf-purchases","href":"/api-reference/ии-бухгалтер:-пачки/поступления-по-непривязанным-входящим-эсф"},{"title":"Свои задания и выписки дня, свежие сверху","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch","href":"/api-reference/ии-бухгалтер:-пачки/свои-задания-и-выписки-дня-свежие-сверху"},{"title":"Задание с отчётом","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch/{id}","href":"/api-reference/ии-бухгалтер:-пачки/задание-с-отчётом"},{"title":"Сводка задания для «Одобрить и отправить в 1С»","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch/{id}/summary","href":"/api-reference/ии-бухгалтер:-пачки/сводка-задания-для-«одобрить-и-отправить-в-1с»"},{"title":"Прогресс задания потоком SSE","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch/{id}/events","href":"/api-reference/ии-бухгалтер:-пачки/прогресс-задания-потоком-sse"},{"title":"Остановить задание","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/batch/{id}/stop","href":"/api-reference/ии-бухгалтер:-пачки/остановить-задание"},{"title":"Выписки DirectBank по дням","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/statements","href":"/api-reference/ии-бухгалтер:-пачки/выписки-directbank-по-дням"},{"title":"Опросить DirectBank сейчас","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/statements/directbank","href":"/api-reference/ии-бухгалтер:-пачки/опросить-directbank-сейчас"}]},{"group":"ЭСФ","pages":[{"title":"Реализации без действующего ЭСФ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/esf/outgoing","href":"/api-reference/эсф/реализации-без-действующего-эсф"},{"title":"Входящие ЭСФ и поступления в 1С","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/esf/incoming","href":"/api-reference/эсф/входящие-эсф-и-поступления-в-1с"}]},{"group":"Формы","pages":[{"title":"Налоговые формы года","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms","href":"/api-reference/формы/налоговые-формы-года"},{"title":"Посчитать форму","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/build","href":"/api-reference/формы/посчитать-форму"},{"title":"Файл формы для КНП ИСНА","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/isna","href":"/api-reference/формы/файл-формы-для-кнп-исна"},{"title":"Примечания к финотчётности","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/notes","href":"/api-reference/формы/примечания-к-финотчётности"},{"title":"Чего не хватает в 1С","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/data-gaps","href":"/api-reference/формы/чего-не-хватает-в-1с"}]},{"group":"1С","pages":[{"title":"Состояние подключения к 1С (без настроек и секретов)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/onec/status","href":"/api-reference/1с/состояние-подключения-к-1с-без-настроек-и-секретов"}]},{"group":"Автоматизации","pages":[{"title":"Принять событие по адресу хука","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /hooks/{token}","href":"/api-reference/автоматизации/принять-событие-по-адресу-хука"},{"title":"Хуки компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/hooks","href":"/api-reference/автоматизации/хуки-компании"},{"title":"Завести хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/hooks","href":"/api-reference/автоматизации/завести-хук"},{"title":"Хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/hooks/{id}","href":"/api-reference/автоматизации/хук"},{"title":"Удалить хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/companies/{co}/automations/hooks/{id}","href":"/api-reference/автоматизации/удалить-хук"},{"title":"Изменить хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/companies/{co}/automations/hooks/{id}","href":"/api-reference/автоматизации/изменить-хук"},{"title":"Новый токен хука","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/hooks/{id}/rotate","href":"/api-reference/автоматизации/новый-токен-хука"},{"title":"Пробное событие хука","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/hooks/{id}/test","href":"/api-reference/автоматизации/пробное-событие-хука"},{"title":"Сценарии компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/scenarios","href":"/api-reference/автоматизации/сценарии-компании"},{"title":"Завести сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/scenarios","href":"/api-reference/автоматизации/завести-сценарий"},{"title":"Сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/сценарий"},{"title":"Заменить сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json put /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/заменить-сценарий"},{"title":"Удалить сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/удалить-сценарий"},{"title":"Включить или выключить сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/включить-или-выключить-сценарий"},{"title":"Запустить сценарий вручную или на прошлом событии","description":"Сценарий с ИИ (action: agent или шаг agent) запускает и прогоняет на событии только тот, у кого есть chat.use: ход стоит денег и идёт с правами сохранившего (иначе 403 permission_error, permission chat.use). Без тела: сценарий по хуку или по событию Tungo так не запускается — ему нужно событие. Выключенный сценарий вручную запускается. Сценарий с автоодобрением запускает только тот, у кого есть proposals.approve; ключ API с пределами записи — только если правило не шире их (иначе 403 key_write_limit).\n\nС `event_id` — пробный прогон (trial) на прошлом событии этой компании (хука или события Tungo): например, поменяли поручение и хотите проверить его на настоящем платеже. ИИ разбирает событие по нынешнему поручению, а в 1С само ничего не пишется даже при правиле автоодобрения — все предложения ждут человека (поэтому proposals.approve не нужно). Стоимость ИИ — как у обычного запуска, с баланса платформы. Повторять на одном событии можно сколько угодно; настоящая повторная доставка события по-прежнему второй раз сценарий не запускает. Событие не подходит фильтру сценария — прогон всё равно идёт (filter_matched: false). Только для action: agent. Событие чужой компании или удалённое по сроку хранения — 404 `event_not_found`.\n\nIdempotency-Key: повтор с тем же ключом и тем же телом отдаёт прежний ответ (статус и тело) с заголовком Idempotent-Replayed: true и ничего не делает второй раз; тот же ключ с другим адресом или телом — 422 (error.code = idempotency_key_reused); первый запрос с этим ключом ещё идёт — 409 (error.code = idempotency_in_progress). Запоминается только удачный ответ (2xx): после отказа повтор с тем же ключом выполнится заново. Ключ живёт сутки (настройка idempotency.keys), область — организация и тот, кто прислал (ключ API или человек).\n\nДоступ: automations.manage | company.manage.\n\nДоступно по ключу API.","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/scenarios/{id}/run","href":"/api-reference/автоматизации/запустить-сценарий-вручную-или-на-прошлом-событии"},{"title":"Журнал запусков","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/runs","href":"/api-reference/автоматизации/журнал-запусков"},{"title":"Запуск","description":"Событие, ответ ИИ, предложения с текущим статусом, цена.\n\nДоступ: company.read.\n\nДоступно по ключу API.","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/runs/{id}","href":"/api-reference/автоматизации/запуск"},{"title":"Повторить упавший запуск","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/runs/{id}/retry","href":"/api-reference/автоматизации/повторить-упавший-запуск"},{"title":"Отменить запуск","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/runs/{id}/cancel","href":"/api-reference/автоматизации/отменить-запуск"},{"title":"Пауза автоматизаций компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/state","href":"/api-reference/автоматизации/пауза-автоматизаций-компании"},{"title":"Поставить на паузу или снять паузу","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json put /v1/companies/{co}/automations/state","href":"/api-reference/автоматизации/поставить-на-паузу-или-снять-паузу"},{"title":"Доверие ИИ в компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/autonomy","href":"/api-reference/автоматизации/доверие-ии-в-компании"},{"title":"Изменить доверие ИИ в компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json put /v1/companies/{co}/autonomy","href":"/api-reference/автоматизации/изменить-доверие-ии-в-компании"}]}]}]}]}]}]},"basePath":"","title":"Журнал запусков - Tungo","buildId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","deploymentId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CybtLBIt.js","utils-BMLj2fvV.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-B6In562Y.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Dr8Mfhp9.js","snippetPresets-2rmQvMVl.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-WMqJYdZj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CJ-MlPHu.js","shallow-dY3TMRCk.js","getApiPlaygroundDisplay-v-1B2bKm.js","CodeSnippet-BDhiTB7U.js","CodeSnippets-D9hnzQcS.js","Page-C4GwDT3_.js","getPastedJson-Th2V45jI.js","icon-BQXch1W9.js","MethodPill-BCqUneP3.js","DuplicateIcon-Q_-bhurZ.js","createIcon-DUjLHRqp.js","DynamicMarkdown-B-f2cqXQ.js","SectionHeading-Da5NsV4v.js","axios-vUo_bRtp.js","Markdown-D13FWkIM.js","clsx-D3Isdib3.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-C-XZBk9h.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink--qIqmmVG.js"]}