Формула ИИ для разработчиков Справочник API Каталог ошибок OpenAPI
Разделы

Каталог ошибок

Все ошибки приходят в формате application/problem+json (RFC 9457). Ветвите логику по полю code, а не по тексту detail. Поле type каждой ошибки ведёт на эту страницу.

Доступ и ключ

КодHTTPНазваниеКогда приходитЧто делать
integration_inactive401Integration is not activeИнтеграция приостановлена или отозвана, либо её владелец потерял доступ. Ключ верный, дело не в нём.Проверьте интеграцию в кабинете (Настройки → API).
invalid_api_key401Invalid API keyЗаголовка нет, ключ не найден, отозван или истёк. Ответ намеренно одинаков во всех случаях: платформа не подтверждает, что такой ключ существовал.Проверьте ключ; срок действия виден в GET /me (key.expires_at). При необходимости выпустите новый. Автоматически не повторяйте.
wrong_cell401Key belongs to another cellКлюч выпущен в другой ячейке. В ответе есть поле correct_base_url.Используйте базовый адрес из correct_base_url.
feature_not_in_plan403API is not included in the planЛицензия или тариф не включают API (api_access) либо конкретную возможность.Смените тариф или обратитесь в поддержку.
ip_not_allowed403IP address is not allowedЗапрос пришёл с адреса вне списка интеграции.Добавьте адрес в список или вызывайте с разрешённого.
pii_transfer_not_allowed403Personal data transfer is not allowedЯчейка RU: запрошена область с персональными данными, а список IP или страна размещения принимающей системы не разрешают передачу.Разместите принимающую систему в РФ, задайте список IP либо не запрашивайте области с ПДн.
scope_missing403Scope is missingНет нужной области, либо она срезана ролью интеграции, правами владельца или тарифом.Проверьте области в GET /me (key.scopes) и права владельца.
tenant_inactive403Account is not activeУчётная запись арендатора не активна.Обратитесь в поддержку.

Запрос

КодHTTPНазваниеКогда приходитЧто делать
bad_request400Bad requestТело запроса не JSON либо неверный Content-Type или заголовок.Исправьте запрос; повтор без изменений бессмыслен.
idempotency_key_required400Idempotency-Key header is requiredДля этого запроса обязателен заголовок Idempotency-Key.Добавьте заголовок со значением, уникальным для операции.
not_found404Not foundРесурса нет либо он принадлежит другому арендатору (для клиента это одно и то же).Проверьте идентификатор.
method_not_allowed405Method not allowedМетод не поддерживается этим адресом.Проверьте справочник.
channel_not_configured409Integration channel is not configuredУ интеграции нет канала api: заводить диалоги и принимать сообщения клиентов некуда. Канал подключается в кабинете (Настройки → API → «Подключить канал чата»).Подключите канал в кабинете; channel_id виден в GET /me. Повтор без этого бессмыслен.
encryption_key_required409Encryption key is requiredИнтеграция настроена выдавать поля с персональными данными только в формате JWE (режим required), а открытый ключ получателя не зарегистрирован. Бывает только на ячейках EN и ID.Зарегистрируйте свой открытый ключ (PUT /me/encryption-key или кабинет) либо запросите поля без персональных данных через fields=.
idempotency_conflict409Idempotency key was used with a different requestIdempotency-Key уже использован с другим телом запроса.Для нового запроса используйте новый ключ либо повторите прежний запрос.
invalid_state409Invalid stateДействие недопустимо в текущем состоянии ресурса.Перечитайте ресурс и проверьте его состояние.
operation_in_progress409Operation is in progressПараллельный повтор: операция с этим Idempotency-Key ещё выполняется.Подождите Retry-After либо опросите операцию.
precondition_failed412Precondition failedIf-Match не совпал с текущей версией ресурса: его изменили.Перечитайте ресурс и примените правку к актуальной версии.
payload_too_large413Payload too largeТело запроса больше 256 КБ.Уменьшите тело.
validation_failed422Validation failedПараметры не прошли проверку; подробности в errors[].Исправьте запрос по errors[].
precondition_required428Precondition requiredДля изменения не передан If-Match.Передайте версию из последнего чтения.

Деньги и пределы

КодHTTPНазваниеКогда приходитЧто делать
insufficient_funds402Insufficient fundsНа кошельке недостаточно средств для платной операции.Пополните кошелёк.
spend_limit_reached402Spend limit reachedДостигнут суточный предел трат интеграции (сутки по часовому поясу ячейки) либо оценка стоимости операции выше максимума одной операции (по умолчанию 100 в валюте кошелька). Предел одновременных операций — отдельный код concurrency_limit (429).Дождитесь следующих суток или повысьте предел; для максимума операции — выберите агенту модель дешевле или уменьшите max_tokens. Предел и траты — GET /me (wallet.daily_spend, limits.max_operation_cost).
wallet_suspended402Wallet is suspendedОбмен остановлен: баланс кошелька арендателя отрицателен или кошелёк заблокирован. Отвечают 402 все маршруты, кроме GET /me и GET /wallet; входящие данные (события, сообщения, лиды) не принимаются, исходящие вебхуки откладываются. В ответе есть topup_url и balance.Пополните кошелёк по topup_url (нужен вход сотрудника с правом пополнения). Обмен возобновится сам в течение 30 секунд после зачисления; состояние видно в GET /wallet. События не теряются: вебхуки доставятся после пополнения.
concurrency_limit429Too many concurrent operationsУ интеграции уже выполняется наибольшее число одновременных платных операций (по умолчанию 5, значение — GET /me, limits.paid_concurrency).Подождите Retry-After или завершения текущих операций и повторите с тем же Idempotency-Key. Ставьте реплики в очередь у себя.
rate_limited429Too many requestsПревышен предел частоты запросов.Подождите Retry-After секунд и повторите с тем же Idempotency-Key.

Платформа

КодHTTPНазваниеКогда приходитЧто делать
internal_error500Internal errorВнутренняя ошибка платформы. Подробности в ответе не раскрываются.Повторите с паузой; при повторении сообщите request_id в поддержку.
service_unavailable503Service unavailableХранилище пределов или база недоступны, либо API не включён на ячейке: безопасно принять запись нельзя.Повторите с паузой и тем же Idempotency-Key.
upstream_unavailable503Upstream service unavailableНедоступна внешняя зависимость, например языковая модель.Повторите с паузой и тем же Idempotency-Key.