Ошибки Developer API и лимиты запросов
Обновлено: 11 ноября 2026 · 6 мин чтения
API возвращает 2xx при успехе и 4xx или 5xx при ошибке. В каждом ответе есть заголовок X-Request-Id: когда пишете в поддержку ([email protected]), передайте это значение, так мы быстро найдём запрос в журнале.
Шаги
-
1
Формат ошибки
Ошибки токена, scope, лимита и пути имеют одинаковый формат:
{ "error": { "code": "insufficient_scope", "message": "This action needs the messages:send permission.", "required_scopes": ["messages:send"], "request_id": "3f9c2a1e-8b7d-4c6a-9e15-2d4b7a0c9f31" } }codeне меняется, в коде проверяйте именно его.messageпредназначен для человека и может меняться, сAccept-Language: enприходит на английском. В ответе 403 есть также заголовокWWW-Authenticate. Собственные проверки эндпоинта (обязательное поле, неверное значение) пока возвращают ошибку в старом формате, обычно с 422:{ "error": "..." }или{ "message": "...", "attributes": [...] }. Ошибки/oauth/*приходят в формате OAuth:{ "error": "invalid_client" }. -
2
Ошибки токена и разрешений
- 401
invalid_token: токена нет, он не распознан или отозван. Проверьте заголовок:Authorization: Bearer clomni_pat_xxx. - 401
token_expired: срок истёк. Личный токен действует 30-365 дней, токен приложения 1 час. - 403
insufficient_scope: в токене нет scope. Посмотритеrequired_scopes, добавьте scope в приложение и отправьте на review (проверку), после одобрения создайте новый токен и выберите этот scope. - 403
endpoint_not_available: этот эндпоинт закрыт для токенов разработчика, его нет в API reference. - 403
app_not_approved: у приложения не осталось одобренных scope. - 403
app_suspended: Clomni приостановил приложение или приложение архивировано. Посмотрите причину в письме. - 403
app_owner_not_admin: владелец приложения больше не администратор workspace. Когда роль вернут, всё снова заработает. - 403
installation_owner_not_admin: человек, который подключил публичное приложение, больше не администратор, приложение нужно подключить заново. - 403
account_suspended: workspace приостановлен, работает толькоworkspace:read.
- 401
-
3
Другие ошибки
- 400
invalid_request: путь или параметр неверный (напримерlimitвне диапазона 1-100). - 402
ai_credit_spent: AI-кредит workspace закончился (POST /ai_agents/{ai_agent_id}/ask). Не повторяйте автоматически. - 404
not_found: объекта нет, или он относится к другому workspace. 404test_channel_missing: тестовый канал не создан. - 403
test_channel_webhook: для тестового канала нельзя указать адрес вебхука. 403sandbox_restricted: в старом sandbox отправка наружу закрыта. - 409
conflict: второй экспорт одновременно с первым. 409idempotency_key_reused: тот жеIdempotency-Keyпришёл с другим телом. 409idempotency_key_in_progress: запрос с тем же ключом ещё выполняется. - 422: собственная проверка эндпоинта, например второй контакт с тем же e-mail. Исправьте тело.
- 500
internal_error: ошибка на нашей стороне. Повторите чуть позже, а если ошибка повторяется, напишите нам сrequest_id.
Отправка сообщения асинхронная: когда в WhatsApp закрыто 24-часовое окно или канал не подключён, запрос принимается, а потом сообщение получает статус
failed. Причина находится в полеcontent_attributes.external_errorсообщения. Если в WhatsApp QR приходит ограничение на новые диалоги (463), не отправляйте повторно: каждая попытка продлевает ограничение. - 400
-
4
Когда можно повторять
- 400, 401, 403, 404, 422: не повторяйте, сначала устраните причину.
- 429: подождите столько секунд, сколько указано в заголовке
Retry-After. - 500, 502, 503, 504 и ошибка сети: с растущей паузой (1, 2, 4, 8 секунд и случайная добавка), не больше 5 раз.
Повторяя POST, передавайте
Idempotency-Key, чтобы сообщение не ушло дважды. -
5
Лимиты запросов
- Общий: 300 запросов в минуту на токен.
- Все токены приложения вместе: 600 запросов в минуту. Если создать много токенов, лимит не увеличится.
GET /sync/*: 60 в минуту на токен.POST /conversations/{conversation_id}/messages: 60 в минуту на токен.POST /oauth/token: 20 в минуту наclient_idи IP.POST /exports: 1 задача одновременно на workspace, 6 в день.
В каждом ответе
/v1, кроме/v1/meи/v1/oauth/*, есть заголовкиRateLimit-Limit,RateLimit-RemainingиRateLimit-Reset(секунды). КогдаRateLimit-Remainingприближается к нулю, замедлитесь. -
6
Если пришёл 429
При превышении лимита приходит 429
rate_limitedс заголовкомRetry-After. Пока это время не прошло, не отправляйте запросы с тем же токеном. Если заголовка нет, ждите с растущей паузой. Не запрашивайте список заново каждую минуту: получайте изменения вебхуками, а пропущенное забирайте черезupdated_since. Обновляйте токен приложения, когда он истекает, а не перед каждым запросом. Если нужен лимит выше, напишите на [email protected]: приложение, эндпоинт, ожидаемый объём и причина.Лимит API не отменяет собственный лимит канала: у номера WhatsApp Business API есть дневной лимит и рейтинг качества от Meta, а номер WhatsApp QR могут заблокировать за слишком много сообщений или за нежелательные сообщения.