Сессия кабинета: cookie ставит вход через /v1/auth/* (Better Auth), браузер шлёт её сам — фронтенду кабинета ничего добавлять не нужно (fetch с credentials: 'include'). За HTTPS имя cookie — __Secure-tungo.session_token. Сессия кончилась — 401 authentication_error: отправить на вход.
Только в этих статусах: один или несколько через запятую (previewed, approved, rejected, committed, posted, verified, mismatch, failed); без него — все. Неизвестный — 400
Только этих видов: один или несколько через запятую (sale, purchase, bank_receipt, bank_payment, counterparty, contract, revert, inventory_writeoff, cash_order_in, cash_order_out, advance_report). Неизвестный — 400
Курсор следующей страницы. Чтобы получить её — тот же запрос (с теми же фильтрами) и ?cursor=<это значение>. null — страниц больше нет (кнопку «Ещё» спрятать). Курсор непрозрачный: не разбирать и не собирать самому, хранить только до следующего запроса. Пустой data с не-null курсором не бывает.
Сколько предложений в каждом статусе (ключ — ProposalStatus), без учёта фильтра — для бейджей вкладок; статусов без предложений нет
Show child attributes
Пример:
{ "previewed": 3, "verified": 12 }
{"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":"Свежие сверху; страницы курсором (номер последнего предложения страницы).\n\nДоступ: company.read.\n\nДоступно по ключу API.","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/proposals","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: \"Свежие сверху; страницы курсором (номер последнего предложения страницы).\"\n }), \"\\n\", _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":"Свежие сверху; страницы курсором (номер последнего предложения страницы).\n\nДоступ: company.read.\n\nДоступно по ключу API.","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/proposals","href":"/api-reference/ии-бухгалтер:-предложения/очередь-предложений","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["ИИ-бухгалтер: предложения"],"summary":"Очередь предложений","description":"Свежие сверху; страницы курсором (номер последнего предложения страницы).\n\nДоступ: company.read.\n\nДоступно по ключу API.","security":["d6a99bf0-7cdb-4217-97d9-abd24f741414","5ff7f248-3163-4fe8-81f9-ec4ff7fa19bb","fd926414-4358-488b-b371-c74b6ed71972"],"x-api-key-access":true,"x-permission":"company.read","parameters":["dc54fc59-36f8-44c2-b1dd-7f70ac190d6a","d511a2cb-915b-4112-9602-cb94187e5e88","2d209279-b566-45c1-9110-b6edea7b1109","29c22a76-ac9a-4429-a714-3f4e626e6025","eb0938a9-3301-46c1-ba1b-d669a1d51b0e","272e5d5a-d251-4f27-8cee-59688a3e91f4","035bda23-d577-4a39-abb5-83da3381646d","17106aa2-a58d-463b-b53e-2d82eb26f3ec"],"responses":{"200":"8545ea61-8961-4c71-ae5a-880a32dbac8c","400":"4c2929dd-5bc1-4ddf-ac21-aca04ad9e9ad","401":"8dffd437-f47a-455c-a242-6bfc173f5930","403":"996d864c-51c5-450e-9584-9facb7d557e2","404":"dd2e5e3e-4cfb-42af-8564-a68b98cff929","409":"ffd6473e-c811-4523-8662-3d7ccbb559cc","429":"de02751d-0ef2-4d41-ae54-7f1ae82fbe74","503":"adbdd0b8-d7d9-4f5e-b00c-556f504338ed"},"operationId":"listCompanyProposals","method":"get","type":"path","servers":["c389c850-4818-4663-a4a8-1bad0282721d"],"path":"/v1/companies/{co}/proposals","baseUrlOptions":["https://api.tungo.kz"],"title":"Очередь предложений","codeSamples":[],"requestExampleLanguages":["bash","python","javascript"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"dc54fc59-36f8-44c2-b1dd-7f70ac190d6a":{"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"},"d511a2cb-915b-4112-9602-cb94187e5e88":{"schema":{"type":"string","description":"Только в этих статусах: один или несколько через запятую (previewed, approved, rejected, committed, posted, verified, mismatch, failed); без него — все. Неизвестный — 400","example":"previewed,approved","isRequired":false,"uniqueKey":"","typeLabel":"string"},"required":false,"description":"Только в этих статусах: один или несколько через запятую (previewed, approved, rejected, committed, posted, verified, mismatch, failed); без него — все. Неизвестный — 400","name":"status","in":"query"},"2d209279-b566-45c1-9110-b6edea7b1109":{"schema":{"type":"string","description":"Только этих видов: один или несколько через запятую (sale, purchase, bank_receipt, bank_payment, counterparty, contract, revert, inventory_writeoff, cash_order_in, cash_order_out, advance_report). Неизвестный — 400","example":"sale,purchase","isRequired":false,"uniqueKey":"","typeLabel":"string"},"required":false,"description":"Только этих видов: один или несколько через запятую (sale, purchase, bank_receipt, bank_payment, counterparty, contract, revert, inventory_writeoff, cash_order_in, cash_order_out, advance_report). Неизвестный — 400","name":"kind","in":"query"},"29c22a76-ac9a-4429-a714-3f4e626e6025":{"schema":{"type":"string","format":"date","description":"Созданные не раньше этого дня (ГГГГ-ММ-ДД, день по Алматы)","example":"2026-07-01","isRequired":false,"uniqueKey":"","typeLabel":"string\u003cdate>"},"required":false,"description":"Созданные не раньше этого дня (ГГГГ-ММ-ДД, день по Алматы)","name":"date_from","in":"query"},"eb0938a9-3301-46c1-ba1b-d669a1d51b0e":{"schema":{"type":"string","format":"date","description":"Созданные не позже этого дня включительно (ГГГГ-ММ-ДД, день по Алматы)","example":"2026-07-31","isRequired":false,"uniqueKey":"","typeLabel":"string\u003cdate>"},"required":false,"description":"Созданные не позже этого дня включительно (ГГГГ-ММ-ДД, день по Алматы)","name":"date_to","in":"query"},"272e5d5a-d251-4f27-8cee-59688a3e91f4":{"schema":{"type":"string","description":"Поиск без учёта регистра: номер предложения (P-…), номер документа 1С, контрагент (имя из превью), БИН/ИИН и другие реквизиты документа","example":"Пример","isRequired":false,"uniqueKey":"","typeLabel":"string"},"required":false,"description":"Поиск без учёта регистра: номер предложения (P-…), номер документа 1С, контрагент (имя из превью), БИН/ИИН и другие реквизиты документа","name":"q","in":"query"},"035bda23-d577-4a39-abb5-83da3381646d":{"schema":{"type":"string","description":"next_cursor из ответа прошлой страницы; без него — первая (самая свежая) страница. Остальные фильтры — те же, что у первой страницы.","isRequired":false,"uniqueKey":"","typeLabel":"string"},"required":false,"description":"next_cursor из ответа прошлой страницы; без него — первая (самая свежая) страница. Остальные фильтры — те же, что у первой страницы.","name":"cursor","in":"query"},"17106aa2-a58d-463b-b53e-2d82eb26f3ec":{"schema":{"type":"integer","minimum":1,"maximum":100,"description":"Сколько на странице: 1–100, по умолчанию 20","isRequired":false,"uniqueKey":"","typeLabel":"integer"},"required":false,"description":"Сколько на странице: 1–100, по умолчанию 20","name":"limit","in":"query"}},"responses":{"8545ea61-8961-4c71-ae5a-880a32dbac8c":{"description":"Страница очереди","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Номер предложения внутри компании (P-000123): по нему открывают карточку GET …/proposals/{id} и одобряют POST …/proposals/{id}/approve","example":"P-000123","isRequired":true,"uniqueKey":"data.items.[INDEX].id","typeLabel":"string"},"kind":{"type":"string","enum":["sale","purchase","bank_receipt","bank_payment","counterparty","contract","revert","inventory_writeoff","cash_order_in","cash_order_out","advance_report"],"description":"Что ИИ предлагает записать в 1С (подпись по-русски — в kind_title):\n- sale — реализация товаров и услуг (продажа покупателю);\n- purchase — поступление товаров и услуг (покупка у поставщика);\n- bank_receipt — входящее платёжное поручение (деньги пришли на счёт);\n- bank_payment — исходящее платёжное поручение (оплата со счёта);\n- counterparty — новый контрагент (карточка справочника, не документ);\n- contract — новый договор с контрагентом (карточка справочника);\n- revert — отмена ранее записанного документа (распровести и пометить на удаление);\n- inventory_writeoff — списание товаров;\n- cash_order_in — приходный кассовый ордер (наличные в кассу);\n- cash_order_out — расходный кассовый ордер (наличные из кассы);\n- advance_report — авансовый отчёт подотчётного лица.","isRequired":true,"uniqueKey":"data.items.[INDEX].kind","typeLabel":"enum\u003cstring>"},"kind_title":{"type":"string","description":"Вид документа по-русски для показа","example":"Реализация товаров и услуг","isRequired":true,"uniqueKey":"data.items.[INDEX].kind_title","typeLabel":"string"},"status":{"type":"string","enum":["previewed","approved","rejected","committed","posted","verified","mismatch","failed"],"description":"Где предложение в жизненном цикле (подпись по-русски — в status_title рядом):\n- previewed — ждёт решения бухгалтера: показать кнопки «Записать» и «Отклонить»;\n- approved — одобрено, но запись в 1С не закончена (1С не ответила): «Записать» ещё раз безопасно — второй документ не создастся;\n- rejected — отклонено, в 1С ничего не записано; конечное;\n- committed — записано в 1С черновиком, без проведения (проводок нет);\n- posted — записано и проведено, проводки ещё не сверены;\n- verified — проведено, фактические проводки 1С совпали с ожидаемыми; конечное, всё хорошо;\n- mismatch — проведено, но проводки расходятся с ожидаемыми: показать предупреждение, причины — в result.mismatches;\n- failed — записать не удалось: причина — в последней записи history.","isRequired":true,"uniqueKey":"data.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"status_title":{"type":"string","description":"Статус по-русски для показа (бейдж)","example":"Ждёт решения","isRequired":true,"uniqueKey":"data.items.[INDEX].status_title","typeLabel":"string"},"created_at":{"type":"string","format":"date-time","description":"Когда ИИ подготовил предложение, ISO 8601 UTC","example":"2026-07-10T09:15:00.000Z","isRequired":true,"uniqueKey":"data.items.[INDEX].created_at","typeLabel":"string\u003cdate-time>"},"level":{"type":"string","enum":["L0","L1","L2","L3","L4","HUMAN_ONLY","FORBIDDEN"],"description":"Уровень самостоятельности ИИ для этого вида операции по политике компании (подпись — в level_title):\n- L0 — только чтение; L1 — ИИ предлагает, одобряет человек (обычный случай);\n- L2 — ИИ сам записывает черновик; L3 — ИИ проводит сам, с возможностью отмены; L4 — ИИ проводит сам;\n- HUMAN_ONLY — только человек и только по одному: пачкой не одобряется (исход policy_blocked);\n- FORBIDDEN — запрещено политикой: одобрить нельзя (403, error.code = policy_blocked).","isRequired":true,"uniqueKey":"data.items.[INDEX].level","typeLabel":"enum\u003cstring>"},"level_title":{"type":"string","description":"Уровень самостоятельности по-русски для показа","example":"Предложение, одобряет человек","isRequired":true,"uniqueKey":"data.items.[INDEX].level_title","typeLabel":"string"},"title":{"type":"string","description":"Заголовок строки очереди: вид документа, дата и контрагент","example":"Реализация товаров и услуг от 2026-07-10 · ТОО «Пример»","isRequired":true,"uniqueKey":"data.items.[INDEX].title","typeLabel":"string"},"total":{"type":"object","properties":{"amount":{"type":"number","description":"Тенге десятичным числом, до тиына: 1234.5 = 1 234,50 ₸. Для показа и графиков; считать деньги — по amount_tiyn","example":1234.5,"isRequired":true,"uniqueKey":"data.items.[INDEX].total.amount","typeLabel":"number"},"amount_tiyn":{"type":"integer","description":"То же целым числом тиынов (1 ₸ = 100 тиын): 1234.5 ₸ = 123450. Складывать и сравнивать суммы — по этому полю","example":123450,"isRequired":true,"uniqueKey":"data.items.[INDEX].total.amount_tiyn","typeLabel":"integer"},"formatted":{"type":"string","description":"Готовая строка для человека — показывать как есть: «1 234,50 ₸»","example":"1 234,50 ₸","isRequired":true,"uniqueKey":"data.items.[INDEX].total.formatted","typeLabel":"string"}},"required":["amount","amount_tiyn","formatted"],"description":"Сумма документа (как в 1С: с НДС или без — см. header.prices_include_vat в карточке)","isRequired":true,"uniqueKey":"data.items.[INDEX].total","typeLabel":"object"},"vat":{"type":"object","description":"НДС по строкам документа (налог на добавленную стоимость); 0 — без НДС","required":["amount","amount_tiyn","formatted"],"properties":{"amount":{"type":"number","description":"Тенге десятичным числом, до тиына: 1234.5 = 1 234,50 ₸. Для показа и графиков; считать деньги — по amount_tiyn","example":1234.5,"isRequired":true,"uniqueKey":"data.items.[INDEX].vat.amount","typeLabel":"number"},"amount_tiyn":{"type":"integer","description":"То же целым числом тиынов (1 ₸ = 100 тиын): 1234.5 ₸ = 123450. Складывать и сравнивать суммы — по этому полю","example":123450,"isRequired":true,"uniqueKey":"data.items.[INDEX].vat.amount_tiyn","typeLabel":"integer"},"formatted":{"type":"string","description":"Готовая строка для человека — показывать как есть: «1 234,50 ₸»","example":"1 234,50 ₸","isRequired":true,"uniqueKey":"data.items.[INDEX].vat.formatted","typeLabel":"string"}},"isRequired":true,"uniqueKey":"data.items.[INDEX].vat","typeLabel":"object"},"line_count":{"type":"integer","description":"Сколько строк товаров и услуг в документе; 0 у платёжек и справочников","isRequired":true,"uniqueKey":"data.items.[INDEX].line_count","typeLabel":"integer"},"warning_count":{"type":"integer","description":"Сколько предупреждений: показать жёлтый значок, одобрению не мешают","isRequired":true,"uniqueKey":"data.items.[INDEX].warning_count","typeLabel":"integer"},"blocker_count":{"type":"integer","description":"Сколько блокеров: больше 0 — одобрить нельзя, нужен ответ человека в чате","isRequired":true,"uniqueKey":"data.items.[INDEX].blocker_count","typeLabel":"integer"},"approval":{"type":"object","properties":{"allowed":{"type":"boolean","description":"Можно ли сейчас нажать «Записать»: false — кнопку выключить и показать reason рядом. Сервер всё равно проверит заново","isRequired":true,"uniqueKey":"data.items.[INDEX].approval.allowed","typeLabel":"boolean"},"requires_right":{"type":"string","enum":["proposals.approve"],"description":"Какое право нужно, чтобы одобрять (всегда proposals.approve)","isRequired":true,"uniqueKey":"data.items.[INDEX].approval.requires_right","typeLabel":"enum\u003cstring>"},"blocked_by_blockers":{"type":"boolean","description":"true — есть блокеры (blockers): пока они есть, одобрение невозможно. Предупреждения (warnings) одобрению не мешают","isRequired":true,"uniqueKey":"data.items.[INDEX].approval.blocked_by_blockers","typeLabel":"boolean"},"reason":{"type":"string","description":"Почему одобрить нельзя — показать рядом с выключенной кнопкой. Есть только при allowed = false","uniqueKey":"data.items.[INDEX].approval.reason","typeLabel":"string"}},"required":["allowed","requires_right","blocked_by_blockers"],"description":"Можно ли текущему пользователю одобрить предложение — то же правило, что применит ручка одобрения","isRequired":true,"uniqueKey":"data.items.[INDEX].approval","typeLabel":"object"},"dialog_id":{"oneOf":[{"type":"string","description":"Разговор чата, в котором ИИ подготовил предложение: «Открыть разговор» — GET …/chat/{dialog_id} (если он ваш). null — не из чата (пачка, автоматизация, MCP)","isRequired":true,"uniqueKey":"data.items.[INDEX].dialog_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Разговор чата, в котором ИИ подготовил предложение: «Открыть разговор» — GET …/chat/{dialog_id} (если он ваш). null — не из чата (пачка, автоматизация, MCP)","isRequired":true,"uniqueKey":"data.items.[INDEX].dialog_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.items.[INDEX].dialog_id","typeLabel":"string | null"},"href":{"type":"string","description":"Адрес карточки в API: GET по нему отдаёт ProposalCard","example":"/v1/companies/co_01jx0000000000000000000000/proposals/P-000123","isRequired":true,"uniqueKey":"data.items.[INDEX].href","typeLabel":"string"},"counterparty":{"type":"object","properties":{"ref":{"type":"string","description":"Ref_Key контрагента или организации в 1С (GUID). Показывать не нужно — это ссылка для перехода в 1С и для отладки","example":"00000000-0000-0000-0000-000000000000","isRequired":true,"uniqueKey":"data.items.[INDEX].counterparty.ref","typeLabel":"string"},"name":{"type":"string","description":"Название для показа. Не нашёлся в 1С — «Контрагент не найден в 1С»","example":"ТОО «Пример»","isRequired":true,"uniqueKey":"data.items.[INDEX].counterparty.name","typeLabel":"string"},"bin":{"type":"string","description":"БИН/ИИН — 12 цифр (БИН у юрлица, ИИН у ИП и физлица). Нет — в 1С не заполнен","example":"000000000000","uniqueKey":"data.items.[INDEX].counterparty.bin","typeLabel":"string"}},"required":["ref","name"],"description":"Контрагент документа; нет — у документа его нет (например, кассовый ордер без контрагента)","uniqueKey":"data.items.[INDEX].counterparty","typeLabel":"object"},"document_number":{"type":"string","description":"Номер документа в 1С — есть, когда документ уже записан","example":"0000-000123","uniqueKey":"data.items.[INDEX].document_number","typeLabel":"string"}},"required":["id","kind","kind_title","status","status_title","created_at","level","level_title","title","total","vat","line_count","warning_count","blocker_count","approval","dialog_id","href"],"description":"Короткая карточка для очереди — без строк и проводок (за ними — GET …/proposals/{id})","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"},"total":{"type":"number","description":"Сколько предложений подходит под все фильтры (на всех страницах)","isRequired":true,"uniqueKey":"total","typeLabel":"number"},"counts":{"type":"object","additionalProperties":{"type":"number","uniqueKey":"counts.additionalProperties","typeLabel":"number"},"description":"Сколько предложений в каждом статусе (ключ — ProposalStatus), без учёта фильтра — для бейджей вкладок; статусов без предложений нет","example":{"previewed":3,"verified":12},"isRequired":true,"uniqueKey":"counts","typeLabel":"object"}},"required":["data","next_cursor","total","counts"],"description":"Страница очереди предложений, свежие сверху","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"data":[{"id":"P-000123","kind":"sale","kind_title":"Реализация товаров и услуг","status":"previewed","status_title":"Ждёт решения","created_at":"2026-07-10T09:15:00.000Z","level":"L0","level_title":"Предложение, одобряет человек","title":"Реализация товаров и услуг от 2026-07-10 · ТОО «Пример»","total":{"amount":1234.5,"amount_tiyn":123450,"formatted":"1 234,50 ₸"},"vat":{"amount":1234.5,"amount_tiyn":123450,"formatted":"1 234,50 ₸"},"line_count":123,"warning_count":123,"blocker_count":123,"approval":{"allowed":true,"requires_right":"proposals.approve","blocked_by_blockers":true,"reason":"\u003cstring>"},"dialog_id":"\u003cstring>","href":"/v1/companies/co_01jx0000000000000000000000/proposals/P-000123","counterparty":{"ref":"00000000-0000-0000-0000-000000000000","name":"ТОО «Пример»","bin":"000000000000"},"document_number":"0000-000123"}],"next_cursor":"aud_01jz8x3m4n5p6q7r8s9t0v1w2x","total":123,"counts":{"previewed":3,"verified":12}}}},"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"},"4c2929dd-5bc1-4ddf-ac21-aca04ad9e9ad":{"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"},"8dffd437-f47a-455c-a242-6bfc173f5930":{"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"},"996d864c-51c5-450e-9584-9facb7d557e2":{"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"},"dd2e5e3e-4cfb-42af-8564-a68b98cff929":{"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"},"ffd6473e-c811-4523-8662-3d7ccbb559cc":{"description":"Состояние не позволяет — перечитать объект и показать error.message (error.type: conflict_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"},"de02751d-0ef2-4d41-ae54-7f1ae82fbe74":{"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"},"adbdd0b8-d7d9-4f5e-b00c-556f504338ed":{"description":"Временно недоступно — повторить позже (error.type: unavailable_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"}},"security":{"d6a99bf0-7cdb-4217-97d9-abd24f741414":{"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"}},"5ff7f248-3163-4fe8-81f9-ec4ff7fa19bb":{"apiKey":{"type":"apiKey","in":"header","name":"x-api-key","description":"Ключ API организации: `x-api-key: tg_…`. Для серверных интеграций, не для кабинета: ключ — секрет, из браузера его не слать (CORS закрыт). Какие адреса пускают по ключу — x-api-key-access у операции.","scopes":[],"schemeName":"apiKey"}},"fd926414-4358-488b-b371-c74b6ed71972":{"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:20.782Z","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%98%D0%98-%D0%B1%D1%83%D1%85%D0%B3%D0%B0%D0%BB%D1%82%D0%B5%D1%80%3A+%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F\u0026amp;title=%D0%9E%D1%87%D0%B5%D1%80%D0%B5%D0%B4%D1%8C+%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9\u0026amp;description=%D0%A1%D0%B2%D0%B5%D0%B6%D0%B8%D0%B5+%D1%81%D0%B2%D0%B5%D1%80%D1%85%D1%83%3B+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D1%8B+%D0%BA%D1%83%D1%80%D1%81%D0%BE%D1%80%D0%BE%D0%BC+%28%D0%BD%D0%BE%D0%BC%D0%B5%D1%80+%D0%BF%D0%BE%D1%81%D0%BB%D0%B5%D0%B4%D0%BD%D0%B5%D0%B3%D0%BE+%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D1%8B%29.%0A%0A%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=5924aeebffe2f0abdb245dc956931762016bb6190252875b97383f7693931c59\">\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%98%D0%98-%D0%B1%D1%83%D1%85%D0%B3%D0%B0%D0%BB%D1%82%D0%B5%D1%80%3A+%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F\u0026amp;title=%D0%9E%D1%87%D0%B5%D1%80%D0%B5%D0%B4%D1%8C+%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9\u0026amp;description=%D0%A1%D0%B2%D0%B5%D0%B6%D0%B8%D0%B5+%D1%81%D0%B2%D0%B5%D1%80%D1%85%D1%83%3B+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D1%8B+%D0%BA%D1%83%D1%80%D1%81%D0%BE%D1%80%D0%BE%D0%BC+%28%D0%BD%D0%BE%D0%BC%D0%B5%D1%80+%D0%BF%D0%BE%D1%81%D0%BB%D0%B5%D0%B4%D0%BD%D0%B5%D0%B3%D0%BE+%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F+%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D1%8B%29.%0A%0A%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=5924aeebffe2f0abdb245dc956931762016bb6190252875b97383f7693931c59\">\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%B8%D0%B8-%D0%B1%D1%83%D1%85%D0%B3%D0%B0%D0%BB%D1%82%D0%B5%D1%80%3A-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F/%D0%BE%D1%87%D0%B5%D1%80%D0%B5%D0%B4%D1%8C-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9.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%B8%D0%B8-%D0%B1%D1%83%D1%85%D0%B3%D0%B0%D0%BB%D1%82%D0%B5%D1%80:-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F/%D0%BE%D1%87%D0%B5%D1%80%D0%B5%D0%B4%D1%8C-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9#webpage\",\"url\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B8%D0%B8-%D0%B1%D1%83%D1%85%D0%B3%D0%B0%D0%BB%D1%82%D0%B5%D1%80:-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F/%D0%BE%D1%87%D0%B5%D1%80%D0%B5%D0%B4%D1%8C-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9\",\"name\":\"Очередь предложений\",\"description\":\"Свежие сверху; страницы курсором (номер последнего предложения страницы). Доступ: company.read. Доступно по ключу API.\",\"dateModified\":\"2026-11-11T22:37:20.782Z\",\"isPartOf\":{\"@id\":\"https://tungo-ai.mintlify.app#website\"},\"breadcrumb\":{\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B8%D0%B8-%D0%B1%D1%83%D1%85%D0%B3%D0%B0%D0%BB%D1%82%D0%B5%D1%80:-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F/%D0%BE%D1%87%D0%B5%D1%80%D0%B5%D0%B4%D1%8C-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B8%D0%B8-%D0%B1%D1%83%D1%85%D0%B3%D0%B0%D0%BB%D1%82%D0%B5%D1%80:-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F/%D0%BE%D1%87%D0%B5%D1%80%D0%B5%D0%B4%D1%8C-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9#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%B8%D0%B8-%D0%B1%D1%83%D1%85%D0%B3%D0%B0%D0%BB%D1%82%D0%B5%D1%80:-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F/%D0%BE%D1%87%D0%B5%D1%80%D0%B5%D0%B4%D1%8C-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B8%D0%B8-%D0%B1%D1%83%D1%85%D0%B3%D0%B0%D0%BB%D1%82%D0%B5%D1%80:-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F/%D0%BE%D1%87%D0%B5%D1%80%D0%B5%D0%B4%D1%8C-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9#apireference\",\"headline\":\"Очередь предложений\",\"name\":\"Очередь предложений\",\"description\":\"Свежие сверху; страницы курсором (номер последнего предложения страницы). Доступ: company.read. Доступно по ключу API.\",\"url\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B8%D0%B8-%D0%B1%D1%83%D1%85%D0%B3%D0%B0%D0%BB%D1%82%D0%B5%D1%80:-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F/%D0%BE%D1%87%D0%B5%D1%80%D0%B5%D0%B4%D1%8C-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9\",\"mainEntityOfPage\":{\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B8%D0%B8-%D0%B1%D1%83%D1%85%D0%B3%D0%B0%D0%BB%D1%82%D0%B5%D1%80:-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F/%D0%BE%D1%87%D0%B5%D1%80%D0%B5%D0%B4%D1%8C-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9#webpage\"},\"dateModified\":\"2026-11-11T22:37:20.782Z\",\"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%B8%D0%B8-%D0%B1%D1%83%D1%85%D0%B3%D0%B0%D0%BB%D1%82%D0%B5%D1%80%3A-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F/%D0%BE%D1%87%D0%B5%D1%80%D0%B5%D0%B4%D1%8C-%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9.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":"Остановить ход или закрыть открытый вопрос","description":"Идёт ход — останавливается (поток получит ошибку aborted и done). Ход ждёт ответа на вопрос — вопрос закрывается без ответа (dismissed: true). Ни хода, ни вопроса — 404.\n\nДоступ: chat.use.\n\nДоступно по ключу API.","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":"Карточка предложения","description":"Шапка, строки, проводки, блокеры, доступные действия.\n\nДоступ: company.read.\n\nДоступно по ключу API.","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":"Запустить сценарий вручную или на прошлом событии","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":"Запуск","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":"Остановить ход или закрыть открытый вопрос","description":"Идёт ход — останавливается (поток получит ошибку aborted и done). Ход ждёт ответа на вопрос — вопрос закрывается без ответа (dismissed: true). Ни хода, ни вопроса — 404.\n\nДоступ: chat.use.\n\nДоступно по ключу API.","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":"Карточка предложения","description":"Шапка, строки, проводки, блокеры, доступные действия.\n\nДоступ: company.read.\n\nДоступно по ключу API.","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":"Запустить сценарий вручную или на прошлом событии","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":"Запуск","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"]}