Срок ключа API скоро кончится: за 14 и за 3 дня (настройка платформы api_keys.expiry_reminder_days), по одному разу на порог. Продлить — PATCH ключа с expires_at или смена секрета (roll). Автору ключа уходит и письмо.
Подпись: заголовки webhook-id, webhook-timestamp, webhook-signature — Standard Webhooks. Проверка: 1) подписанная строка — «webhook-id.webhook-timestamp.тело», тело — байты запроса как пришли, до разбора JSON; 2) ключ — часть секрета после whsec_, раскодированная из base64; 3) HMAC-SHA256 от строки этим ключом, в base64; 4) в webhook-signature одна или несколько подписей через пробел, каждая вида «v1,base64» (при смене секрета сутки приходят две) — должна совпасть хотя бы одна, сравнивать постоянным по времени сравнением; 5) webhook-timestamp — секунды Unix; расхождение с вашими часами больше 5 минут — отклонить. Готовая проверка: new Webhook(secret).verify(rawBody, headers) из npm standardwebhooks.
Доставка: POST JSON на адрес. Успех — любой ответ 2xx за 30 секунд. Иначе — повторы через 5 с, 5 мин, 30 мин, 2 ч, 5 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 5 ч: всего 13 попыток, окно 72 ч 35 мин 5 с от первой до последней. После этого событие можно отправить снова вручную (POST …/webhooks/messages//resend). Адрес, который не принимает ничего 5 суток подряд, отключается (enabled: false) — включите его PATCH …/endpoints/ после починки. Доставка «хотя бы раз»: одно событие может прийти дважды — отбрасывайте повторы по id (evt_…), он у повтора тот же. Порядок не гарантируется: события могут прийти не в той последовательности, в какой случились, — сверяйте created_at и читайте актуальное состояние через API. В месячное число бесплатных событий тарифа считаются только события, которые есть кому получить (включённый адрес с подходящим фильтром); сверх него события не отправляются (не копятся и потом не досылаются): сколько не ушло — over_limit в GET …/webhooks/usage.
Подписи через пробел, каждая вида v1,base64 (порядок проверки — в описании события)
Пример:
"v1,kD9WhUZS+K/OigYAsDOosIiagX7cTfjEkMl9fxCJ4GI="
Тело
application/json
Срок ключа API скоро кончится: за 14 и за 3 дня (настройка платформы api_keys.expiry_reminder_days), по одному разу на порог. Продлить — PATCH ключа с expires_at или смена секрета (roll). Автору ключа уходит и письмо.
Данные события — только id, суммы, токены, статусы и время, без персональных данных
Show child attributes
Ответ
200
Любой ответ 2xx — событие доставлено. Иной ответ или нет ответа за 30 секунд — повтор по расписанию
{"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_keyexpiring","slug":"/api-reference/вебхуки/api_keyexpiring","pageMetadata":{"title":"Api keyexpiring","description":"Срок ключа API скоро кончится: за 14 и за 3 дня (настройка платформы api_keys.expiry_reminder_days), по одному разу на порог. Продлить — PATCH ключа с expires_at или смена секрета (roll). Автору ключа уходит и письмо.\n\nПодпись: заголовки webhook-id, webhook-timestamp, webhook-signature — Standard Webhooks. Проверка: 1) подписанная строка — «webhook-id.webhook-timestamp.тело», тело — байты запроса как пришли, до разбора JSON; 2) ключ — часть секрета после whsec_, раскодированная из base64; 3) HMAC-SHA256 от строки этим ключом, в base64; 4) в webhook-signature одна или несколько подписей через пробел, каждая вида «v1,base64» (при смене секрета сутки приходят две) — должна совпасть хотя бы одна, сравнивать постоянным по времени сравнением; 5) webhook-timestamp — секунды Unix; расхождение с вашими часами больше 5 минут — отклонить. Готовая проверка: new Webhook(secret).verify(rawBody, headers) из npm standardwebhooks.\n\nДоставка: POST JSON на адрес. Успех — любой ответ 2xx за 30 секунд. Иначе — повторы через 5 с, 5 мин, 30 мин, 2 ч, 5 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 5 ч: всего 13 попыток, окно 72 ч 35 мин 5 с от первой до последней. После этого событие можно отправить снова вручную (POST …/webhooks/messages/{id}/resend). Адрес, который не принимает ничего 5 суток подряд, отключается (enabled: false) — включите его PATCH …/endpoints/{id} после починки. Доставка «хотя бы раз»: одно событие может прийти дважды — отбрасывайте повторы по id (evt_…), он у повтора тот же. Порядок не гарантируется: события могут прийти не в той последовательности, в какой случились, — сверяйте created_at и читайте актуальное состояние через API. В месячное число бесплатных событий тарифа считаются только события, которые есть кому получить (включённый адрес с подходящим фильтром); сверх него события не отправляются (не копятся и потом не досылаются): сколько не ушло — over_limit в GET …/webhooks/usage.","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook api_key.expiring","href":"/api-reference/вебхуки/api_keyexpiring","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: \"Срок ключа API скоро кончится: за 14 и за 3 дня (настройка платформы api_keys.expiry_reminder_days), по одному разу на порог. Продлить — PATCH ключа с expires_at или смена секрета (roll). Автору ключа уходит и письмо.\"\n }), \"\\n\", _jsx(_components.p, {\n children: \"Подпись: заголовки webhook-id, webhook-timestamp, webhook-signature — Standard Webhooks. Проверка: 1) подписанная строка — «webhook-id.webhook-timestamp.тело», тело — байты запроса как пришли, до разбора JSON; 2) ключ — часть секрета после whsec_, раскодированная из base64; 3) HMAC-SHA256 от строки этим ключом, в base64; 4) в webhook-signature одна или несколько подписей через пробел, каждая вида «v1,base64» (при смене секрета сутки приходят две) — должна совпасть хотя бы одна, сравнивать постоянным по времени сравнением; 5) webhook-timestamp — секунды Unix; расхождение с вашими часами больше 5 минут — отклонить. Готовая проверка: new Webhook(secret).verify(rawBody, headers) из npm standardwebhooks.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Доставка: POST JSON на адрес. Успех — любой ответ 2xx за 30 секунд. Иначе — повторы через 5 с, 5 мин, 30 мин, 2 ч, 5 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 5 ч: всего 13 попыток, окно 72 ч 35 мин 5 с от первой до последней. После этого событие можно отправить снова вручную (POST …/webhooks/messages/\", \"/resend). Адрес, который не принимает ничего 5 суток подряд, отключается (enabled: false) — включите его PATCH …/endpoints/\", \" после починки. Доставка «хотя бы раз»: одно событие может прийти дважды — отбрасывайте повторы по id (evt_…), он у повтора тот же. Порядок не гарантируется: события могут прийти не в той последовательности, в какой случились, — сверяйте created_at и читайте актуальное состояние через API. В месячное число бесплатных событий тарифа считаются только события, которые есть кому получить (включённый адрес с подходящим фильтром); сверх него события не отправляются (не копятся и потом не досылаются): сколько не ушло — over_limit в GET …/webhooks/usage.\"]\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":"Api keyexpiring","description":"Срок ключа API скоро кончится: за 14 и за 3 дня (настройка платформы api_keys.expiry_reminder_days), по одному разу на порог. Продлить — PATCH ключа с expires_at или смена секрета (roll). Автору ключа уходит и письмо.\n\nПодпись: заголовки webhook-id, webhook-timestamp, webhook-signature — Standard Webhooks. Проверка: 1) подписанная строка — «webhook-id.webhook-timestamp.тело», тело — байты запроса как пришли, до разбора JSON; 2) ключ — часть секрета после whsec_, раскодированная из base64; 3) HMAC-SHA256 от строки этим ключом, в base64; 4) в webhook-signature одна или несколько подписей через пробел, каждая вида «v1,base64» (при смене секрета сутки приходят две) — должна совпасть хотя бы одна, сравнивать постоянным по времени сравнением; 5) webhook-timestamp — секунды Unix; расхождение с вашими часами больше 5 минут — отклонить. Готовая проверка: new Webhook(secret).verify(rawBody, headers) из npm standardwebhooks.\n\nДоставка: POST JSON на адрес. Успех — любой ответ 2xx за 30 секунд. Иначе — повторы через 5 с, 5 мин, 30 мин, 2 ч, 5 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 5 ч: всего 13 попыток, окно 72 ч 35 мин 5 с от первой до последней. После этого событие можно отправить снова вручную (POST …/webhooks/messages/{id}/resend). Адрес, который не принимает ничего 5 суток подряд, отключается (enabled: false) — включите его PATCH …/endpoints/{id} после починки. Доставка «хотя бы раз»: одно событие может прийти дважды — отбрасывайте повторы по id (evt_…), он у повтора тот же. Порядок не гарантируется: события могут прийти не в той последовательности, в какой случились, — сверяйте created_at и читайте актуальное состояние через API. В месячное число бесплатных событий тарифа считаются только события, которые есть кому получить (включённый адрес с подходящим фильтром); сверх него события не отправляются (не копятся и потом не досылаются): сколько не ушло — over_limit в GET …/webhooks/usage.","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook api_key.expiring","href":"/api-reference/вебхуки/api_keyexpiring","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"webhookApiKeyExpiring","tags":["Вебхуки"],"summary":"api_key.expiring","description":"Срок ключа API скоро кончится: за 14 и за 3 дня (настройка платформы api_keys.expiry_reminder_days), по одному разу на порог. Продлить — PATCH ключа с expires_at или смена секрета (roll). Автору ключа уходит и письмо.\n\nПодпись: заголовки webhook-id, webhook-timestamp, webhook-signature — Standard Webhooks. Проверка: 1) подписанная строка — «webhook-id.webhook-timestamp.тело», тело — байты запроса как пришли, до разбора JSON; 2) ключ — часть секрета после whsec_, раскодированная из base64; 3) HMAC-SHA256 от строки этим ключом, в base64; 4) в webhook-signature одна или несколько подписей через пробел, каждая вида «v1,base64» (при смене секрета сутки приходят две) — должна совпасть хотя бы одна, сравнивать постоянным по времени сравнением; 5) webhook-timestamp — секунды Unix; расхождение с вашими часами больше 5 минут — отклонить. Готовая проверка: new Webhook(secret).verify(rawBody, headers) из npm standardwebhooks.\n\nДоставка: POST JSON на адрес. Успех — любой ответ 2xx за 30 секунд. Иначе — повторы через 5 с, 5 мин, 30 мин, 2 ч, 5 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 5 ч: всего 13 попыток, окно 72 ч 35 мин 5 с от первой до последней. После этого событие можно отправить снова вручную (POST …/webhooks/messages/{id}/resend). Адрес, который не принимает ничего 5 суток подряд, отключается (enabled: false) — включите его PATCH …/endpoints/{id} после починки. Доставка «хотя бы раз»: одно событие может прийти дважды — отбрасывайте повторы по id (evt_…), он у повтора тот же. Порядок не гарантируется: события могут прийти не в той последовательности, в какой случились, — сверяйте created_at и читайте актуальное состояние через API. В месячное число бесплатных событий тарифа считаются только события, которые есть кому получить (включённый адрес с подходящим фильтром); сверх него события не отправляются (не копятся и потом не досылаются): сколько не ушло — over_limit в GET …/webhooks/usage.","parameters":["9f4b6911-af3d-4727-b86f-8385e32b898b","5a49fb02-c60d-4997-abfe-6891d311d622","114c38e3-5636-4147-a63a-70a77858be9c"],"requestBody":"630a8bb7-ae5c-40c4-ac6d-9548b766b34b","responses":{"200":"ce8f0f7c-fc37-4211-803b-3e0d6dc2da41"},"method":"post","type":"webhook","servers":["c389c850-4818-4663-a4a8-1bad0282721d"],"security":[],"path":"api_key.expiring","baseUrlOptions":["https://api.tungo.kz"],"title":"api_key.expiring","codeSamples":[],"requestExampleLanguages":["bash","python","javascript"],"requiredOnlyExamples":false,"requestExamples":[{"language":"json","filename":"Example","code":"{\n \"id\": \"evt_01jz8x3m4n5p6q7r8s9t0v1w2x\",\n \"type\": \"api_key.expiring\",\n \"created_at\": \"2026-11-04T10:00:00.000Z\",\n \"workspace_id\": \"ws_01jz8x3m4n5p6q7r8s9t0v1w2x\",\n \"company_id\": \"co_01jz8x3m4n5p6q7r8s9t0v1w2x\",\n \"data\": {\n \"key_id\": \"key_01jz8x3m4n5p6q7r8s9t0v1w2x\",\n \"prefix\": \"tg_ab12cd34ef56\",\n \"expires_at\": \"2026-11-18T10:00:00.000Z\",\n \"days_left\": 14\n }\n}"}],"requestExampleType":"webhook","responseExampleType":"generated"},"dependencies":{"parameters":{"9f4b6911-af3d-4727-b86f-8385e32b898b":{"schema":{"type":"string","description":"id сообщения (msg_…): один на все попытки доставки этого сообщения; входит в подписанную строку","example":"msg_2xyzExample","isRequired":true,"uniqueKey":"","typeLabel":"string"},"required":true,"description":"id сообщения (msg_…): один на все попытки доставки этого сообщения; входит в подписанную строку","name":"webhook-id","in":"header"},"5a49fb02-c60d-4997-abfe-6891d311d622":{"schema":{"type":"string","description":"Время этой попытки, секунды Unix; входит в подписанную строку","example":"1793974568","isRequired":true,"uniqueKey":"","typeLabel":"string"},"required":true,"description":"Время этой попытки, секунды Unix; входит в подписанную строку","name":"webhook-timestamp","in":"header"},"114c38e3-5636-4147-a63a-70a77858be9c":{"schema":{"type":"string","description":"Подписи через пробел, каждая вида v1,base64 (порядок проверки — в описании события)","example":"v1,kD9WhUZS+K/OigYAsDOosIiagX7cTfjEkMl9fxCJ4GI=","isRequired":true,"uniqueKey":"","typeLabel":"string"},"required":true,"description":"Подписи через пробел, каждая вида v1,base64 (порядок проверки — в описании события)","name":"webhook-signature","in":"header"}},"requestBody":{"required":true,"content":{"application/json":{"example":{"id":"evt_01jz8x3m4n5p6q7r8s9t0v1w2x","type":"api_key.expiring","created_at":"2026-11-04T10:00:00.000Z","workspace_id":"ws_01jz8x3m4n5p6q7r8s9t0v1w2x","company_id":"co_01jz8x3m4n5p6q7r8s9t0v1w2x","data":{"key_id":"key_01jz8x3m4n5p6q7r8s9t0v1w2x","prefix":"tg_ab12cd34ef56","expires_at":"2026-11-18T10:00:00.000Z","days_left":14}},"schema":{"type":"object","properties":{"id":{"type":"string","pattern":"^evt_[0-9a-z]{26}$","description":"id события — тот же при повторной доставке: по нему отбрасывайте повторы (evt_…)","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"type":{"type":"string","enum":["api_key.expiring"],"description":"Вид события","isRequired":true,"uniqueKey":"type","typeLabel":"enum\u003cstring>"},"created_at":{"type":"string","format":"date-time","description":"Когда событие случилось","isRequired":true,"uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"workspace_id":{"type":"string","pattern":"^ws_[0-9a-z]{26}$","description":"Организация (ws_…)","isRequired":true,"uniqueKey":"workspace_id","typeLabel":"string"},"company_id":{"oneOf":[{"type":"string","pattern":"^co_[0-9a-z]{26}$","description":"Компания; null — событие организации (например, оплата) (co_…)","isRequired":true,"uniqueKey":"company_id.oneOf.0","typeLabel":"string"},{"type":"null","pattern":"^co_[0-9a-z]{26}$","description":"Компания; null — событие организации (например, оплата) (co_…)","isRequired":true,"uniqueKey":"company_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"company_id","typeLabel":"string | null"},"data":{"type":"object","properties":{"key_id":{"type":"string","pattern":"^key_[0-9a-z]{26}$","description":"Ключ API — GET /v1/workspaces/{ws}/api-keys/{id} (key_…)","isRequired":true,"uniqueKey":"data.key_id","typeLabel":"string"},"prefix":{"type":"string","description":"Открытое начало ключа (tg_…) — узнать, какой это ключ в ваших настройках","isRequired":true,"uniqueKey":"data.prefix","typeLabel":"string"},"expires_at":{"type":"string","format":"date-time","description":"Когда ключ перестанет действовать","isRequired":true,"uniqueKey":"data.expires_at","typeLabel":"string\u003cdate-time>"},"days_left":{"type":"integer","minimum":0,"description":"Порог напоминания в днях (14, 3)","isRequired":true,"uniqueKey":"data.days_left","typeLabel":"integer"}},"required":["key_id","prefix","expires_at","days_left"],"additionalProperties":false,"description":"Данные события — только id, суммы, токены, статусы и время, без персональных данных","isRequired":true,"uniqueKey":"data","typeLabel":"object"}},"required":["id","type","created_at","workspace_id","company_id","data"],"additionalProperties":false,"description":"Срок ключа API скоро кончится: за 14 и за 3 дня (настройка платформы api_keys.expiry_reminder_days), по одному разу на порог. Продлить — PATCH ключа с expires_at или смена секрета (roll). Автору ключа уходит и письмо.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"evt_01jz8x3m4n5p6q7r8s9t0v1w2x","type":"api_key.expiring","created_at":"2026-11-04T10:00:00.000Z","workspace_id":"ws_01jz8x3m4n5p6q7r8s9t0v1w2x","company_id":"co_01jz8x3m4n5p6q7r8s9t0v1w2x","data":{"key_id":"key_01jz8x3m4n5p6q7r8s9t0v1w2x","prefix":"tg_ab12cd34ef56","expires_at":"2026-11-18T10:00:00.000Z","days_left":14}}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"ce8f0f7c-fc37-4211-803b-3e0d6dc2da41":{"description":"Любой ответ 2xx — событие доставлено. Иной ответ или нет ответа за 30 секунд — повтор по расписанию","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}}},"security":{},"servers":{"c389c850-4818-4663-a4a8-1bad0282721d":{"url":"https://api.tungo.kz","description":"Адрес API Tungo"}}},"originalFileLocation":"https://api.tungo.kz/v1/openapi.json"},"subdomain":"tungo-ai","siteName":"Tungo","title":"Api keyexpiring - Tungo","navMaps":{"firstHrefInVersion":{"Русский":{"href":"/api-reference/вебхуки/api_keyexpiring","matchLevel":0},"Қазақша":{"href":"/api-reference/вебхуки/api_keyexpiring","matchLevel":0}},"firstHrefInLanguage":{"ru":{"href":"/api-reference/вебхуки/api_keyexpiring","matchLevel":0}}},"lastModified":"2026-11-11T22:37:21.826Z","originalFileLocation":"api-reference/вебхуки/api_keyexpiring.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=\"Срок ключа API скоро кончится: за 14 и за 3 дня (настройка платформы api_keys.expiry_reminder_days), по одному разу на порог. Продлить — PATCH ключа с expires_at или смена секрета (roll). Автору ключа уходит и письмо. Подпись: заголовки webhook-id, webhook-timestamp, webhook-signature — Standard Webhooks. Проверка: 1) подписанная строка — «webhook-id.webhook-timestamp.тело», тело — байты запроса как пришли, до разбора JSON; 2) ключ — часть секрета после whsec_, раскодированная из base64; 3) HMAC-SHA256 от строки этим ключом, в base64; 4) в webhook-signature одна или несколько подписей через пробел, каждая вида «v1,base64» (при смене секрета сутки приходят две) — должна совпасть хотя бы одна, сравнивать постоянным по времени сравнением; 5) webhook-timestamp — секунды Unix; расхождение с вашими часами больше 5 минут — отклонить. Готовая проверка: new Webhook(secret).verify(rawBody, headers) из npm standardwebhooks. Доставка: POST JSON на адрес. Успех — любой ответ 2xx за 30 секунд. Иначе — повторы через 5 с, 5 мин, 30 мин, 2 ч, 5 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 5 ч: всего 13 попыток, окно 72 ч 35 мин 5 с от первой до последней. После этого событие можно отправить снова вручную (POST …/webhooks/messages/{id}/resend). Адрес, который не принимает ничего 5 суток подряд, отключается (enabled: false) — включите его PATCH …/endpoints/{id} после починки. Доставка «хотя бы раз»: одно событие может прийти дважды — отбрасывайте повторы по id (evt_…), он у повтора тот же. Порядок не гарантируется: события могут прийти не в той последовательности, в какой случились, — сверяйте created_at и читайте актуальное состояние через API. В месячное число бесплатных событий тарифа считаются только события, которые есть кому получить (включённый адрес с подходящим фильтром); сверх него события не отправляются (не копятся и потом не досылаются): сколько не ушло — over_limit в GET …/webhooks/usage.\">\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=\"Api keyexpiring - Tungo\">\u003cmeta data-mint-head property=\"og:description\" content=\"Срок ключа API скоро кончится: за 14 и за 3 дня (настройка платформы api_keys.expiry_reminder_days), по одному разу на порог. Продлить — PATCH ключа с expires_at или смена секрета (roll). Автору ключа уходит и письмо. Подпись: заголовки webhook-id, webhook-timestamp, webhook-signature — Standard Webhooks. Проверка: 1) подписанная строка — «webhook-id.webhook-timestamp.тело», тело — байты запроса как пришли, до разбора JSON; 2) ключ — часть секрета после whsec_, раскодированная из base64; 3) HMAC-SHA256 от строки этим ключом, в base64; 4) в webhook-signature одна или несколько подписей через пробел, каждая вида «v1,base64» (при смене секрета сутки приходят две) — должна совпасть хотя бы одна, сравнивать постоянным по времени сравнением; 5) webhook-timestamp — секунды Unix; расхождение с вашими часами больше 5 минут — отклонить. Готовая проверка: new Webhook(secret).verify(rawBody, headers) из npm standardwebhooks. Доставка: POST JSON на адрес. Успех — любой ответ 2xx за 30 секунд. Иначе — повторы через 5 с, 5 мин, 30 мин, 2 ч, 5 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 5 ч: всего 13 попыток, окно 72 ч 35 мин 5 с от первой до последней. После этого событие можно отправить снова вручную (POST …/webhooks/messages/{id}/resend). Адрес, который не принимает ничего 5 суток подряд, отключается (enabled: false) — включите его PATCH …/endpoints/{id} после починки. Доставка «хотя бы раз»: одно событие может прийти дважды — отбрасывайте повторы по id (evt_…), он у повтора тот же. Порядок не гарантируется: события могут прийти не в той последовательности, в какой случились, — сверяйте created_at и читайте актуальное состояние через API. В месячное число бесплатных событий тарифа считаются только события, которые есть кому получить (включённый адрес с подходящим фильтром); сверх него события не отправляются (не копятся и потом не досылаются): сколько не ушло — over_limit в GET …/webhooks/usage.\">\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_keyexpiring\">\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%92%D0%B5%D0%B1%D1%85%D1%83%D0%BA%D0%B8\u0026amp;title=Api+keyexpiring\u0026amp;description=%D0%A1%D1%80%D0%BE%D0%BA+%D0%BA%D0%BB%D1%8E%D1%87%D0%B0+API+%D1%81%D0%BA%D0%BE%D1%80%D0%BE+%D0%BA%D0%BE%D0%BD%D1%87%D0%B8%D1%82%D1%81%D1%8F%3A+%D0%B7%D0%B0+14+%D0%B8+%D0%B7%D0%B0+3+%D0%B4%D0%BD%D1%8F+%28%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0+%D0%BF%D0%BB%D0%B0%D1%82%D1%84%D0%BE%D1%80%D0%BC%D1%8B+api_keys.expiry_reminder_days%29%2C+%D0%BF%D0%BE+%D0%BE%D0%B4%D0%BD%D0%BE%D0%BC%D1%83+%D1%80%D0%B0%D0%B7%D1%83+%D0%BD%D0%B0+%D0%BF%D0%BE%D1%80%D0%BE%D0%B3.+%D0%9F%D1%80%D0%BE%D0%B4%D0%BB%D0%B8%D1%82%D1%8C+%E2%80%94+PATCH+%D0%BA%D0%BB%D1%8E%D1%87%D0%B0+%D1%81+expires_a\u0026amp;theme=dfce91326f5ce74a967be081\u0026amp;signature=247d114b130b90b07f426e9617fdf409d72028cb5b89e2ad7dbb9b1ce6375235\">\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=\"Api keyexpiring - Tungo\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Срок ключа API скоро кончится: за 14 и за 3 дня (настройка платформы api_keys.expiry_reminder_days), по одному разу на порог. Продлить — PATCH ключа с expires_at или смена секрета (roll). Автору ключа уходит и письмо. Подпись: заголовки webhook-id, webhook-timestamp, webhook-signature — Standard Webhooks. Проверка: 1) подписанная строка — «webhook-id.webhook-timestamp.тело», тело — байты запроса как пришли, до разбора JSON; 2) ключ — часть секрета после whsec_, раскодированная из base64; 3) HMAC-SHA256 от строки этим ключом, в base64; 4) в webhook-signature одна или несколько подписей через пробел, каждая вида «v1,base64» (при смене секрета сутки приходят две) — должна совпасть хотя бы одна, сравнивать постоянным по времени сравнением; 5) webhook-timestamp — секунды Unix; расхождение с вашими часами больше 5 минут — отклонить. Готовая проверка: new Webhook(secret).verify(rawBody, headers) из npm standardwebhooks. Доставка: POST JSON на адрес. Успех — любой ответ 2xx за 30 секунд. Иначе — повторы через 5 с, 5 мин, 30 мин, 2 ч, 5 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 5 ч: всего 13 попыток, окно 72 ч 35 мин 5 с от первой до последней. После этого событие можно отправить снова вручную (POST …/webhooks/messages/{id}/resend). Адрес, который не принимает ничего 5 суток подряд, отключается (enabled: false) — включите его PATCH …/endpoints/{id} после починки. Доставка «хотя бы раз»: одно событие может прийти дважды — отбрасывайте повторы по id (evt_…), он у повтора тот же. Порядок не гарантируется: события могут прийти не в той последовательности, в какой случились, — сверяйте created_at и читайте актуальное состояние через API. В месячное число бесплатных событий тарифа считаются только события, которые есть кому получить (включённый адрес с подходящим фильтром); сверх него события не отправляются (не копятся и потом не досылаются): сколько не ушло — over_limit в GET …/webhooks/usage.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://tungo-ai.mintlify.site/_mintlify/api/og/v2?division=%D0%92%D0%B5%D0%B1%D1%85%D1%83%D0%BA%D0%B8\u0026amp;title=Api+keyexpiring\u0026amp;description=%D0%A1%D1%80%D0%BE%D0%BA+%D0%BA%D0%BB%D1%8E%D1%87%D0%B0+API+%D1%81%D0%BA%D0%BE%D1%80%D0%BE+%D0%BA%D0%BE%D0%BD%D1%87%D0%B8%D1%82%D1%81%D1%8F%3A+%D0%B7%D0%B0+14+%D0%B8+%D0%B7%D0%B0+3+%D0%B4%D0%BD%D1%8F+%28%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0+%D0%BF%D0%BB%D0%B0%D1%82%D1%84%D0%BE%D1%80%D0%BC%D1%8B+api_keys.expiry_reminder_days%29%2C+%D0%BF%D0%BE+%D0%BE%D0%B4%D0%BD%D0%BE%D0%BC%D1%83+%D1%80%D0%B0%D0%B7%D1%83+%D0%BD%D0%B0+%D0%BF%D0%BE%D1%80%D0%BE%D0%B3.+%D0%9F%D1%80%D0%BE%D0%B4%D0%BB%D0%B8%D1%82%D1%8C+%E2%80%94+PATCH+%D0%BA%D0%BB%D1%8E%D1%87%D0%B0+%D1%81+expires_a\u0026amp;theme=dfce91326f5ce74a967be081\u0026amp;signature=247d114b130b90b07f426e9617fdf409d72028cb5b89e2ad7dbb9b1ce6375235\">\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_keyexpiring\">\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%B2%D0%B5%D0%B1%D1%85%D1%83%D0%BA%D0%B8/api_keyexpiring.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%B2%D0%B5%D0%B1%D1%85%D1%83%D0%BA%D0%B8/api_keyexpiring#webpage\",\"url\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B2%D0%B5%D0%B1%D1%85%D1%83%D0%BA%D0%B8/api_keyexpiring\",\"name\":\"Api keyexpiring\",\"description\":\"Срок ключа API скоро кончится: за 14 и за 3 дня (настройка платформы api_keys.expiry_reminder_days), по одному разу на порог. Продлить — PATCH ключа с expires_at или смена секрета (roll). Автору ключа уходит и письмо. Подпись: заголовки webhook-id, webhook-timestamp, webhook-signature — Standard Webhooks. Проверка: 1) подписанная строка — «webhook-id.webhook-timestamp.тело», тело — байты запроса как пришли, до разбора JSON; 2) ключ — часть секрета после whsec_, раскодированная из base64; 3) HMAC-SHA256 от строки этим ключом, в base64; 4) в webhook-signature одна или несколько подписей через пробел, каждая вида «v1,base64» (при смене секрета сутки приходят две) — должна совпасть хотя бы одна, сравнивать постоянным по времени сравнением; 5) webhook-timestamp — секунды Unix; расхождение с вашими часами больше 5 минут — отклонить. Готовая проверка: new Webhook(secret).verify(rawBody, headers) из npm standardwebhooks. Доставка: POST JSON на адрес. Успех — любой ответ 2xx за 30 секунд. Иначе — повторы через 5 с, 5 мин, 30 мин, 2 ч, 5 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 5 ч: всего 13 попыток, окно 72 ч 35 мин 5 с от первой до последней. После этого событие можно отправить снова вручную (POST …/webhooks/messages/{id}/resend). Адрес, который не принимает ничего 5 суток подряд, отключается (enabled: false) — включите его PATCH …/endpoints/{id} после починки. Доставка «хотя бы раз»: одно событие может прийти дважды — отбрасывайте повторы по id (evt_…), он у повтора тот же. Порядок не гарантируется: события могут прийти не в той последовательности, в какой случились, — сверяйте created_at и читайте актуальное состояние через API. В месячное число бесплатных событий тарифа считаются только события, которые есть кому получить (включённый адрес с подходящим фильтром); сверх него события не отправляются (не копятся и потом не досылаются): сколько не ушло — over_limit в GET …/webhooks/usage.\",\"dateModified\":\"2026-11-11T22:37:21.826Z\",\"isPartOf\":{\"@id\":\"https://tungo-ai.mintlify.app#website\"},\"breadcrumb\":{\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B2%D0%B5%D0%B1%D1%85%D1%83%D0%BA%D0%B8/api_keyexpiring#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B2%D0%B5%D0%B1%D1%85%D1%83%D0%BA%D0%B8/api_keyexpiring#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Справочник API\",\"item\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B0%D0%BA%D0%BA%D0%B0%D1%83%D0%BD%D1%82/%D0%BC%D0%BE%D0%B8-%D0%BE%D1%80%D0%B3%D0%B0%D0%BD%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8-workspace-%D1%81-%D0%BF%D1%83%D0%B1%D0%BB%D0%B8%D1%87%D0%BD%D1%8B%D0%BC%D0%B8-id-ws_%E2%80%A6\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Вебхуки\",\"item\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B2%D0%B5%D0%B1%D1%85%D1%83%D0%BA%D0%B8/%D0%BA%D0%B0%D0%BA%D0%B8%D0%B5-%D1%81%D0%BE%D0%B1%D1%8B%D1%82%D0%B8%D1%8F-%D0%B1%D1%8B%D0%B2%D0%B0%D1%8E%D1%82\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Api keyexpiring\",\"item\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B2%D0%B5%D0%B1%D1%85%D1%83%D0%BA%D0%B8/api_keyexpiring\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B2%D0%B5%D0%B1%D1%85%D1%83%D0%BA%D0%B8/api_keyexpiring#apireference\",\"headline\":\"Api keyexpiring\",\"name\":\"Api keyexpiring\",\"description\":\"Срок ключа API скоро кончится: за 14 и за 3 дня (настройка платформы api_keys.expiry_reminder_days), по одному разу на порог. Продлить — PATCH ключа с expires_at или смена секрета (roll). Автору ключа уходит и письмо. Подпись: заголовки webhook-id, webhook-timestamp, webhook-signature — Standard Webhooks. Проверка: 1) подписанная строка — «webhook-id.webhook-timestamp.тело», тело — байты запроса как пришли, до разбора JSON; 2) ключ — часть секрета после whsec_, раскодированная из base64; 3) HMAC-SHA256 от строки этим ключом, в base64; 4) в webhook-signature одна или несколько подписей через пробел, каждая вида «v1,base64» (при смене секрета сутки приходят две) — должна совпасть хотя бы одна, сравнивать постоянным по времени сравнением; 5) webhook-timestamp — секунды Unix; расхождение с вашими часами больше 5 минут — отклонить. Готовая проверка: new Webhook(secret).verify(rawBody, headers) из npm standardwebhooks. Доставка: POST JSON на адрес. Успех — любой ответ 2xx за 30 секунд. Иначе — повторы через 5 с, 5 мин, 30 мин, 2 ч, 5 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 5 ч: всего 13 попыток, окно 72 ч 35 мин 5 с от первой до последней. После этого событие можно отправить снова вручную (POST …/webhooks/messages/{id}/resend). Адрес, который не принимает ничего 5 суток подряд, отключается (enabled: false) — включите его PATCH …/endpoints/{id} после починки. Доставка «хотя бы раз»: одно событие может прийти дважды — отбрасывайте повторы по id (evt_…), он у повтора тот же. Порядок не гарантируется: события могут прийти не в той последовательности, в какой случились, — сверяйте created_at и читайте актуальное состояние через API. В месячное число бесплатных событий тарифа считаются только события, которые есть кому получить (включённый адрес с подходящим фильтром); сверх него события не отправляются (не копятся и потом не досылаются): сколько не ушло — over_limit в GET …/webhooks/usage.\",\"url\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B2%D0%B5%D0%B1%D1%85%D1%83%D0%BA%D0%B8/api_keyexpiring\",\"mainEntityOfPage\":{\"@id\":\"https://tungo-ai.mintlify.app/api-reference/%D0%B2%D0%B5%D0%B1%D1%85%D1%83%D0%BA%D0%B8/api_keyexpiring#webpage\"},\"dateModified\":\"2026-11-11T22:37:21.826Z\",\"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%B2%D0%B5%D0%B1%D1%85%D1%83%D0%BA%D0%B8/api_keyexpiring.md","siteName":"Tungo","nav":{"global":null,"languages":[{"language":"ru","versions":[{"version":"Русский","default":true,"tabs":[{"tab":"Главная","pages":[{"title":"Главная","href":""}]},{"tab":"Начало","pages":[{"title":"Начало","href":"/start/quickstart"}]},{"tab":"Подключение 1С","pages":[{"title":"Подключение 1С","href":"/1c/overview"}]},{"tab":"ИИ-бухгалтер","pages":[{"title":"ИИ-бухгалтер","href":"/assistant/ask"}]},{"tab":"Тарифы и оплата","pages":[{"title":"Тарифы и оплата","href":"/billing/plans"}]},{"tab":"Аккаунт и команда","pages":[{"title":"Аккаунт и команда","href":"/account/sign-in"}]},{"tab":"Решение проблем","pages":[{"title":"Решение проблем","href":"/help/sign-in"}]},{"tab":"Платформа","pages":[{"title":"Платформа","href":"/platform/overview"}]},{"tab":"API","groups":[{"group":"Справочник API","pages":[{"group":"Аккаунт","pages":[{"title":"Мои организации (workspace) с публичными id ws_…","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces","href":"/api-reference/аккаунт/мои-организации-workspace-с-публичными-id-ws_…"}]},{"group":"Компании","pages":[{"title":"Мои компании во всех workspace","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies","href":"/api-reference/компании/мои-компании-во-всех-workspace"},{"title":"Компания","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/companies/{co}","href":"/api-reference/компании/компания"}]},{"group":"Биллинг","pages":[{"title":"Привязать карту (форма ePay)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/billing/card-sessions","href":"/api-reference/биллинг/привязать-карту-форма-epay"},{"title":"Привязанные карты","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/billing/payment-methods","href":"/api-reference/биллинг/привязанные-карты"},{"title":"Отвязать карту","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/workspaces/{ws}/billing/payment-methods/{pm}","href":"/api-reference/биллинг/отвязать-карту"},{"title":"Оплатить на форме ePay (с 3-D Secure)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/billing/payments/{id}/pay-form","href":"/api-reference/биллинг/оплатить-на-форме-epay-с-3-d-secure"}]},{"group":"Тарифы и расход","pages":[{"title":"Цены моделей","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/usage-rates","href":"/api-reference/тарифы-и-расход/цены-моделей"}]},{"group":"Платформа: баланс и расход","pages":[{"title":"Счёт платформы","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/account","href":"/api-reference/платформа:-баланс-и-расход/счёт-платформы"},{"title":"Настройки платформы","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json put /v1/workspaces/{ws}/platform/account","href":"/api-reference/платформа:-баланс-и-расход/настройки-платформы"},{"title":"Пополнить баланс платформы","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/platform/purchases","href":"/api-reference/платформа:-баланс-и-расход/пополнить-баланс-платформы"},{"title":"Движения баланса платформы","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/ledger","href":"/api-reference/платформа:-баланс-и-расход/движения-баланса-платформы"},{"title":"Расход платформы","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/usage","href":"/api-reference/платформа:-баланс-и-расход/расход-платформы"},{"title":"Журнал действий организации","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/audit","href":"/api-reference/платформа:-баланс-и-расход/журнал-действий-организации"},{"title":"Журнал запросов по ключам","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/requests","href":"/api-reference/платформа:-баланс-и-расход/журнал-запросов-по-ключам"},{"title":"Пределы платформы и сколько осталось","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/platform/limits","href":"/api-reference/платформа:-баланс-и-расход/пределы-платформы-и-сколько-осталось"}]},{"group":"Ключи API","pages":[{"title":"Кому можно передать ключ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/api-keys/people","href":"/api-reference/ключи-api/кому-можно-передать-ключ"},{"title":"Ключи API (без секретов)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/api-keys","href":"/api-reference/ключи-api/ключи-api-без-секретов"},{"title":"Выпустить ключ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys","href":"/api-reference/ключи-api/выпустить-ключ"},{"title":"Ключ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/api-keys/{id}","href":"/api-reference/ключи-api/ключ"},{"title":"Отозвать ключ (сразу и навсегда)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/workspaces/{ws}/api-keys/{id}","href":"/api-reference/ключи-api/отозвать-ключ-сразу-и-навсегда"},{"title":"Изменить ключ: имя, срок, месячный потолок, компании и права","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/workspaces/{ws}/api-keys/{id}","href":"/api-reference/ключи-api/изменить-ключ:-имя-срок-месячный-потолок-компании-и-права"},{"title":"Сменить секрет ключа","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys/{id}/roll","href":"/api-reference/ключи-api/сменить-секрет-ключа"},{"title":"Передать ключ другому владельцу или админу","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys/{id}/transfer","href":"/api-reference/ключи-api/передать-ключ-другому-владельцу-или-админу"},{"title":"Выключить ключ (можно включить обратно)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys/{id}/disable","href":"/api-reference/ключи-api/выключить-ключ-можно-включить-обратно"},{"title":"Включить выключенный ключ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys/{id}/enable","href":"/api-reference/ключи-api/включить-выключенный-ключ"},{"title":"Расход ключа за период","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/api-keys/{id}/usage","href":"/api-reference/ключи-api/расход-ключа-за-период"},{"title":"Ключ, по которому пришёл запрос (кто я)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/api-key","href":"/api-reference/ключи-api/ключ-по-которому-пришёл-запрос-кто-я"},{"title":"Расход ключа, по которому пришёл запрос","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/api-key/usage","href":"/api-reference/ключи-api/расход-ключа-по-которому-пришёл-запрос"}]},{"group":"Вебхуки","pages":[{"title":"Какие события бывают","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/event-types","href":"/api-reference/вебхуки/какие-события-бывают"},{"title":"Счётчик событий месяца","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/usage","href":"/api-reference/вебхуки/счётчик-событий-месяца"},{"title":"Адреса вебхуков","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints","href":"/api-reference/вебхуки/адреса-вебхуков"},{"title":"Завести адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints","href":"/api-reference/вебхуки/завести-адрес"},{"title":"Адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/адрес"},{"title":"Удалить адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/удалить-адрес"},{"title":"Поменять адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/поменять-адрес"},{"title":"Секрет подписи адреса","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}/secret","href":"/api-reference/вебхуки/секрет-подписи-адреса"},{"title":"Новый секрет подписи","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints/{id}/secret/rotate","href":"/api-reference/вебхуки/новый-секрет-подписи"},{"title":"Пробное событие на адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints/{id}/test","href":"/api-reference/вебхуки/пробное-событие-на-адрес"},{"title":"Попытки доставки на адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}/attempts","href":"/api-reference/вебхуки/попытки-доставки-на-адрес"},{"title":"Отправленные события","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/messages","href":"/api-reference/вебхуки/отправленные-события"},{"title":"Попытки доставки события","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/messages/{id}/attempts","href":"/api-reference/вебхуки/попытки-доставки-события"},{"title":"Отправить событие на адрес ещё раз","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/messages/{id}/resend","href":"/api-reference/вебхуки/отправить-событие-на-адрес-ещё-раз"},{"title":"Proposalawaiting approval","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.awaiting_approval","href":"/api-reference/вебхуки/proposalawaiting_approval"},{"title":"Proposalwritten","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.written","href":"/api-reference/вебхуки/proposalwritten"},{"title":"Proposalfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.failed","href":"/api-reference/вебхуки/proposalfailed"},{"title":"Paymentsucceeded","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook payment.succeeded","href":"/api-reference/вебхуки/paymentsucceeded"},{"title":"Paymentfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook payment.failed","href":"/api-reference/вебхуки/paymentfailed"},{"title":"Automationruncompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.completed","href":"/api-reference/вебхуки/automationruncompleted"},{"title":"Automationrunfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.failed","href":"/api-reference/вебхуки/automationrunfailed"},{"title":"Esfincomingreceived","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook esf.incoming.received","href":"/api-reference/вебхуки/esfincomingreceived"},{"title":"Bank statementreceived","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook bank_statement.received","href":"/api-reference/вебхуки/bank_statementreceived"},{"title":"Proposalrejected","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.rejected","href":"/api-reference/вебхуки/proposalrejected"},{"title":"Batchcompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook batch.completed","href":"/api-reference/вебхуки/batchcompleted"},{"title":"Batchfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook batch.failed","href":"/api-reference/вебхуки/batchfailed"},{"title":"Automationwrite unknown","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.write_unknown","href":"/api-reference/вебхуки/automationwrite_unknown"},{"title":"Automationrunnotice","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.notice","href":"/api-reference/вебхуки/automationrunnotice"},{"title":"Chatturncompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook chat.turn.completed","href":"/api-reference/вебхуки/chatturncompleted"},{"title":"Platformbalance low","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.balance_low","href":"/api-reference/вебхуки/platformbalance_low"},{"title":"Platformbalance exhausted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.balance_exhausted","href":"/api-reference/вебхуки/platformbalance_exhausted"},{"title":"Platformcap threshold reached","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.cap_threshold_reached","href":"/api-reference/вебхуки/platformcap_threshold_reached"},{"title":"Onecconnectionchanged","description":"Программа Tungo в офисе (связь с 1С компании) вышла на связь или пропала. reason — почему пропала: device_revoked (устройство отозвали), replaced (подключилась другая копия или привязано другое устройство), key_rotated (сменён ключ — программа сразу переподключится), access_lost (компания отключена, организация заблокирована), no_heartbeat (не отвечала на проверку связи), connection_lost (связь оборвалась: компьютер выключен, сеть), handshake_failed, server_unavailable, server_shutdown (сервер Tungo перезапускается — программа переподключится сама). Пока программы нет на связи, запись в 1С не идёт.\n\nПодпись: заголовки webhook-id, webhook-timestamp, webhook-signature — Standard Webhooks. Проверка: 1) подписанная строка — «webhook-id.webhook-timestamp.тело», тело — байты запроса как пришли, до разбора JSON; 2) ключ — часть секрета после whsec_, раскодированная из base64; 3) HMAC-SHA256 от строки этим ключом, в base64; 4) в webhook-signature одна или несколько подписей через пробел, каждая вида «v1,base64» (при смене секрета сутки приходят две) — должна совпасть хотя бы одна, сравнивать постоянным по времени сравнением; 5) webhook-timestamp — секунды Unix; расхождение с вашими часами больше 5 минут — отклонить. Готовая проверка: new Webhook(secret).verify(rawBody, headers) из npm standardwebhooks.\n\nДоставка: POST JSON на адрес. Успех — любой ответ 2xx за 30 секунд. Иначе — повторы через 5 с, 5 мин, 30 мин, 2 ч, 5 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 5 ч: всего 13 попыток, окно 72 ч 35 мин 5 с от первой до последней. После этого событие можно отправить снова вручную (POST …/webhooks/messages/{id}/resend). Адрес, который не принимает ничего 5 суток подряд, отключается (enabled: false) — включите его PATCH …/endpoints/{id} после починки. Доставка «хотя бы раз»: одно событие может прийти дважды — отбрасывайте повторы по id (evt_…), он у повтора тот же. Порядок не гарантируется: события могут прийти не в той последовательности, в какой случились, — сверяйте created_at и читайте актуальное состояние через API. В месячное число бесплатных событий тарифа считаются только события, которые есть кому получить (включённый адрес с подходящим фильтром); сверх него события не отправляются (не копятся и потом не досылаются): сколько не ушло — over_limit в GET …/webhooks/usage.","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","description":"Ключ API упёрся в свой месячный потолок расхода ИИ: вызовы ИИ по нему отклоняются (402 key_cap_reached) до 1-го числа следующего месяца или пока потолок не поднимут (PATCH ключа). Раз в месяц на ключ.\n\nПодпись: заголовки webhook-id, webhook-timestamp, webhook-signature — Standard Webhooks. Проверка: 1) подписанная строка — «webhook-id.webhook-timestamp.тело», тело — байты запроса как пришли, до разбора JSON; 2) ключ — часть секрета после whsec_, раскодированная из base64; 3) HMAC-SHA256 от строки этим ключом, в base64; 4) в webhook-signature одна или несколько подписей через пробел, каждая вида «v1,base64» (при смене секрета сутки приходят две) — должна совпасть хотя бы одна, сравнивать постоянным по времени сравнением; 5) webhook-timestamp — секунды Unix; расхождение с вашими часами больше 5 минут — отклонить. Готовая проверка: new Webhook(secret).verify(rawBody, headers) из npm standardwebhooks.\n\nДоставка: POST JSON на адрес. Успех — любой ответ 2xx за 30 секунд. Иначе — повторы через 5 с, 5 мин, 30 мин, 2 ч, 5 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 5 ч: всего 13 попыток, окно 72 ч 35 мин 5 с от первой до последней. После этого событие можно отправить снова вручную (POST …/webhooks/messages/{id}/resend). Адрес, который не принимает ничего 5 суток подряд, отключается (enabled: false) — включите его PATCH …/endpoints/{id} после починки. Доставка «хотя бы раз»: одно событие может прийти дважды — отбрасывайте повторы по id (evt_…), он у повтора тот же. Порядок не гарантируется: события могут прийти не в той последовательности, в какой случились, — сверяйте created_at и читайте актуальное состояние через API. В месячное число бесплатных событий тарифа считаются только события, которые есть кому получить (включённый адрес с подходящим фильтром); сверх него события не отправляются (не копятся и потом не досылаются): сколько не ушло — over_limit в GET …/webhooks/usage.","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":"Включить выключенный ключ","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/api-keys/{id}/enable","href":"/api-reference/ключи-api/включить-выключенный-ключ"},{"title":"Расход ключа за период","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/api-keys/{id}/usage","href":"/api-reference/ключи-api/расход-ключа-за-период"},{"title":"Ключ, по которому пришёл запрос (кто я)","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/api-key","href":"/api-reference/ключи-api/ключ-по-которому-пришёл-запрос-кто-я"},{"title":"Расход ключа, по которому пришёл запрос","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/api-key/usage","href":"/api-reference/ключи-api/расход-ключа-по-которому-пришёл-запрос"}]},{"group":"Вебхуки","pages":[{"title":"Какие события бывают","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/event-types","href":"/api-reference/вебхуки/какие-события-бывают"},{"title":"Счётчик событий месяца","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/usage","href":"/api-reference/вебхуки/счётчик-событий-месяца"},{"title":"Адреса вебхуков","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints","href":"/api-reference/вебхуки/адреса-вебхуков"},{"title":"Завести адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints","href":"/api-reference/вебхуки/завести-адрес"},{"title":"Адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/адрес"},{"title":"Удалить адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json delete /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/удалить-адрес"},{"title":"Поменять адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json patch /v1/workspaces/{ws}/webhooks/endpoints/{id}","href":"/api-reference/вебхуки/поменять-адрес"},{"title":"Секрет подписи адреса","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}/secret","href":"/api-reference/вебхуки/секрет-подписи-адреса"},{"title":"Новый секрет подписи","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints/{id}/secret/rotate","href":"/api-reference/вебхуки/новый-секрет-подписи"},{"title":"Пробное событие на адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/endpoints/{id}/test","href":"/api-reference/вебхуки/пробное-событие-на-адрес"},{"title":"Попытки доставки на адрес","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/endpoints/{id}/attempts","href":"/api-reference/вебхуки/попытки-доставки-на-адрес"},{"title":"Отправленные события","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/messages","href":"/api-reference/вебхуки/отправленные-события"},{"title":"Попытки доставки события","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json get /v1/workspaces/{ws}/webhooks/messages/{id}/attempts","href":"/api-reference/вебхуки/попытки-доставки-события"},{"title":"Отправить событие на адрес ещё раз","deprecated":null,"version":null,"openapi":"https://api.tungo.kz/v1/openapi.json post /v1/workspaces/{ws}/webhooks/messages/{id}/resend","href":"/api-reference/вебхуки/отправить-событие-на-адрес-ещё-раз"},{"title":"Proposalawaiting approval","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.awaiting_approval","href":"/api-reference/вебхуки/proposalawaiting_approval"},{"title":"Proposalwritten","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.written","href":"/api-reference/вебхуки/proposalwritten"},{"title":"Proposalfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.failed","href":"/api-reference/вебхуки/proposalfailed"},{"title":"Paymentsucceeded","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook payment.succeeded","href":"/api-reference/вебхуки/paymentsucceeded"},{"title":"Paymentfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook payment.failed","href":"/api-reference/вебхуки/paymentfailed"},{"title":"Automationruncompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.completed","href":"/api-reference/вебхуки/automationruncompleted"},{"title":"Automationrunfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.failed","href":"/api-reference/вебхуки/automationrunfailed"},{"title":"Esfincomingreceived","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook esf.incoming.received","href":"/api-reference/вебхуки/esfincomingreceived"},{"title":"Bank statementreceived","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook bank_statement.received","href":"/api-reference/вебхуки/bank_statementreceived"},{"title":"Proposalrejected","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook proposal.rejected","href":"/api-reference/вебхуки/proposalrejected"},{"title":"Batchcompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook batch.completed","href":"/api-reference/вебхуки/batchcompleted"},{"title":"Batchfailed","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook batch.failed","href":"/api-reference/вебхуки/batchfailed"},{"title":"Automationwrite unknown","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.write_unknown","href":"/api-reference/вебхуки/automationwrite_unknown"},{"title":"Automationrunnotice","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook automation.run.notice","href":"/api-reference/вебхуки/automationrunnotice"},{"title":"Chatturncompleted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook chat.turn.completed","href":"/api-reference/вебхуки/chatturncompleted"},{"title":"Platformbalance low","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.balance_low","href":"/api-reference/вебхуки/platformbalance_low"},{"title":"Platformbalance exhausted","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.balance_exhausted","href":"/api-reference/вебхуки/platformbalance_exhausted"},{"title":"Platformcap threshold reached","version":null,"deprecated":null,"openapi":"https://api.tungo.kz/v1/openapi.json webhook platform.cap_threshold_reached","href":"/api-reference/вебхуки/platformcap_threshold_reached"},{"title":"Onecconnectionchanged","description":"Программа Tungo в офисе (связь с 1С компании) вышла на связь или пропала. reason — почему пропала: device_revoked (устройство отозвали), replaced (подключилась другая копия или привязано другое устройство), key_rotated (сменён ключ — программа сразу переподключится), access_lost (компания отключена, организация заблокирована), no_heartbeat (не отвечала на проверку связи), connection_lost (связь оборвалась: компьютер выключен, сеть), handshake_failed, server_unavailable, server_shutdown (сервер Tungo перезапускается — программа переподключится сама). Пока программы нет на связи, запись в 1С не идёт.\n\nПодпись: заголовки webhook-id, webhook-timestamp, webhook-signature — Standard Webhooks. Проверка: 1) подписанная строка — «webhook-id.webhook-timestamp.тело», тело — байты запроса как пришли, до разбора JSON; 2) ключ — часть секрета после whsec_, раскодированная из base64; 3) HMAC-SHA256 от строки этим ключом, в base64; 4) в webhook-signature одна или несколько подписей через пробел, каждая вида «v1,base64» (при смене секрета сутки приходят две) — должна совпасть хотя бы одна, сравнивать постоянным по времени сравнением; 5) webhook-timestamp — секунды Unix; расхождение с вашими часами больше 5 минут — отклонить. Готовая проверка: new Webhook(secret).verify(rawBody, headers) из npm standardwebhooks.\n\nДоставка: POST JSON на адрес. Успех — любой ответ 2xx за 30 секунд. Иначе — повторы через 5 с, 5 мин, 30 мин, 2 ч, 5 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 5 ч: всего 13 попыток, окно 72 ч 35 мин 5 с от первой до последней. После этого событие можно отправить снова вручную (POST …/webhooks/messages/{id}/resend). Адрес, который не принимает ничего 5 суток подряд, отключается (enabled: false) — включите его PATCH …/endpoints/{id} после починки. Доставка «хотя бы раз»: одно событие может прийти дважды — отбрасывайте повторы по id (evt_…), он у повтора тот же. Порядок не гарантируется: события могут прийти не в той последовательности, в какой случились, — сверяйте created_at и читайте актуальное состояние через API. В месячное число бесплатных событий тарифа считаются только события, которые есть кому получить (включённый адрес с подходящим фильтром); сверх него события не отправляются (не копятся и потом не досылаются): сколько не ушло — over_limit в GET …/webhooks/usage.","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","description":"Ключ API упёрся в свой месячный потолок расхода ИИ: вызовы ИИ по нему отклоняются (402 key_cap_reached) до 1-го числа следующего месяца или пока потолок не поднимут (PATCH ключа). Раз в месяц на ключ.\n\nПодпись: заголовки webhook-id, webhook-timestamp, webhook-signature — Standard Webhooks. Проверка: 1) подписанная строка — «webhook-id.webhook-timestamp.тело», тело — байты запроса как пришли, до разбора JSON; 2) ключ — часть секрета после whsec_, раскодированная из base64; 3) HMAC-SHA256 от строки этим ключом, в base64; 4) в webhook-signature одна или несколько подписей через пробел, каждая вида «v1,base64» (при смене секрета сутки приходят две) — должна совпасть хотя бы одна, сравнивать постоянным по времени сравнением; 5) webhook-timestamp — секунды Unix; расхождение с вашими часами больше 5 минут — отклонить. Готовая проверка: new Webhook(secret).verify(rawBody, headers) из npm standardwebhooks.\n\nДоставка: POST JSON на адрес. Успех — любой ответ 2xx за 30 секунд. Иначе — повторы через 5 с, 5 мин, 30 мин, 2 ч, 5 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 10 ч, 5 ч: всего 13 попыток, окно 72 ч 35 мин 5 с от первой до последней. После этого событие можно отправить снова вручную (POST …/webhooks/messages/{id}/resend). Адрес, который не принимает ничего 5 суток подряд, отключается (enabled: false) — включите его PATCH …/endpoints/{id} после починки. Доставка «хотя бы раз»: одно событие может прийти дважды — отбрасывайте повторы по id (evt_…), он у повтора тот же. Порядок не гарантируется: события могут прийти не в той последовательности, в какой случились, — сверяйте created_at и читайте актуальное состояние через API. В месячное число бесплатных событий тарифа считаются только события, которые есть кому получить (включённый адрес с подходящим фильтром); сверх него события не отправляются (не копятся и потом не досылаются): сколько не ушло — over_limit в GET …/webhooks/usage.","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":"Api keyexpiring - 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"]}