Ошибки
Ошибка приходит в формате выбранного протокола. В каждом ответе есть заголовок X-Request-Id: по нему запрос можно найти в журнале и назвать в поддержке.
{
"error": {
"message": "Неверный, отключённый или отозванный ключ API.",
"type": "authentication_error",
"code": "INVALID_API_KEY"
},
"request_id": "req_…"
}
Коды
| Код | HTTP | Что делать |
|---|---|---|
INVALID_API_KEY | 401 | Проверьте ключ. Отключённый или отозванный ключ не работает |
KEY_EXPIRED | 401 | Срок ключа истёк, продлите его или создайте новый |
IP_NOT_ALLOWED | 403 | Добавьте адрес в список разрешённых для ключа |
ACCOUNT_BLOCKED | 403 | Аккаунт заблокирован, напишите в поддержку |
MODEL_NOT_FOUND | 404 | Проверьте ID модели в каталоге |
MODEL_NOT_ALLOWED | 403 | Ключу не разрешена эта модель |
PROTOCOL_NOT_SUPPORTED | 400 | Модель не работает с этим форматом запроса |
VALIDATION_ERROR | 400 | Ошибка в теле запроса, поле указано в param |
UNSUPPORTED_PARAMETER | 400 | Параметр не поддерживается, уберите его |
REQUEST_TOO_LARGE | 413 | Сократите запрос |
QUOTA_EXCEEDED | 402 | Не хватает кредитов на балансе или в лимите ключа |
RATE_LIMITED | 429 | Слишком много запросов, повторите после Retry-After |
CONCURRENCY_LIMIT | 429 | Слишком много одновременных запросов |
IDEMPOTENCY_CONFLICT | 409 | Ключ повтора уже использован с другим телом |
MODEL_UNAVAILABLE | 503 | Модель временно недоступна, выберите другую или повторите позже |
PROVIDER_BUSY | 503 | Провайдер перегружен, повторите позже |
PROVIDER_UNAVAILABLE | 502 или 503 | Провайдер недоступен или ответил ошибкой, расход не списан |
PROVIDER_REJECTED | 400 или 502 | Провайдер отклонил запрос, проверьте параметры и размер |
PROVIDER_TIMEOUT | 504 | Провайдер не ответил вовремя |
BUDGET_EXCEEDED | 503 | Временное ограничение на нашей стороне, повторите позже |
Неизвестный исход
При PROVIDER_TIMEOUT или обрыве связи до ответа запрос мог дойти до модели. Расход в этом случае не списывается, а запрос уходит нам на проверку. Не повторяйте его автоматически без Idempotency-Key.