По умолчанию — с начала текущего месяца по Алматы до сейчас; период не больше 400 дней. По ключу API — только расход самого этого ключа (:id — его id).
Доступ: Владелец или админ workspace; по ключу — свой.
Доступно по ключу API.
GET
/
v1
/
workspaces
/
{ws}
/
api-keys
/
{id}
/
usage
Расход ключа за период
curl --request GET \ --url https://api.tungo.kz/v1/workspaces/{ws}/api-keys/{id}/usage \ --cookie tungo.session_token=
Сессия кабинета: cookie ставит вход через /v1/auth/* (Better Auth), браузер шлёт её сам — фронтенду кабинета ничего добавлять не нужно (fetch с credentials: 'include'). За HTTPS имя cookie — __Secure-tungo.session_token. Сессия кончилась — 401 authentication_error: отправить на вход.
Расход ключа за текущий месяц и его потолок — для полосы «потрачено из».
Show child attributes
{"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/ключи-api/расход-ключа-за-период","slug":"/api-reference/ключи-api/расход-ключа-за-период","pageMetadata":{"title":"Расход ключа за период","description":"По умолчанию — с начала текущего месяца по Алматы до сейчас; период не больше 400 дней. По ключу API — только расход самого этого ключа (:id — его id).\n\nДоступ: Владелец или админ workspace; по ключу — свой.\n\nДоступно по ключу API.","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/api-keys/{id}/usage","href":"/api-reference/ключи-api/расход-ключа-за-период","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: \"По умолчанию — с начала текущего месяца по Алматы до сейчас; период не больше 400 дней. По ключу API — только расход самого этого ключа (:id — его id).\"\n }), \"\\n\", _jsx(_components.p, {\n children: \"Доступ: Владелец или админ workspace; по ключу — свой.\"\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":"По умолчанию — с начала текущего месяца по Алматы до сейчас; период не больше 400 дней. По ключу API — только расход самого этого ключа (:id — его id).\n\nДоступ: Владелец или админ workspace; по ключу — свой.\n\nДоступно по ключу API.","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/api-keys/{id}/usage","href":"/api-reference/ключи-api/расход-ключа-за-период","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Ключи API"],"summary":"Расход ключа за период","description":"По умолчанию — с начала текущего месяца по Алматы до сейчас; период не больше 400 дней. По ключу API — только расход самого этого ключа (:id — его id).\n\nДоступ: Владелец или админ workspace; по ключу — свой.\n\nДоступно по ключу API.","security":["22e286a4-f8b7-4f2a-8d00-d2ff81747a06","fdb04eb7-3520-4c65-9728-8d074cf9528f","2e95dd53-881e-4929-b1b0-c95ba863fd2d"],"x-api-key-access":true,"x-permission":"Владелец или админ workspace; по ключу — свой","parameters":["cd301763-1299-43da-9ba5-a320967c6eb1","8208ab5e-0980-4e3f-9d71-519da792d0a3","9930f60e-fe73-428f-9a4d-0a82e98d2bb1","4241dff4-463e-4025-b1b6-603af43308d6"],"responses":{"200":"72e61e7f-8d96-4253-84d1-79697001585b","400":"42454cdd-3e28-475d-bfb5-4c422599ef83","401":"0778635c-3d4e-4c68-96fb-95cae94750e9","403":"523311dc-217a-4393-b824-d3aaf3418611","404":"fcbd5ca5-cb2b-4093-ac4f-e0056b8fdb9b","429":"bc1b91c7-a664-47bb-bf94-28e4489edb76"},"operationId":"getWorkspaceApiKeyUsage","method":"get","type":"path","servers":["c389c850-4818-4663-a4a8-1bad0282721d"],"path":"/v1/workspaces/{ws}/api-keys/{id}/usage","baseUrlOptions":["https://api.tungo.kz"],"title":"Расход ключа за период","codeSamples":[],"requestExampleLanguages":["bash","python","javascript"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"cd301763-1299-43da-9ba5-a320967c6eb1":{"schema":{"type":"string","description":"id организации (workspace), ws_… — из GET /v1/workspaces","isRequired":true,"uniqueKey":"","typeLabel":"string"},"required":true,"description":"id организации (workspace), ws_… — из GET /v1/workspaces","name":"ws","in":"path"},"8208ab5e-0980-4e3f-9d71-519da792d0a3":{"schema":{"type":"string","description":"id ключа (key_…)","isRequired":true,"uniqueKey":"","typeLabel":"string"},"required":true,"description":"id ключа (key_…)","name":"id","in":"path"},"9930f60e-fe73-428f-9a4d-0a82e98d2bb1":{"schema":{"oneOf":[{"type":"string","format":"date-time","description":"Начало периода, ISO 8601 (включительно). Нет — 1-е число текущего месяца, 00:00 по Алматы","example":"2026-10-01T00:00:00+05:00","uniqueKey":"oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"Начало периода, ISO 8601 (включительно). Нет — 1-е число текущего месяца, 00:00 по Алматы","example":"2026-10-01T00:00:00+05:00","uniqueKey":"oneOf.1","typeLabel":"null"}],"isRequired":false,"uniqueKey":"","typeLabel":"string\u003cdate-time> | null"},"required":false,"description":"Начало периода, ISO 8601 (включительно). Нет — 1-е число текущего месяца, 00:00 по Алматы","name":"from","in":"query"},"4241dff4-463e-4025-b1b6-603af43308d6":{"schema":{"oneOf":[{"type":"string","format":"date-time","description":"Конец периода, ISO 8601 (не включительно); позже from и не дальше 400 дней от него. Нет — сейчас","example":"2026-11-01T00:00:00+05:00","uniqueKey":"oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"Конец периода, ISO 8601 (не включительно); позже from и не дальше 400 дней от него. Нет — сейчас","example":"2026-11-01T00:00:00+05:00","uniqueKey":"oneOf.1","typeLabel":"null"}],"isRequired":false,"uniqueKey":"","typeLabel":"string\u003cdate-time> | null"},"required":false,"description":"Конец периода, ISO 8601 (не включительно); позже from и не дальше 400 дней от него. Нет — сейчас","name":"to","in":"query"}},"responses":{"72e61e7f-8d96-4253-84d1-79697001585b":{"description":"Расход (в тиынах)","content":{"application/json":{"schema":{"type":"object","properties":{"key_id":{"type":"string","description":"Ключ (key_…)","isRequired":true,"uniqueKey":"key_id","typeLabel":"string"},"from":{"type":"string","format":"date-time","example":"2026-10-05T09:30:00.000Z","description":"Начало периода, ISO 8601 UTC (включительно)","isRequired":true,"uniqueKey":"from","typeLabel":"string\u003cdate-time>"},"to":{"type":"string","format":"date-time","example":"2026-10-05T09:30:00.000Z","description":"Конец периода, ISO 8601 UTC (не включительно)","isRequired":true,"uniqueKey":"to","typeLabel":"string\u003cdate-time>"},"totals":{"type":"object","properties":{"requests":{"type":"integer","description":"Сколько вызовов ИИ за период","isRequired":true,"uniqueKey":"totals.requests","typeLabel":"integer"},"input_tokens":{"type":"integer","description":"Токены, отправленные модели (вопрос и контекст). Токен — кусочек текста, по ним считается цена","isRequired":true,"uniqueKey":"totals.input_tokens","typeLabel":"integer"},"output_tokens":{"type":"integer","description":"Токены ответа модели","isRequired":true,"uniqueKey":"totals.output_tokens","typeLabel":"integer"},"cache_write_tokens":{"type":"integer","description":"Токены, записанные в кэш модели (дороже обычных входных, зато следующие вызовы дешевле)","isRequired":true,"uniqueKey":"totals.cache_write_tokens","typeLabel":"integer"},"cache_read_tokens":{"type":"integer","description":"Токены, прочитанные из кэша модели (намного дешевле обычных входных)","isRequired":true,"uniqueKey":"totals.cache_read_tokens","typeLabel":"integer"},"cost_tiyn":{"type":"integer","description":"Стоимость всех вызовов в тиынах (1 ₸ = 100 тиын; показывать значение / 100 ₸)","isRequired":true,"uniqueKey":"totals.cost_tiyn","typeLabel":"integer"}},"required":["requests","input_tokens","output_tokens","cache_write_tokens","cache_read_tokens","cost_tiyn"],"description":"Итоги за период","isRequired":true,"uniqueKey":"totals","typeLabel":"object"},"by_day":{"type":"array","items":{"type":"object","properties":{"day":{"type":"string","description":"День по Алматы, ГГГГ-ММ-ДД (календарная дата, без пояса — не переводить)","example":"2026-11-03","isRequired":true,"uniqueKey":"by_day.items.[INDEX].day","typeLabel":"string"},"requests":{"type":"integer","description":"Сколько вызовов ИИ","isRequired":true,"uniqueKey":"by_day.items.[INDEX].requests","typeLabel":"integer"},"cost_tiyn":{"type":"integer","description":"Стоимость в тиынах (1 ₸ = 100 тиын; показывать значение / 100 ₸)","isRequired":true,"uniqueKey":"by_day.items.[INDEX].cost_tiyn","typeLabel":"integer"}},"required":["day","requests","cost_tiyn"],"uniqueKey":"by_day.items.[INDEX]","typeLabel":"object"},"description":"По дням (только дни с вызовами), по возрастанию даты — для графика","isRequired":true,"uniqueKey":"by_day","typeLabel":"object[]"},"by_model":{"type":"array","items":{"type":"object","properties":{"model":{"type":"string","description":"Модель ИИ: tungo-1-flash, tungo-1, tungo-1-deep (tungo-search, tungo-legacy)","isRequired":true,"uniqueKey":"by_model.items.[INDEX].model","typeLabel":"string"},"requests":{"type":"integer","description":"Сколько вызовов ИИ","isRequired":true,"uniqueKey":"by_model.items.[INDEX].requests","typeLabel":"integer"},"cost_tiyn":{"type":"integer","description":"Стоимость в тиынах (1 ₸ = 100 тиын; показывать значение / 100 ₸)","isRequired":true,"uniqueKey":"by_model.items.[INDEX].cost_tiyn","typeLabel":"integer"}},"required":["model","requests","cost_tiyn"],"uniqueKey":"by_model.items.[INDEX]","typeLabel":"object"},"description":"По моделям ИИ, по алфавиту","isRequired":true,"uniqueKey":"by_model","typeLabel":"object[]"},"by_company":{"type":"array","items":{"type":"object","properties":{"company_id":{"oneOf":[{"type":"string","description":"Компания (co_…); null — вызовы не по компании","isRequired":true,"uniqueKey":"by_company.items.[INDEX].company_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Компания (co_…); null — вызовы не по компании","isRequired":true,"uniqueKey":"by_company.items.[INDEX].company_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"by_company.items.[INDEX].company_id","typeLabel":"string | null"},"requests":{"type":"integer","description":"Сколько вызовов ИИ","isRequired":true,"uniqueKey":"by_company.items.[INDEX].requests","typeLabel":"integer"},"cost_tiyn":{"type":"integer","description":"Стоимость в тиынах (1 ₸ = 100 тиын; показывать значение / 100 ₸)","isRequired":true,"uniqueKey":"by_company.items.[INDEX].cost_tiyn","typeLabel":"integer"}},"required":["company_id","requests","cost_tiyn"],"uniqueKey":"by_company.items.[INDEX]","typeLabel":"object"},"description":"По компаниям","isRequired":true,"uniqueKey":"by_company","typeLabel":"object[]"},"month":{"type":"object","properties":{"month":{"type":"string","description":"Текущий месяц по Алматы — его первое число, ГГГГ-ММ-ДД (календарная дата, без пояса — не переводить)","example":"2026-11-01","isRequired":true,"uniqueKey":"month.month","typeLabel":"string"},"spent_tiyn":{"type":"integer","description":"Сколько ключ потратил на ИИ в этом месяце в тиынах (1 ₸ = 100 тиын; показывать значение / 100 ₸)","isRequired":true,"uniqueKey":"month.spent_tiyn","typeLabel":"integer"},"cap_tiyn":{"oneOf":[{"type":"integer","description":"Месячный потолок ключа в тиынах (1 ₸ = 100 тиын; показывать значение / 100 ₸); null — без потолка","isRequired":true,"uniqueKey":"month.cap_tiyn.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Месячный потолок ключа в тиынах (1 ₸ = 100 тиын; показывать значение / 100 ₸); null — без потолка","isRequired":true,"uniqueKey":"month.cap_tiyn.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"month.cap_tiyn","typeLabel":"integer | null"}},"required":["month","spent_tiyn","cap_tiyn"],"description":"Расход ключа за текущий месяц и его потолок — для полосы «потрачено из».","isRequired":true,"uniqueKey":"month","typeLabel":"object"}},"required":["key_id","from","to","totals","by_day","by_model","by_company","month"],"description":"Расход ключа на ИИ за период: итоги, по дням, моделям и компаниям; суммы — в тиынах.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"key_id":"\u003cstring>","from":"2026-10-05T09:30:00.000Z","to":"2026-10-05T09:30:00.000Z","totals":{"requests":123,"input_tokens":123,"output_tokens":123,"cache_write_tokens":123,"cache_read_tokens":123,"cost_tiyn":123},"by_day":[{"day":"2026-11-03","requests":123,"cost_tiyn":123}],"by_model":[{"model":"\u003cstring>","requests":123,"cost_tiyn":123}],"by_company":[{"company_id":"\u003cstring>","requests":123,"cost_tiyn":123}],"month":{"month":"2026-11-01","spent_tiyn":123,"cap_tiyn":123}}}},"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"},"42454cdd-3e28-475d-bfb5-4c422599ef83":{"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"},"0778635c-3d4e-4c68-96fb-95cae94750e9":{"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"},"523311dc-217a-4393-b824-d3aaf3418611":{"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"},"fcbd5ca5-cb2b-4093-ac4f-e0056b8fdb9b":{"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"},"bc1b91c7-a664-47bb-bf94-28e4489edb76":{"description":"Предел (частота, окно тарифа, число объектов) — см. Retry-After и error.resets_at (error.type: limit_error)","content":{"application/json":{"schema":{"type":"object","properties":{"type":{"type":"string","enum":["error"],"description":"Всегда «error»: так тело ошибки отличается от обычного ответа.","isRequired":true,"uniqueKey":"type","typeLabel":"enum\u003cstring>"},"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request_error","authentication_error","payment_required_error","permission_error","not_found_error","conflict_error","gone_error","limit_error","api_error","unavailable_error"],"description":"Вид ошибки — по нему ветвится клиент (не по тексту message). Статус HTTP у вида один, кроме invalid_request_error:\n- `invalid_request_error` (400) — запрос неверен: поле не прошло проверку, неверный формат, действие сейчас недопустимо. Показать message рядом с формой; повтор без исправления не поможет. Обычно 400; 413 и 422 — у кодов, где это сказано в списке code.\n- `authentication_error` (401) — нет входа: сессия закончилась, cookie нет, ключ API неверен, отозван или истёк. Кабинет — отправить на страницу входа; по ключу — проверить ключ (см. code).\n- `payment_required_error` (402) — нужны деньги или решение владельца/админа организации: ждать бесполезно. Показать message и кнопку действия по code (оформить тариф, пополнить баланс, поднять потолок); без code — не оплачено подключение компании.\n- `permission_error` (403) — нельзя: не хватает права или роли, организация заблокирована, вход не тем способом. Показать message (в нём сказано, к кому обратиться); детали — в code и полях рядом.\n- `not_found_error` (404) — нет такого объекта — или он чужой: чужие организации, компании и записи тоже отвечают 404, чтобы не раскрывать, что они есть. Показать «не найдено» и вернуть к списку.\n- `conflict_error` (409) — состояние не позволяет: уже сделано, уже идёт другое действие, версия устарела. Перечитать объект, обновить экран и показать message.\n- `gone_error` (410) — объекта больше нет: разговор не найден или истёк (вопрос в чате, ответ на вопрос ИИ, подсчёт токенов — начать новый разговор), ход потерян при перезапуске сервера, ссылка привязки программы устарела или уже использована (code connector_link_gone). Повторять незачем.\n- `limit_error` (429) — предел: частота запросов, окно тарифа, число объектов или мест. Если есть заголовок Retry-After или resets_at — пройдёт само, показать, когда; иначе нужно освободить место (удалить лишнее) или сменить тариф.\n- `api_error` (500) — сбой на нашей стороне. Показать message и request_id (для поддержки); повторить позже.\n- `unavailable_error` (503) — временно недоступно (внешний сервис, ИИ, настройка сервера). Повторить позже; если повторяется — сообщить request_id в поддержку.","example":"payment_required_error","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Готовый текст для человека по-русски: что случилось, что делать и к кому обратиться. Показывать как есть; не разбирать — формулировки меняются.","example":"Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"code":{"type":"string","description":"Уточнение вида: по нему выбирается действие интерфейса (кнопка «Пополнить», «Войти иначе»…). Нет поля — хватает type и message. Известные коды:\n- `sso_domain_taken` (409) — домен SSO уже подтверждён другой организацией\n- `sso_last_verified_domain` (409) — включён обязательный вход, а это последний подтверждённый домен — сначала выключить обязательный вход\n- `sso_login_required` (400) — включить обязательный вход можно только из сессии, открытой через SSO этой организации\n- `domain_verification_failed` (400) — запись DNS для домена не найдена или не совпала — проверить и повторить\n- `oidc_openid_scope_required` (400) — в scopes сервера входа OIDC нет openid — добавить её: без неё вход через SSO не пройдёт\n- `enterprise_only` (403) — возможность есть только на тарифе Enterprise\n- `groups_limit` (429) — достигнут предел групп в организации\n- `custom_roles_limit` (429) — достигнут предел своих ролей в организации\n- `group_managed_by_directory` (409) — группа из каталога: название и состав меняются только там\n- `group_member_not_in_workspace` (400) — в группу можно добавить только сотрудника этой организации\n- `role_above_ceiling` (400) — роль даёт права выше потолка организации\n- `unknown_model` (400) — такой модели нет — список в available_models\n- `price_required` (400) — админка, тариф целиком: у платного тарифа нужна цена (price)\n- `lago_rejected` (409) — админка, тариф целиком: Lago отказал по существу (4xx, текст Lago в message) — правила не изменены, повтор без правки не поможет\n- `price_mismatch` (400) — админка, тариф целиком: цена не сходится с правилами (место без per_seat, per_seat без цены места, цена у бесплатного)\n- `model_not_allowed` (403) — политика организации не разрешает эту модель, а подходящей разрешённой нет — админу дополнить список\n- `retention_too_short` (400) — срок хранения меньше наименьшего\n- `audit_export_range` (400) — неверный период выгрузки журнала: конец раньше начала или период слишком длинный\n- `compliance_disabled` (403) — адрес для проверок выключен — владелец включает его в настройке\n- `missing_credentials` (401) — нет ни cookie сессии, ни ключа API — войти или передать x-api-key\n- `link_revoked` (401) — вход в Tungo из 1С больше не действует (вышли, отключили на сайте, вошли в той же базе заново, компания или человек заблокированы) — 1С просит войти заново\n- `login_denied` (403) — вход из 1С отклонён на сайте Tungo — 1С показывает отказ\n- `code_expired` (410) — код входа из 1С устарел или уже использован — 1С просит новый код\n- `code_gone` (410) — код входа из 1С уже подтверждён, отклонён или устарел — на сайте подтверждать нечего\n- `invalid_api_key` (401) — ключ API неверен (опечатка или удалён)\n- `key_revoked` (401) — ключ API отозван (при правке ключа — 409 с тем же code: отозванный ключ не меняется)\n- `key_expired` (401) — срок ключа API истёк — сменить секрет (POST …/api-keys/{id}/roll: срок начнётся заново) или выпустить новый (при правке срока — 409 с тем же code: PATCH истёкший ключ не оживляет)\n- `key_disabled` (401) — ключ API выключен — включить может автор ключа или владелец организации (POST …/api-keys/{id}/enable)\n- `key_creator_lost_access` (401) — тот, кто выпустил ключ, больше не владелец/админ организации — ключ недействителен\n- `user_banned` (401) — вход в аккаунт закрыт администратором Tungo — только поддержка Tungo\n- `onboarding_unpaid` (402) — подключение компании к ИИ-бухгалтеру не оплачено (разовый платёж): владельцу/админу организации — «Оплатить» в настройках компании; остальным — сообщить им\n- `onboarding_pending` (402) — оплата подключения компании ещё проходит в банке — ИИ заработает после подтверждения; опрашивать состояние подключения\n- `no_active_plan` (402) — нет действующей подписки (не оформлена, закончилась, первая оплата не прошла или ждёт 3-D Secure). Владельцу/админу — кнопка в настройки оплаты; остальным — «обратитесь к владельцу организации». Что именно случилось — в message\n- `balance_exhausted` (402) — баланс доп. использования кончился. Владельцу/админу — «Пополнить баланс» или включить автопополнение; остальным — сообщить им\n- `workspace_cap_reached` (402) — достигнут месячный потолок доп. использования организации. resets_at — 1-е число следующего месяца, 00:00 по Алматы; раньше — если админ поднимет потолок\n- `report_busy` (429) — сейчас собирается много отчётов команды: повторить через время из Retry-After\n- `report_timeout` (503) — отчёт команды не успел собраться: сократить период или выбрать разбивку по месяцам\n- `company_cap_reached` (402) — достигнут месячный потолок доп. использования компании. Письмо владельцу и админам уже отправлено. resets_at — 1-е число; раньше — если админ поднимет потолок (PUT /v1/workspaces/{ws}/team/company-caps/{co})\n- `member_cap_reached` (402) — достигнут личный месячный потолок доп. использования сотрудника. resets_at — 1-е число; раньше — если админ поднимет его потолок\n- `key_cap_reached` (402) — достигнут месячный потолок расхода ключа API (или остаток меньше оценки одного вызова). resets_at — 1-е число\n- `platform_balance_exhausted` (402) — баланс платформы пуст: вызов по ключу или автоматизация не сделаны. Пополнить — POST /v1/workspaces/{ws}/platform/purchases или автопополнением\n- `platform_cap_reached` (402) — достигнут месячный потолок трат платформы. resets_at — 1-е число следующего месяца, 00:00 по Алматы; раньше — поднять потолок в PUT /v1/workspaces/{ws}/platform/account\n- `platform_disabled` (402) — платформа выключена в организации: вызовы по ключам и автоматизации остановлены. Включить — PUT /v1/workspaces/{ws}/platform/account\n- `free_plan_chat_only` (402) — бесплатный тариф: пачки из кабинета только на платных тарифах. Ключам API и автоматизациям тариф не нужен\n- `free_limit_unavailable` (402) — бесплатный лимит этой учётной записи не положен (проверка регистрации или решение администратора) — оформить тариф\n- `plan_company_limit` (402) — в организации уже столько компаний не в архиве, сколько разрешает тариф (max_companies в GET /v1/plans; limit и plan_code — в ответе): новую не завести и из архива не вернуть. Убрать лишнюю в архив или перейти на тариф больше\n- `effort_not_in_plan` (402) — поле effort в чате на тарифе без выбора усилия (max_effort тарифа null, например бесплатный): ход не начат. Прислать вопрос без effort или оформить платный тариф\n- `model_not_in_plan` (402) — модель сильнее потолка тарифа (plans.model_ceiling): вызов не сделан; более сильные модели — на платных тарифах\n- `missing_permission` (403) — не хватает права в компании (или у ключа API); какого — в поле permission\n- `login_method_not_allowed` (403) — организация пускает к своим данным только после входа другим способом; какими — в allowed_methods. Предложить выйти и войти так\n- `ip_not_allowed` (403) — ключ API не принимает запросы с этого адреса — поправить allowed_ips ключа (PATCH …/api-keys/{id}) или вызывать с разрешённого адреса\n- `key_write_limit` (403) — запись в 1С по ключу API — сверх его пределов (сумма на документ или в день, виды документов) или правило автоодобрения шире пределов ключа; в сообщении — что и на сколько\n- `human_only` (403) — это решение принимает только человек в кабинете Tungo, не ключ API: например, отклонить «не знаем, записан ли» на снимке базы без проверки 1С (confirm_unknown_write)\n- `autonomy_raise_requires_session` (403) — поднять уровень доверия ИИ или потолки компании можно только владельцу или админу организации из кабинета; ключом API — только понизить\n- `id_path_required` (400) — для автоодобрения по хуку задайте хуку id_path — путь к номеру операции в теле события: без него повтор доставки нельзя отличить от новой операции\n- `directbank_rule_exists` (400) — у компании уже есть сценарий с правилом для выписки DirectBank — правило выписки одно на компанию\n- `event_not_found` (404) — события нет в этой компании или оно удалено по сроку хранения — для пробного прогона выберите событие посвежее\n- `event_body_unavailable` (409) — тело события зашифровано, а ключ шифрования на сервере сменился — прогнать сценарий на нём нельзя\n- `scenario_steps_required` (409) — у сценария цепочка шагов, а в замене (PUT) нет ни steps, ни output: передайте steps явно, иначе замена молча убрала бы цепочку\n- `scenario_output_required` (409) — у сценария форма итога, а в замене (PUT) нет ни steps, ни output: передайте output явно (null — снять форму)\n- `automation_queue_full` (429) — у компании слишком много запусков в очереди: повторите позже (событие хука отправитель повторит сам)\n- `restarting` (503) — сервис перезапускается: новый ход не начат — повторите через Retry-After\n- `company_suspended` (403) — работа с компанией приостановлена (решение платформы или оплаты); карточка видна, работать, править и архивировать нельзя (архив — 409 с тем же code)\n- `company_archived` (403) — компания в архиве: карточка видна, работать с ней нельзя. Вернуть — POST /v1/companies/{company_id}/unarchive (владелец компании или владелец/админ организации)\n- `workspace_blocked` (403) — организация заблокирована администратором платформы — только поддержка Tungo\n- `untrusted_origin` (403) — запрос пришёл не со страницы Tungo (защита от подделки запросов) — открыть кабинет по обычному адресу; для /admin/* — только со страниц ADMIN_ORIGINS\n- `cors_not_supported` (403) — вызов API из чужого браузерного кода (CORS) не поддерживается: ключ API — секрет сервера\n- `api_keys_disabled_by_policy` (403) — политика организации запрещает ключи API\n- `owner_role_reserved` (403) — владельца компании назначает, меняет и снимает только владелец или админ организации\n- `role_above_yours` (403) — у выдаваемой (или снимаемой) роли есть права, которых нет у вас; роль — в поле role, лишние права — в permissions\n- `not_key_creator` (403) — менять компании, права, срок и секрет ключа, снимать и поднимать его пределы записи в 1С может только тот, кто его выпустил (ужесточить пределы может любой админ)\n- `transfer_wider_than_target` (403) — передать ключ нельзя: у нового владельца нет нужного права (или доступа) в одной из компаний ключа\n- `invalid_allowed_ips` (400) — в allowed_ips ключа — не IP-адрес и не подсеть CIDR; какая запись — в сообщении\n- `transfer_target_not_admin` (400) — передать ключ можно только владельцу или админу этой организации\n- `platform_model_not_allowed` (403) — модель сильнее потолка платформы (настройка platform.billing): вызов не сделан и ничего не списано\n- `managed_by_sso` (403) — удаление аккаунта: аккаунт ведёт организация (SSO или SCIM) — удаляет её администратор; организации — в workspaces\n- `fresh_session_required` (403) — удаление аккаунта без почты (Telegram): нужен свежий вход — выйти, войти снова и подтвердить\n- `api_key_not_allowed` (403) — действие только из кабинета (сессия), не по ключу API: удаление аккаунта\n- `not_own_key` (403) — по ключу API виден только расход самого этого ключа\n- `webhooks_not_in_plan` (403) — вебхуков нет в тарифе организации\n- `admin_2fa_required` (403) — админ-API: у администратора платформы нет второго фактора или эта сессия не подтверждена кодом приложения-аутентификатора (POST /v1/auth/two-factor/enable, затем verify-totp)\n- `two_factor_required` (403) — отключить второй фактор, показать его секрет или выпустить резервные коды — только после кода из приложения-аутентификатора в этой сессии\n- `webhooks_require_all_companies` (403) — вебхуки — только ключу на все компании организации (при выпуске ключа — 400 с тем же code)\n- `audit_requires_all_companies` (403) — журнал организации — только ключу на все компании организации\n- `policy_blocked` (403) — одобрение: организация не доверяет ИИ записывать такой документ этим способом (поле level — уровень доверия); одобрить по одному или поднять уровень\n- `onec_read_only` (403) — одобрение: у пользователя 1С из подключения нет права записи — дать права в 1С\n- `validation_failed` (400) — тело или параметры запроса не прошли проверку: что не так с каждым полем — в fields (путь, код, текст по-русски). Подсветить поля формы; общий message — над формой\n- `invalid_json` (400) — тело запроса — не JSON-объект\n- `personal_workspace` (400) — в личной организации нет сотрудников, приглашений и политик — нужна организация Team или Enterprise\n- `api_key_required` (400) — адрес только для запроса по ключу API\n- `email_code_unavailable` (400) — удаление аккаунта: у аккаунта нет почты для кода (вход через Telegram) — подтверждать свежим входом, без кода\n- `deletion_code_invalid` (400) — удаление аккаунта: неверный код из письма; сколько попыток осталось — attempts_left\n- `deletion_code_expired` (400) — удаление аккаунта: код истёк, попытки кончились или код не запрашивался — запросить новый (POST /v1/me/deletion/code)\n- `unsafe_url` (400) — адрес вебхука недопустим (внутренняя сеть, не HTTPS)\n- `idempotency_key_invalid` (400) — Idempotency-Key неверного вида\n- `payload_too_large` (413) — тело запроса (или события хука) больше допустимого; пределы — настройки платформы\n- `idempotency_key_reused` (422) — этот Idempotency-Key уже был у другого запроса — для нового действия нужен новый ключ\n- `has_blockers` (422) — одобрение: у предложения есть блокеры — сначала исправить их\n- `batch_too_large` (413) — одобрение пачкой: предложений больше предела (поля limit, requested) — разбить на части\n- `unknown_kind` (400) — настройки писем: такого вида уведомлений нет — взять список из GET /v1/me/notifications\n- `kind_locked` (400) — настройки писем: этот вид (безопасность и аккаунт) выключить нельзя — переключатель неактивен (locked)\n- `onec_rejected` (400) — одобрение: 1С отклонила документ (причина — в message): исправить в 1С или построить предложение заново\n- `proposal_not_found` (404) — предложения с таким id нет в компании\n- `export_link_expired` (404) — ссылка на архив выгрузки истекла или неверна — получить новую: GET /v1/me/export\n- `batch_not_found` (404) — одобрение пачкой: задания с таким batch_id нет (или в нём нет предложений)\n- `idempotency_in_progress` (409) — первый запрос с этим Idempotency-Key ещё выполняется — подождать и повторить, придёт тот же ответ\n- `idempotency_response_not_kept` (409) — запрос с этим Idempotency-Key уже выполнен, но копия ответа не хранится (в нём персональные данные): результат — по ссылке в ответе (dialog_url) или в списке; статус первого ответа — original_status\n- `idempotency_response_too_large` (409) — запрос с этим Idempotency-Key уже выполнен, но ответ слишком большой, чтобы повторить его целиком: результат — в списке; статус первого ответа — original_status\n- `sole_owner` (409) — удаление аккаунта: вы единственный владелец организации с другими участниками (workspaces) — передать владение (POST /v1/workspaces/{ws}/ownership) или удалить организацию\n- `account_deletion_in_progress` (409) — удаление аккаунта: фон уже стирает аккаунт — новый код и подтверждение не принимаются, отменить нельзя\n- `wrong_status` (409) — предложение уже не в том состоянии (поле status — нынешнее): обновить его\n- `wrong_state` (409) — запуск автоматизации уже не в том состоянии (поле state — нынешнее)\n- `dialog_closed` (409) — разговор закрыт (поле reason — почему): начать новый\n- `dialog_id_taken` (409) — разговор с таким dialog_id уже есть — для нового прислать другой id или не присылать его\n- `turn_in_progress` (409) — в разговоре уже идёт ход ИИ (поле turn — его номер): дождаться его конца или остановить\n- `turn_superseded` (409) — читаемый ход уже закончился и идёт следующий (поле turn) — читать его с начала\n- `dialog_changed` (409) — разговор только что изменился в другом окне или на другом сервере Tungo — открыть его заново (GET …/chat/{id}) и повторить\n- `already_answered` (409) — на этот вопрос ИИ уже ответили (поле turn — ход с ответом)\n- `question_stale` (409) — вопрос ИИ устарел (в разговоре уже другой вопрос или его нет) — обновить разговор\n- `dismissed` (409) — вопрос ИИ закрыт без ответа — написать обычное сообщение\n- `job_running` (409) — задание (пачка) ещё идёт — дождаться отчёта; поле batch_id\n- `payload_changed` (409) — одобрение: документ изменился после превью — построить предложение заново\n- `onec_conflict` (409) — одобрение: 1С отказала из-за конфликта (объект занят или изменён) — повторить позже\n- `onec_not_found` (409) — одобрение: в 1С нет объекта, на который ссылается документ — построить предложение заново\n- `plan_limit_reached` (429) — лимит окна тарифа исчерпан; resets_at и Retry-After — когда обновится. Показать время; если в message предложено доп. использование — дать кнопку включить\n- `rate_limited` (429) — слишком часто (по ключу API, уведомления ePay с одного адреса, попытки кода второго фактора) — подождать Retry-After секунд\n- `concurrent_turns_limit` (429) — по ключу API уже идёт предельное число ходов ИИ одновременно — дождаться окончания\n- `api_keys_limit` (429) — в организации предельное число действующих ключей API — отозвать ненужные\n- `webhook_endpoints_limit` (429) — предельное число адресов вебхуков — удалить ненужные\n- `export_too_soon` (429) — выгрузку данных можно запрашивать не чаще раза в сутки: next_request_at и Retry-After — когда можно снова\n- `hook_rate_limited` (429) — приём событий хука: больше automations.hook_events_per_minute в минуту — повторить через Retry-After секунд\n- `lago_unavailable` (503) — админка, тариф целиком: Lago не настроен или не ответил (сеть, 5xx) — правила не изменены, повторить позже\n- `model_price_missing` (503) — у модели ИИ не задана цена — сбой настройки платформы, ничего не списано; повторить позже\n- `data_export_disabled` (503) — выгрузка данных на сервере не настроена (поддержка Tungo)\n- `webhooks_disabled` (503) — вебхуки на сервере не настроены\n- `webhooks_unavailable` (503) — служба доставки вебхуков временно недоступна\n- `model_not_configured` (503) — сервис модели ИИ не настроен на сервере — повторить позже (Retry-After)\n- `write_unknown` (503) — одобрение: исход записи в 1С неизвестен (связь оборвалась) — проверить документ в 1С по метке (поле marker); повтор безопасен (retry_safe); слишком ранний повтор в 1С не пишет — подождать retry_after секунд (Retry-After)\n- `onec_unavailable` (503) — 1С сейчас не отвечает — повторить позже (Retry-After)\n- `onec_check_busy` (503) — проверка связи 1С: сервер сейчас проверяет слишком много подключений — повторить через Retry-After секунд\n- `onec_failed` (503) — записать документ в 1С не удалось по неизвестной причине — повторить позже\n- `journal_unavailable` (503) — журнал решений недоступен — пачка не одобрена, повторить позже\n- `hook_secret_unavailable` (503) — приём событий хука: секрет подписи сейчас не открыть — отправителю повторить доставку позже\n- `secret_box_missing` (503) — на сервере не задан ключ шифрования настроек — секрет подписи хука сохранить нельзя (поддержка Tungo)\n- `not_personal` (409) — перевод в команду: организация уже не личная — обновить экран\n- `subscription_blocks_conversion` (409) — перевод в команду: действует подписка для одного человека — сначала отменить её и дождаться конца периода\n- `subscription_kind_mismatch` (409) — админка: действующая подписка оформлена на другой вид организации — вид не меняется, пока она идёт\n- `enterprise_features_active` (409) — админка: у организации подключены SSO или SCIM — сначала отключить, потом снимать Enterprise\n- `too_many_members_for_personal` (409) — админка: в личной организации один человек — сначала убрать остальных участников\n- `open_debt` (409) — есть неоплаченный счёт — сначала оплатить; в плане удаления этот же код лежит в blockers\n- `active_work` (409) — в организации идут ходы ИИ или автоматизации — дождаться окончания и повторить; в плане удаления этот же код лежит в blockers\n- `deletion_already_scheduled` (409) — удаление организации уже запланировано — показать дату из плана\n- `deletion_purging` (409) — очистка организации уже идёт — отменить её нельзя\n- `workspace_deleting` (409) — админка: организация удаляется по просьбе владельца — блок удаления снимает только отмена удаления\n- `invitation_not_pending` (409) — приглашение принято, отозвано или истекло — письмо не отправить, пригласить заново\n- `last_owner` (409) — это последний владелец организации — сначала передать владение другому участнику\n- `seats_by_contract` (409) — места Enterprise — по договору, карта и докупка не работают: обратиться к менеджеру\n- `no_subscription` (409) — нет действующей подписки — сначала оформить тариф\n- `not_per_seat` (409) — этот тариф не считает оплату за место — докупка не нужна, предел мест показан в ответе GET …/seats\n- `subscription_ended` (409) — возобновление: период отменённой подписки уже закончился — ничего не списано, оформить тариф заново (повторный PUT — обычное оформление)\n- `subscription_busy` (409) — подписка уже меняется другим запросом (отмена или возобновление) — обновить экран через несколько секунд\n- `subscription_ending` (409) — подписка отменена и закончится в конце периода — места не докупаются и не сокращаются\n- `seats_unpaid_debt` (409) — подписка просрочена — сначала оплатить счёт; участники остаются, новых приглашать нельзя\n- `idempotency_conflict` (409) — докупка: этот ключ уже использован с другим числом мест — для новой покупки нужен новый ключ\n- `seat_quote_changed` (409) — докупка: сумма изменилась (другой день или новая цена), деньги не списаны — показать новую сумму из поля и спросить снова\n- `no_paid_seats` (409) — оплаченных мест ещё нет — сокращать нечего\n- `seats_below_occupied` (409) — занято больше мест, чем просите оставить — сначала убрать участников или отозвать приглашения\n- `not_enterprise` (409) — админка: места по договору есть только у Enterprise — сначала поставить вид\n- `per_seat_plan_change` (409) — смена тарифа с оплатой за место не делается сразу: Lago взял бы плату за места дважды. Отменить и оформить новый с конца периода\n- `confirm_name_mismatch` (400) — удаление организации: название введено неверно — ввести точно как в плане удаления\n- `below_min_seats` (400) — на этом тарифе мест меньше нельзя: минимум — min_seats тарифа\n- `seats_over_max` (400) — мест больше предела одной организации (team.limits.max_seats) — обратиться в поддержку\n- `seats_above_paid` (400) — PUT …/seats только сокращает; новые места — через POST …/seats с оплатой\n- `onec_check_running` (429) — проверка связи 1С уже идёт у этой компании, у вас (другая компания) или у двух других компаний организации — дождаться её итога и повторить (Retry-After)\n- `invitation_resend_too_soon` (429) — письмо с приглашением уже отправлено только что — подождать Retry-After секунд\n- `seats_exhausted` (429) — свободные места закончились: докупите места или освободите их, отозвав приглашение\n- `seat_price_unknown` (503) — цена места сейчас неизвестна (тариф не прочитан или настроен неверно), деньги не списаны — повторить позже\n- `otp_mail_failed` (503) — письмо с кодом входа не отправлено: попробуйте позже\n- `seat_period_unknown` (503) — не удалось сверить период подписки с биллингом: деньги не списаны, попробуйте позже\n\nНезнакомый code — вести себя по type.","example":"balance_exhausted","uniqueKey":"error.code","typeLabel":"string"},"permission":{"type":"string","description":"При code = missing_permission — какого права не хватает: права в компании (company.read, company.manage, company.members.manage, onec.connect, proposals.create, proposals.approve, chat.use, audit.read, automations.manage) или права только ключа API (automations.read, webhooks.manage). Показать «нужно право …» и предложить попросить админа (или выпустить ключ с этим правом).","example":"proposals.approve","uniqueKey":"error.permission","typeLabel":"string"},"resets_at":{"type":"string","format":"date-time","description":"Когда ограничение снимется само — ISO 8601, UTC. Есть у plan_limit_reached (конец окна тарифа) и у месячных потолков (workspace_cap_reached, company_cap_reached, member_cap_reached, key_cap_reached, platform_cap_reached — 1-е число, 00:00 по Алматы). Показать в местном времени: «Лимит обновится в 14:30». Нет поля — само не пройдёт.","example":"2026-11-01T19:00:00.000Z","uniqueKey":"error.resets_at","typeLabel":"string\u003cdate-time>"},"allowed_methods":{"type":"array","items":{"type":"string","enum":["email_otp","google","apple","telegram","sso"],"uniqueKey":"error.allowed_methods.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"При code = login_method_not_allowed — какими способами входа организация пускает к своим данным: email_otp — код из почты, google, apple, telegram, sso — SSO организации. Предложить выйти и войти одним из них.","uniqueKey":"error.allowed_methods","typeLabel":"enum\u003cstring>[]"},"role":{"type":"string","description":"При code = role_above_yours — ключ роли в компании, которую нельзя выдать или снять (например chief_accountant).","uniqueKey":"error.role","typeLabel":"string"},"permissions":{"type":"array","items":{"type":"string","uniqueKey":"error.permissions.items.[INDEX]","typeLabel":"string"},"description":"При code = role_above_yours — права этой роли, которых нет у того, кто выдаёт. Показать списком: «у роли есть права, которых нет у вас: …».","uniqueKey":"error.permissions","typeLabel":"string[]"},"fields":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string","description":"Путь к полю через точку, как в теле запроса или имени параметра: `name`, `lines.0.amount`. Пустая строка — всё тело (не объект, лишние поля).","example":"bin","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].path","typeLabel":"string"},"code":{"type":"string","enum":["invalid_type","too_small","too_big","invalid_format","invalid_value","not_multiple_of","unrecognized_keys","invalid_union","invalid_key","invalid_element","custom"],"description":"Что не так: invalid_type — не тот тип или поле не передано; too_small / too_big — короче/меньше или длиннее/больше допустимого; invalid_format — неверный вид (почта, дата, шаблон); invalid_value — значения нет среди допустимых; not_multiple_of — не кратно; unrecognized_keys — лишние поля; invalid_union — не подходит ни один вид; invalid_key / invalid_element — неверный ключ или элемент; custom — своё правило ручки","example":"invalid_format","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Текст для человека по-русски — показать под полем","example":"БИН/ИИН — 12 цифр","isRequired":true,"uniqueKey":"error.fields.items.[INDEX].message","typeLabel":"string"}},"required":["path","code","message"],"description":"Ошибка одного поля запроса","uniqueKey":"error.fields.items.[INDEX]","typeLabel":"object"},"description":"При code = validation_failed — ошибки по полям, в порядке проверки; у одного поля может быть несколько.","uniqueKey":"error.fields","typeLabel":"object[]"}},"required":["type","message"],"additionalProperties":{"oneOf":[{}],"uniqueKey":"error.additionalProperties","typeLabel":"any"},"description":"Что пошло не так. Все 503 — с заголовком Retry-After (через сколько секунд повторить). Кроме описанных, у отдельных ручек бывают свои поля рядом с code (например status у wrong_status, state у wrong_state, reason у dialog_closed) — они описаны у этих ручек.","isRequired":true,"uniqueKey":"error","typeLabel":"object"},"request_id":{"oneOf":[{"type":"string","description":"Номер запроса (тот же, что в заголовке x-request-id). Показывать мелко рядом с ошибкой с кнопкой «скопировать»: по нему поддержка находит запрос в журнале. null — номер не успел появиться (очень ранний отказ).","example":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f","isRequired":true,"uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Номер запроса (тот же, что в заголовке x-request-id). Показывать мелко рядом с ошибкой с кнопкой «скопировать»: по нему поддержка находит запрос в журнале. null — номер не успел появиться (очень ранний отказ).","example":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f","isRequired":true,"uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"request_id","typeLabel":"string | null"}},"required":["type","error","request_id"],"description":"Тело любой ошибки API (статусы 4xx и 5xx): `{\"type\":\"error\",\"error\":{\"type\":\"…\",\"code\":\"…\",\"message\":\"…\"},\"request_id\":\"…\"}`. Интерфейс ветвится по error.type и error.code, человеку показывает error.message и request_id.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"type":"error","error":{"type":"payment_required_error","message":"Баланс доп. использования закончился — пополнить его или включить автопополнение могут владелец и админ workspace.","code":"balance_exhausted","permission":"proposals.approve","resets_at":"2026-11-01T19:00:00.000Z","allowed_methods":["email_otp"],"role":"\u003cstring>","permissions":["\u003cstring>"],"fields":[{"path":"bin","code":"invalid_format","message":"БИН/ИИН — 12 цифр"}]},"request_id":"req_4f9c2a7e1b3d4c5a8e6f7a9b0c1d2e3f"}}},"exampleType":"generated"}},"headers":{"x-request-id":{"description":"Номер запроса (тот же, что request_id в теле ошибки) — назвать в обращении в поддержку. Его всегда создаёт сервер: присланный клиентом x-request-id номером не становится","schema":{"type":"string","example":"req_3f2a9c0d1e4b4c5d8e7f6a5b4c3d2e1f"}},"x-ratelimit-limit":{"description":"Только при входе по ключу API: сколько запросов можно в текущем окне — самый тесный предел из ключа и организации","schema":{"type":"integer"}},"x-ratelimit-remaining":{"description":"Только при входе по ключу API: сколько запросов осталось по этому пределу в текущем окне","schema":{"type":"integer"}},"x-ratelimit-reset":{"description":"Только при входе по ключу API: секунд до нового окна этого предела","schema":{"type":"integer"}},"Retry-After":{"description":"Через сколько секунд повторить запрос (отказ пройдёт сам); нет — ждать бесполезно, смотреть error.code","schema":{"type":"integer","minimum":1}}},"exampleType":"generated"}},"security":{"22e286a4-f8b7-4f2a-8d00-d2ff81747a06":{"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"}},"fdb04eb7-3520-4c65-9728-8d074cf9528f":{"apiKey":{"type":"apiKey","in":"header","name":"x-api-key","description":"Ключ API организации: `x-api-key: tg_…`. Для серверных интеграций, не для кабинета: ключ — секрет, из браузера его не слать (CORS закрыт). Какие адреса пускают по ключу — x-api-key-access у операции.","scopes":[],"schemeName":"apiKey"}},"2e95dd53-881e-4929-b1b0-c95ba863fd2d":{"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/ключи-api/расход-ключа-за-период","matchLevel":0},"Қазақша":{"href":"/api-reference/ключи-api/расход-ключа-за-период","matchLevel":0}},"firstHrefInLanguage":{"ru":{"href":"/api-reference/ключи-api/расход-ключа-за-период","matchLevel":0}}},"lastModified":"2026-11-11T22:37:20.362Z","originalFileLocation":"api-reference/ключи-api/расход-ключа-за-период.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=\"По умолчанию — с начала текущего месяца по Алматы до сейчас; период не больше 400 дней. По ключу API — только расход самого этого ключа (:id — его id). Доступ: Владелец или админ workspace; по ключу — свой. Доступно по ключу 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=\"По умолчанию — с начала текущего месяца по Алматы до сейчас; период не больше 400 дней. По ключу API — только расход самого этого ключа (:id — его id). Доступ: Владелец или админ workspace; по ключу — свой. Доступно по ключу 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/ключи-api/расход-ключа-за-период\">\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%9A%D0%BB%D1%8E%D1%87%D0%B8+API\u0026amp;title=%D0%A0%D0%B0%D1%81%D1%85%D0%BE%D0%B4+%D0%BA%D0%BB%D1%8E%D1%87%D0%B0+%D0%B7%D0%B0+%D0%BF%D0%B5%D1%80%D0%B8%D0%BE%D0%B4\u0026amp;description=%D0%9F%D0%BE+%D1%83%D0%BC%D0%BE%D0%BB%D1%87%D0%B0%D0%BD%D0%B8%D1%8E+%E2%80%94+%D1%81+%D0%BD%D0%B0%D1%87%D0%B0%D0%BB%D0%B0+%D1%82%D0%B5%D0%BA%D1%83%D1%89%D0%B5%D0%B3%D0%BE+%D0%BC%D0%B5%D1%81%D1%8F%D1%86%D0%B0+%D0%BF%D0%BE+%D0%90%D0%BB%D0%BC%D0%B0%D1%82%D1%8B+%D0%B4%D0%BE+%D1%81%D0%B5%D0%B9%D1%87%D0%B0%D1%81%3B+%D0%BF%D0%B5%D1%80%D0%B8%D0%BE%D0%B4+%D0%BD%D0%B5+%D0%B1%D0%BE%D0%BB%D1%8C%D1%88%D0%B5+400+%D0%B4%D0%BD%D0%B5%D0%B9.+%D0%9F%D0%BE+%D0%BA%D0%BB%D1%8E%D1%87%D1%83+API+%E2%80%94+%D1%82%D0%BE%D0%BB%D1%8C%D0%BA%D0%BE+%D1%80%D0%B0%D1%81%D1%85%D0%BE%D0%B4+%D1%81%D0%B0%D0%BC%D0%BE%D0%B3%D0%BE+%D1%8D%D1%82%D0%BE%D0%B3%D0%BE+%D0%BA%D0%BB%D1%8E%D1%87%D0%B0+%28%3Aid+%E2%80%94+%D0%B5%D0%B3%D0%BE+id%29.%0A%0A%D0%94%D0%BE%D1%81%D1%82%D1%83%D0%BF%3A\u0026amp;theme=dfce91326f5ce74a967be081\u0026amp;signature=caa335d568485c38d65a5ce4969b28bbcb527096d60b9a1c239f14c2eb20438b\">\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=\"По умолчанию — с начала текущего месяца по Алматы до сейчас; период не больше 400 дней. По ключу API — только расход самого этого ключа (:id — его id). Доступ: Владелец или админ workspace; по ключу — свой. Доступно по ключу API.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://tungo-ai.mintlify.site/_mintlify/api/og/v2?division=%D0%9A%D0%BB%D1%8E%D1%87%D0%B8+API\u0026amp;title=%D0%A0%D0%B0%D1%81%D1%85%D0%BE%D0%B4+%D0%BA%D0%BB%D1%8E%D1%87%D0%B0+%D0%B7%D0%B0+%D0%BF%D0%B5%D1%80%D0%B8%D0%BE%D0%B4\u0026amp;description=%D0%9F%D0%BE+%D1%83%D0%BC%D0%BE%D0%BB%D1%87%D0%B0%D0%BD%D0%B8%D1%8E+%E2%80%94+%D1%81+%D0%BD%D0%B0%D1%87%D0%B0%D0%BB%D0%B0+%D1%82%D0%B5%D0%BA%D1%83%D1%89%D0%B5%D0%B3%D0%BE+%D0%BC%D0%B5%D1%81%D1%8F%D1%86%D0%B0+%D0%BF%D0%BE+%D0%90%D0%BB%D0%BC%D0%B0%D1%82%D1%8B+%D0%B4%D0%BE+%D1%81%D0%B5%D0%B9%D1%87%D0%B0%D1%81%3B+%D0%BF%D0%B5%D1%80%D0%B8%D0%BE%D0%B4+%D0%BD%D0%B5+%D0%B1%D0%BE%D0%BB%D1%8C%D1%88%D0%B5+400+%D0%B4%D0%BD%D0%B5%D0%B9.+%D0%9F%D0%BE+%D0%BA%D0%BB%D1%8E%D1%87%D1%83+API+%E2%80%94+%D1%82%D0%BE%D0%BB%D1%8C%D0%BA%D0%BE+%D1%80%D0%B0%D1%81%D1%85%D0%BE%D0%B4+%D1%81%D0%B0%D0%BC%D0%BE%D0%B3%D0%BE+%D1%8D%D1%82%D0%BE%D0%B3%D0%BE+%D0%BA%D0%BB%D1%8E%D1%87%D0%B0+%28%3Aid+%E2%80%94+%D0%B5%D0%B3%D0%BE+id%29.%0A%0A%D0%94%D0%BE%D1%81%D1%82%D1%83%D0%BF%3A\u0026amp;theme=dfce91326f5ce74a967be081\u0026amp;signature=caa335d568485c38d65a5ce4969b28bbcb527096d60b9a1c239f14c2eb20438b\">\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/ключи-api/расход-ключа-за-период\">\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%BA%D0%BB%D1%8E%D1%87%D0%B8-api/%D1%80%D0%B0%D1%81%D1%85%D0%BE%D0%B4-%D0%BA%D0%BB%D1%8E%D1%87%D0%B0-%D0%B7%D0%B0-%D0%BF%D0%B5%D1%80%D0%B8%D0%BE%D0%B4.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%BA%D0%BB%D1%8E%D1%87%D0%B8-api/%D1%80%D0%B0%D1%81%D1%85%D0%BE%D0%B4-%D0%BA%D0%BB%D1%8E%D1%87%D0%B0-%D0%B7%D0%B0-%D0%BF%D0%B5%D1%80%D0%B8%D0%BE%D0%B4#webpage\",\"url\":\"https://tungo-ai.mintlify.app/api-reference/%D0%BA%D0%BB%D1%8E%D1%87%D0%B8-api/%D1%80%D0%B0%D1%81%D1%85%D0%BE%D0%B4-%D0%BA%D0%BB%D1%8E%D1%87%D0%B0-%D0%B7%D0%B0-%D0%BF%D0%B5%D1%80%D0%B8%D0%BE%D0%B4\",\"name\":\"Расход ключа за период\",\"description\":\"По умолчанию — с начала текущего месяца по Алматы до сейчас; период не больше 400 дней. По ключу API — только расход самого этого ключа (:id — его id). Доступ: Владелец или админ workspace; по ключу — свой. Доступно по ключу API.\",\"dateModified\":\"2026-11-11T22:37:20.362Z\",\"isPartOf\":{\"@id\":\"https://tungo-ai.mintlify.app#website\"},\"breadcrumb\":{\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%BA%D0%BB%D1%8E%D1%87%D0%B8-api/%D1%80%D0%B0%D1%81%D1%85%D0%BE%D0%B4-%D0%BA%D0%BB%D1%8E%D1%87%D0%B0-%D0%B7%D0%B0-%D0%BF%D0%B5%D1%80%D0%B8%D0%BE%D0%B4#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%BA%D0%BB%D1%8E%D1%87%D0%B8-api/%D1%80%D0%B0%D1%81%D1%85%D0%BE%D0%B4-%D0%BA%D0%BB%D1%8E%D1%87%D0%B0-%D0%B7%D0%B0-%D0%BF%D0%B5%D1%80%D0%B8%D0%BE%D0%B4#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\":\"Ключи API\",\"item\":\"https://tungo-ai.mintlify.app/api-reference/%D0%BA%D0%BB%D1%8E%D1%87%D0%B8-api/%D0%BA%D0%BE%D0%BC%D1%83-%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE-%D0%BF%D0%B5%D1%80%D0%B5%D0%B4%D0%B0%D1%82%D1%8C-%D0%BA%D0%BB%D1%8E%D1%87\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Расход ключа за период\",\"item\":\"https://tungo-ai.mintlify.app/api-reference/%D0%BA%D0%BB%D1%8E%D1%87%D0%B8-api/%D1%80%D0%B0%D1%81%D1%85%D0%BE%D0%B4-%D0%BA%D0%BB%D1%8E%D1%87%D0%B0-%D0%B7%D0%B0-%D0%BF%D0%B5%D1%80%D0%B8%D0%BE%D0%B4\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%BA%D0%BB%D1%8E%D1%87%D0%B8-api/%D1%80%D0%B0%D1%81%D1%85%D0%BE%D0%B4-%D0%BA%D0%BB%D1%8E%D1%87%D0%B0-%D0%B7%D0%B0-%D0%BF%D0%B5%D1%80%D0%B8%D0%BE%D0%B4#apireference\",\"headline\":\"Расход ключа за период\",\"name\":\"Расход ключа за период\",\"description\":\"По умолчанию — с начала текущего месяца по Алматы до сейчас; период не больше 400 дней. По ключу API — только расход самого этого ключа (:id — его id). Доступ: Владелец или админ workspace; по ключу — свой. Доступно по ключу API.\",\"url\":\"https://tungo-ai.mintlify.app/api-reference/%D0%BA%D0%BB%D1%8E%D1%87%D0%B8-api/%D1%80%D0%B0%D1%81%D1%85%D0%BE%D0%B4-%D0%BA%D0%BB%D1%8E%D1%87%D0%B0-%D0%B7%D0%B0-%D0%BF%D0%B5%D1%80%D0%B8%D0%BE%D0%B4\",\"mainEntityOfPage\":{\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%BA%D0%BB%D1%8E%D1%87%D0%B8-api/%D1%80%D0%B0%D1%81%D1%85%D0%BE%D0%B4-%D0%BA%D0%BB%D1%8E%D1%87%D0%B0-%D0%B7%D0%B0-%D0%BF%D0%B5%D1%80%D0%B8%D0%BE%D0%B4#webpage\"},\"dateModified\":\"2026-11-11T22:37:20.362Z\",\"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%BA%D0%BB%D1%8E%D1%87%D0%B8-api/%D1%80%D0%B0%D1%81%D1%85%D0%BE%D0%B4-%D0%BA%D0%BB%D1%8E%D1%87%D0%B0-%D0%B7%D0%B0-%D0%BF%D0%B5%D1%80%D0%B8%D0%BE%D0%B4.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":"Включить выключенный ключ","description":"Только автор ключа или владелец организации; остальным — 403 `not_key_creator`. Срок ключа не продлевается. Повторное включение — тот же ответ. У отозванного — 409 `key_revoked`. Пишется в журнал (api_key.enabled).\n\nДоступ: Владелец или админ workspace.\n\nТолько по сессии кабинета, не по ключу API.","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":"Ключ, по которому пришёл запрос (кто я)","description":"Только по ключу API: его организация, компании, права, срок, месячный потолок и расход за текущий месяц, частота запросов. Публичные id компаний и организации — те, что принимают адреса API.\n\nДоступно по ключу API.","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/api-key","href":"/api-reference/ключи-api/ключ-по-которому-пришёл-запрос-кто-я"},{"title":"Расход ключа, по которому пришёл запрос","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/api-key/usage","href":"/api-reference/ключи-api/расход-ключа-по-которому-пришёл-запрос"}]},{"group":"Вебхуки","pages":[{"title":"Какие события бывают","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/event-types","href":"/api-reference/вебхуки/какие-события-бывают"},{"title":"Счётчик событий месяца","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/usage","href":"/api-reference/вебхуки/счётчик-событий-месяца"},{"title":"Адреса вебхуков","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints","href":"/api-reference/вебхуки/адреса-вебхуков"},{"title":"Завести адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints","href":"/api-reference/вебхуки/завести-адрес"},{"title":"Адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/адрес"},{"title":"Удалить адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/удалить-адрес"},{"title":"Поменять адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/поменять-адрес"},{"title":"Секрет подписи адреса","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}/secret","href":"/api-reference/вебхуки/секрет-подписи-адреса"},{"title":"Новый секрет подписи","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints/{id}/secret/rotate","href":"/api-reference/вебхуки/новый-секрет-подписи"},{"title":"Пробное событие на адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints/{id}/test","href":"/api-reference/вебхуки/пробное-событие-на-адрес"},{"title":"Попытки доставки на адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}/attempts","href":"/api-reference/вебхуки/попытки-доставки-на-адрес"},{"title":"Отправленные события","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/messages","href":"/api-reference/вебхуки/отправленные-события"},{"title":"Попытки доставки события","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/messages/{id}/attempts","href":"/api-reference/вебхуки/попытки-доставки-события"},{"title":"Отправить событие на адрес ещё раз","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/messages/{id}/resend","href":"/api-reference/вебхуки/отправить-событие-на-адрес-ещё-раз"},{"title":"Proposalawaiting approval","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.awaiting_approval","href":"/api-reference/вебхуки/proposalawaiting_approval"},{"title":"Proposalwritten","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.written","href":"/api-reference/вебхуки/proposalwritten"},{"title":"Proposalfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.failed","href":"/api-reference/вебхуки/proposalfailed"},{"title":"Paymentsucceeded","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook payment.succeeded","href":"/api-reference/вебхуки/paymentsucceeded"},{"title":"Paymentfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook payment.failed","href":"/api-reference/вебхуки/paymentfailed"},{"title":"Automationruncompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.completed","href":"/api-reference/вебхуки/automationruncompleted"},{"title":"Automationrunfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.failed","href":"/api-reference/вебхуки/automationrunfailed"},{"title":"Esfincomingreceived","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook esf.incoming.received","href":"/api-reference/вебхуки/esfincomingreceived"},{"title":"Bank statementreceived","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook bank_statement.received","href":"/api-reference/вебхуки/bank_statementreceived"},{"title":"Proposalrejected","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.rejected","href":"/api-reference/вебхуки/proposalrejected"},{"title":"Batchcompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook batch.completed","href":"/api-reference/вебхуки/batchcompleted"},{"title":"Batchfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook batch.failed","href":"/api-reference/вебхуки/batchfailed"},{"title":"Automationwrite unknown","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.write_unknown","href":"/api-reference/вебхуки/automationwrite_unknown"},{"title":"Automationrunnotice","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.notice","href":"/api-reference/вебхуки/automationrunnotice"},{"title":"Chatturncompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook chat.turn.completed","href":"/api-reference/вебхуки/chatturncompleted"},{"title":"Platformbalance low","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.balance_low","href":"/api-reference/вебхуки/platformbalance_low"},{"title":"Platformbalance exhausted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.balance_exhausted","href":"/api-reference/вебхуки/platformbalance_exhausted"},{"title":"Platformcap threshold reached","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.cap_threshold_reached","href":"/api-reference/вебхуки/platformcap_threshold_reached"},{"title":"Onecconnectionchanged","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook onec.connection.changed","href":"/api-reference/вебхуки/onecconnectionchanged"},{"title":"Api keyexpiring","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook api_key.expiring","href":"/api-reference/вебхуки/api_keyexpiring"},{"title":"Api keycap reached","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook api_key.cap_reached","href":"/api-reference/вебхуки/api_keycap_reached"},{"title":"Ping","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook ping","href":"/api-reference/вебхуки/ping"}]},{"group":"ИИ-бухгалтер: чат","pages":[{"title":"Свои разговоры в компании, свежие сверху","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/chat","href":"/api-reference/ии-бухгалтер:-чат/свои-разговоры-в-компании-свежие-сверху"},{"title":"Сообщение ИИ-бухгалтеру (ход потоком SSE)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat","href":"/api-reference/ии-бухгалтер:-чат/сообщение-ии-бухгалтеру-ход-потоком-sse"},{"title":"Разговор целиком","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/chat/{id}","href":"/api-reference/ии-бухгалтер:-чат/разговор-целиком"},{"title":"Стереть свой разговор","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/companies/{co}/chat/{id}","href":"/api-reference/ии-бухгалтер:-чат/стереть-свой-разговор"},{"title":"Переименовать свой разговор","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/companies/{co}/chat/{id}","href":"/api-reference/ии-бухгалтер:-чат/переименовать-свой-разговор"},{"title":"Ответ на уточняющий вопрос ИИ (событие choice)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat/{id}/answer","href":"/api-reference/ии-бухгалтер:-чат/ответ-на-уточняющий-вопрос-ии-событие-choice"},{"title":"Переподключиться к идущему ходу","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/chat/{id}/events","href":"/api-reference/ии-бухгалтер:-чат/переподключиться-к-идущему-ходу"},{"title":"Сколько токенов и денег займёт вопрос, не задавая его","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat/count-tokens","href":"/api-reference/ии-бухгалтер:-чат/сколько-токенов-и-денег-займёт-вопрос-не-задавая-его"},{"title":"Остановить ход или закрыть открытый вопрос","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat/{id}/stop","href":"/api-reference/ии-бухгалтер:-чат/остановить-ход-или-закрыть-открытый-вопрос"}]},{"group":"ИИ-бухгалтер: предложения","pages":[{"title":"Очередь предложений","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/proposals","href":"/api-reference/ии-бухгалтер:-предложения/очередь-предложений"},{"title":"Карточка предложения","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/proposals/{id}","href":"/api-reference/ии-бухгалтер:-предложения/карточка-предложения"},{"title":"Одобрить и записать в 1С","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/proposals/{id}/approve","href":"/api-reference/ии-бухгалтер:-предложения/одобрить-и-записать-в-1с"},{"title":"Отклонить с причиной","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/proposals/{id}/reject","href":"/api-reference/ии-бухгалтер:-предложения/отклонить-с-причиной"},{"title":"Одобрить пачку предложений","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/proposals/approve-batch","href":"/api-reference/ии-бухгалтер:-предложения/одобрить-пачку-предложений"}]},{"group":"ИИ-бухгалтер: лента","pages":[{"title":"Лента компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/feed","href":"/api-reference/ии-бухгалтер:-лента/лента-компании"},{"title":"Новые события ленты потоком SSE","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/feed/events","href":"/api-reference/ии-бухгалтер:-лента/новые-события-ленты-потоком-sse"}]},{"group":"ИИ-бухгалтер: пачки","pages":[{"title":"Разобрать банковскую выписку в предложения","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/batch/bank-statement","href":"/api-reference/ии-бухгалтер:-пачки/разобрать-банковскую-выписку-в-предложения"},{"title":"Поступления по непривязанным входящим ЭСФ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/batch/esf-purchases","href":"/api-reference/ии-бухгалтер:-пачки/поступления-по-непривязанным-входящим-эсф"},{"title":"Свои задания и выписки дня, свежие сверху","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch","href":"/api-reference/ии-бухгалтер:-пачки/свои-задания-и-выписки-дня-свежие-сверху"},{"title":"Задание с отчётом","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch/{id}","href":"/api-reference/ии-бухгалтер:-пачки/задание-с-отчётом"},{"title":"Сводка задания для «Одобрить и отправить в 1С»","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch/{id}/summary","href":"/api-reference/ии-бухгалтер:-пачки/сводка-задания-для-«одобрить-и-отправить-в-1с»"},{"title":"Прогресс задания потоком SSE","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch/{id}/events","href":"/api-reference/ии-бухгалтер:-пачки/прогресс-задания-потоком-sse"},{"title":"Остановить задание","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/batch/{id}/stop","href":"/api-reference/ии-бухгалтер:-пачки/остановить-задание"},{"title":"Выписки DirectBank по дням","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/statements","href":"/api-reference/ии-бухгалтер:-пачки/выписки-directbank-по-дням"},{"title":"Опросить DirectBank сейчас","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/statements/directbank","href":"/api-reference/ии-бухгалтер:-пачки/опросить-directbank-сейчас"}]},{"group":"ЭСФ","pages":[{"title":"Реализации без действующего ЭСФ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/esf/outgoing","href":"/api-reference/эсф/реализации-без-действующего-эсф"},{"title":"Входящие ЭСФ и поступления в 1С","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/esf/incoming","href":"/api-reference/эсф/входящие-эсф-и-поступления-в-1с"}]},{"group":"Формы","pages":[{"title":"Налоговые формы года","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms","href":"/api-reference/формы/налоговые-формы-года"},{"title":"Посчитать форму","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/build","href":"/api-reference/формы/посчитать-форму"},{"title":"Файл формы для КНП ИСНА","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/isna","href":"/api-reference/формы/файл-формы-для-кнп-исна"},{"title":"Примечания к финотчётности","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/notes","href":"/api-reference/формы/примечания-к-финотчётности"},{"title":"Чего не хватает в 1С","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/data-gaps","href":"/api-reference/формы/чего-не-хватает-в-1с"}]},{"group":"1С","pages":[{"title":"Состояние подключения к 1С (без настроек и секретов)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/onec/status","href":"/api-reference/1с/состояние-подключения-к-1с-без-настроек-и-секретов"}]},{"group":"Автоматизации","pages":[{"title":"Принять событие по адресу хука","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /hooks/{token}","href":"/api-reference/автоматизации/принять-событие-по-адресу-хука"},{"title":"Хуки компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/hooks","href":"/api-reference/автоматизации/хуки-компании"},{"title":"Завести хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/hooks","href":"/api-reference/автоматизации/завести-хук"},{"title":"Хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/hooks/{id}","href":"/api-reference/автоматизации/хук"},{"title":"Удалить хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/companies/{co}/automations/hooks/{id}","href":"/api-reference/автоматизации/удалить-хук"},{"title":"Изменить хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/companies/{co}/automations/hooks/{id}","href":"/api-reference/автоматизации/изменить-хук"},{"title":"Новый токен хука","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/hooks/{id}/rotate","href":"/api-reference/автоматизации/новый-токен-хука"},{"title":"Пробное событие хука","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/hooks/{id}/test","href":"/api-reference/автоматизации/пробное-событие-хука"},{"title":"Сценарии компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/scenarios","href":"/api-reference/автоматизации/сценарии-компании"},{"title":"Завести сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/scenarios","href":"/api-reference/автоматизации/завести-сценарий"},{"title":"Сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/сценарий"},{"title":"Заменить сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json put /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/заменить-сценарий"},{"title":"Удалить сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/удалить-сценарий"},{"title":"Включить или выключить сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/включить-или-выключить-сценарий"},{"title":"Запустить сценарий вручную или на прошлом событии","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":"Включить выключенный ключ","description":"Только автор ключа или владелец организации; остальным — 403 `not_key_creator`. Срок ключа не продлевается. Повторное включение — тот же ответ. У отозванного — 409 `key_revoked`. Пишется в журнал (api_key.enabled).\n\nДоступ: Владелец или админ workspace.\n\nТолько по сессии кабинета, не по ключу API.","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":"Ключ, по которому пришёл запрос (кто я)","description":"Только по ключу API: его организация, компании, права, срок, месячный потолок и расход за текущий месяц, частота запросов. Публичные id компаний и организации — те, что принимают адреса API.\n\nДоступно по ключу API.","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/api-key","href":"/api-reference/ключи-api/ключ-по-которому-пришёл-запрос-кто-я"},{"title":"Расход ключа, по которому пришёл запрос","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/api-key/usage","href":"/api-reference/ключи-api/расход-ключа-по-которому-пришёл-запрос"}]},{"group":"Вебхуки","pages":[{"title":"Какие события бывают","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/event-types","href":"/api-reference/вебхуки/какие-события-бывают"},{"title":"Счётчик событий месяца","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/usage","href":"/api-reference/вебхуки/счётчик-событий-месяца"},{"title":"Адреса вебхуков","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints","href":"/api-reference/вебхуки/адреса-вебхуков"},{"title":"Завести адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints","href":"/api-reference/вебхуки/завести-адрес"},{"title":"Адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/адрес"},{"title":"Удалить адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/удалить-адрес"},{"title":"Поменять адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/поменять-адрес"},{"title":"Секрет подписи адреса","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}/secret","href":"/api-reference/вебхуки/секрет-подписи-адреса"},{"title":"Новый секрет подписи","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints/{id}/secret/rotate","href":"/api-reference/вебхуки/новый-секрет-подписи"},{"title":"Пробное событие на адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints/{id}/test","href":"/api-reference/вебхуки/пробное-событие-на-адрес"},{"title":"Попытки доставки на адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}/attempts","href":"/api-reference/вебхуки/попытки-доставки-на-адрес"},{"title":"Отправленные события","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/messages","href":"/api-reference/вебхуки/отправленные-события"},{"title":"Попытки доставки события","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/messages/{id}/attempts","href":"/api-reference/вебхуки/попытки-доставки-события"},{"title":"Отправить событие на адрес ещё раз","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/messages/{id}/resend","href":"/api-reference/вебхуки/отправить-событие-на-адрес-ещё-раз"},{"title":"Proposalawaiting approval","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.awaiting_approval","href":"/api-reference/вебхуки/proposalawaiting_approval"},{"title":"Proposalwritten","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.written","href":"/api-reference/вебхуки/proposalwritten"},{"title":"Proposalfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.failed","href":"/api-reference/вебхуки/proposalfailed"},{"title":"Paymentsucceeded","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook payment.succeeded","href":"/api-reference/вебхуки/paymentsucceeded"},{"title":"Paymentfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook payment.failed","href":"/api-reference/вебхуки/paymentfailed"},{"title":"Automationruncompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.completed","href":"/api-reference/вебхуки/automationruncompleted"},{"title":"Automationrunfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.failed","href":"/api-reference/вебхуки/automationrunfailed"},{"title":"Esfincomingreceived","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook esf.incoming.received","href":"/api-reference/вебхуки/esfincomingreceived"},{"title":"Bank statementreceived","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook bank_statement.received","href":"/api-reference/вебхуки/bank_statementreceived"},{"title":"Proposalrejected","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.rejected","href":"/api-reference/вебхуки/proposalrejected"},{"title":"Batchcompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook batch.completed","href":"/api-reference/вебхуки/batchcompleted"},{"title":"Batchfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook batch.failed","href":"/api-reference/вебхуки/batchfailed"},{"title":"Automationwrite unknown","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.write_unknown","href":"/api-reference/вебхуки/automationwrite_unknown"},{"title":"Automationrunnotice","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.notice","href":"/api-reference/вебхуки/automationrunnotice"},{"title":"Chatturncompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook chat.turn.completed","href":"/api-reference/вебхуки/chatturncompleted"},{"title":"Platformbalance low","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.balance_low","href":"/api-reference/вебхуки/platformbalance_low"},{"title":"Platformbalance exhausted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.balance_exhausted","href":"/api-reference/вебхуки/platformbalance_exhausted"},{"title":"Platformcap threshold reached","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.cap_threshold_reached","href":"/api-reference/вебхуки/platformcap_threshold_reached"},{"title":"Onecconnectionchanged","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook onec.connection.changed","href":"/api-reference/вебхуки/onecconnectionchanged"},{"title":"Api keyexpiring","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook api_key.expiring","href":"/api-reference/вебхуки/api_keyexpiring"},{"title":"Api keycap reached","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook api_key.cap_reached","href":"/api-reference/вебхуки/api_keycap_reached"},{"title":"Ping","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook ping","href":"/api-reference/вебхуки/ping"}]},{"group":"ИИ-бухгалтер: чат","pages":[{"title":"Свои разговоры в компании, свежие сверху","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/chat","href":"/api-reference/ии-бухгалтер:-чат/свои-разговоры-в-компании-свежие-сверху"},{"title":"Сообщение ИИ-бухгалтеру (ход потоком SSE)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat","href":"/api-reference/ии-бухгалтер:-чат/сообщение-ии-бухгалтеру-ход-потоком-sse"},{"title":"Разговор целиком","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/chat/{id}","href":"/api-reference/ии-бухгалтер:-чат/разговор-целиком"},{"title":"Стереть свой разговор","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/companies/{co}/chat/{id}","href":"/api-reference/ии-бухгалтер:-чат/стереть-свой-разговор"},{"title":"Переименовать свой разговор","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/companies/{co}/chat/{id}","href":"/api-reference/ии-бухгалтер:-чат/переименовать-свой-разговор"},{"title":"Ответ на уточняющий вопрос ИИ (событие choice)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat/{id}/answer","href":"/api-reference/ии-бухгалтер:-чат/ответ-на-уточняющий-вопрос-ии-событие-choice"},{"title":"Переподключиться к идущему ходу","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/chat/{id}/events","href":"/api-reference/ии-бухгалтер:-чат/переподключиться-к-идущему-ходу"},{"title":"Сколько токенов и денег займёт вопрос, не задавая его","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat/count-tokens","href":"/api-reference/ии-бухгалтер:-чат/сколько-токенов-и-денег-займёт-вопрос-не-задавая-его"},{"title":"Остановить ход или закрыть открытый вопрос","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/chat/{id}/stop","href":"/api-reference/ии-бухгалтер:-чат/остановить-ход-или-закрыть-открытый-вопрос"}]},{"group":"ИИ-бухгалтер: предложения","pages":[{"title":"Очередь предложений","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/proposals","href":"/api-reference/ии-бухгалтер:-предложения/очередь-предложений"},{"title":"Карточка предложения","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/proposals/{id}","href":"/api-reference/ии-бухгалтер:-предложения/карточка-предложения"},{"title":"Одобрить и записать в 1С","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/proposals/{id}/approve","href":"/api-reference/ии-бухгалтер:-предложения/одобрить-и-записать-в-1с"},{"title":"Отклонить с причиной","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/proposals/{id}/reject","href":"/api-reference/ии-бухгалтер:-предложения/отклонить-с-причиной"},{"title":"Одобрить пачку предложений","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/proposals/approve-batch","href":"/api-reference/ии-бухгалтер:-предложения/одобрить-пачку-предложений"}]},{"group":"ИИ-бухгалтер: лента","pages":[{"title":"Лента компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/feed","href":"/api-reference/ии-бухгалтер:-лента/лента-компании"},{"title":"Новые события ленты потоком SSE","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/feed/events","href":"/api-reference/ии-бухгалтер:-лента/новые-события-ленты-потоком-sse"}]},{"group":"ИИ-бухгалтер: пачки","pages":[{"title":"Разобрать банковскую выписку в предложения","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/batch/bank-statement","href":"/api-reference/ии-бухгалтер:-пачки/разобрать-банковскую-выписку-в-предложения"},{"title":"Поступления по непривязанным входящим ЭСФ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/batch/esf-purchases","href":"/api-reference/ии-бухгалтер:-пачки/поступления-по-непривязанным-входящим-эсф"},{"title":"Свои задания и выписки дня, свежие сверху","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch","href":"/api-reference/ии-бухгалтер:-пачки/свои-задания-и-выписки-дня-свежие-сверху"},{"title":"Задание с отчётом","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch/{id}","href":"/api-reference/ии-бухгалтер:-пачки/задание-с-отчётом"},{"title":"Сводка задания для «Одобрить и отправить в 1С»","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch/{id}/summary","href":"/api-reference/ии-бухгалтер:-пачки/сводка-задания-для-«одобрить-и-отправить-в-1с»"},{"title":"Прогресс задания потоком SSE","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/batch/{id}/events","href":"/api-reference/ии-бухгалтер:-пачки/прогресс-задания-потоком-sse"},{"title":"Остановить задание","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/batch/{id}/stop","href":"/api-reference/ии-бухгалтер:-пачки/остановить-задание"},{"title":"Выписки DirectBank по дням","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/statements","href":"/api-reference/ии-бухгалтер:-пачки/выписки-directbank-по-дням"},{"title":"Опросить DirectBank сейчас","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/statements/directbank","href":"/api-reference/ии-бухгалтер:-пачки/опросить-directbank-сейчас"}]},{"group":"ЭСФ","pages":[{"title":"Реализации без действующего ЭСФ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/esf/outgoing","href":"/api-reference/эсф/реализации-без-действующего-эсф"},{"title":"Входящие ЭСФ и поступления в 1С","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/esf/incoming","href":"/api-reference/эсф/входящие-эсф-и-поступления-в-1с"}]},{"group":"Формы","pages":[{"title":"Налоговые формы года","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms","href":"/api-reference/формы/налоговые-формы-года"},{"title":"Посчитать форму","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/build","href":"/api-reference/формы/посчитать-форму"},{"title":"Файл формы для КНП ИСНА","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/isna","href":"/api-reference/формы/файл-формы-для-кнп-исна"},{"title":"Примечания к финотчётности","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/notes","href":"/api-reference/формы/примечания-к-финотчётности"},{"title":"Чего не хватает в 1С","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/forms/data-gaps","href":"/api-reference/формы/чего-не-хватает-в-1с"}]},{"group":"1С","pages":[{"title":"Состояние подключения к 1С (без настроек и секретов)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/onec/status","href":"/api-reference/1с/состояние-подключения-к-1с-без-настроек-и-секретов"}]},{"group":"Автоматизации","pages":[{"title":"Принять событие по адресу хука","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /hooks/{token}","href":"/api-reference/автоматизации/принять-событие-по-адресу-хука"},{"title":"Хуки компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/hooks","href":"/api-reference/автоматизации/хуки-компании"},{"title":"Завести хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/hooks","href":"/api-reference/автоматизации/завести-хук"},{"title":"Хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/hooks/{id}","href":"/api-reference/автоматизации/хук"},{"title":"Удалить хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/companies/{co}/automations/hooks/{id}","href":"/api-reference/автоматизации/удалить-хук"},{"title":"Изменить хук","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/companies/{co}/automations/hooks/{id}","href":"/api-reference/автоматизации/изменить-хук"},{"title":"Новый токен хука","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/hooks/{id}/rotate","href":"/api-reference/автоматизации/новый-токен-хука"},{"title":"Пробное событие хука","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/hooks/{id}/test","href":"/api-reference/автоматизации/пробное-событие-хука"},{"title":"Сценарии компании","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/scenarios","href":"/api-reference/автоматизации/сценарии-компании"},{"title":"Завести сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/companies/{co}/automations/scenarios","href":"/api-reference/автоматизации/завести-сценарий"},{"title":"Сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/сценарий"},{"title":"Заменить сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json put /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/заменить-сценарий"},{"title":"Удалить сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/удалить-сценарий"},{"title":"Включить или выключить сценарий","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/companies/{co}/automations/scenarios/{id}","href":"/api-reference/автоматизации/включить-или-выключить-сценарий"},{"title":"Запустить сценарий вручную или на прошлом событии","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"]}