Перейти к содержанию
Вся документация

Справочник

Ошибки

Ошибки приходят в формате OpenAI, со стабильным code, по которому можно сопоставлять, и message, написанным для людей. Отклонённый или неудачный вызов ничего не стоит.

Проверено 26 октября 2026 г.

Формат

Response
{
  "error": {
    "type": "rate_limit_error",
    "code": "daily_cap",
    "message": "This call needs up to $0.02 and the key has $0.01 left of its $2.00 daily cap, which resets at 00:00 UTC. …"
  }
}

Сопоставляйте по code, а не по message: сообщения могут переформулировать, коды остаются. type соответствует типу OpenAI, поэтому SDK выбрасывают ожидаемое исключение.

Все коды

СтатусКодКогдаЧто делать
401missing_keyКлюч не отправлен.Отправьте его как Authorization: Bearer sk-nokeep-…. Создайте ключ в консоли или сначала попробуйте sk-nokeep-test.
401invalid_keyКлюч неверный или отозван.Скопируйте ключ заново оттуда, где вы его сохранили; консоль показывает только последние четыре символа. Если ключ потерян, создайте новый.
403account_frozenПлатные функции на аккаунте этого ключа приостановлены.Напишите нам со страницы контактов.
429rate_limitedКлюч отправил больше 120 запросов за минуту (20 для тестового ключа, на адрес).Подождите столько секунд, сколько указано в Retry-After, и повторите.
429daily_capВызов может превысить дневной лимит ключа.Поднимите лимит в консоли, уменьшите max_tokens или дождитесь 00:00 UTC (Retry-After скажет, сколько ждать).
402insufficient_creditsКупленных кредитов на аккаунте не хватает на этот вызов.Пополните баланс от $5 в консоли или уменьшите max_tokens. Кредиты тарифа остаются в приложении.
400invalid_jsonТело запроса не JSON-объект.Отправьте Content-Type: application/json и JSON-объект.
413too_largeЗапрос больше 12 МБ.Отправляйте картинки ссылками, а не data URL, или отправляйте меньше за раз.
404model_not_foundТакого id модели у нас нет.GET /v1/models выводит список id. Проверьте опечатку или пропущенный -uncensored.
400invalid_messagesmessages нет или он пуст, слишком длинный, содержит неизвестную роль, или у сообщения tool нет tool_call_id.Отправьте от 1 до 2 000 сообщений, у каждого роль system, developer, user, assistant или tool.
400unsupported_nn больше 1.Отправляйте по одному запросу на каждый нужный ответ.
400invalid_reasoning_effortМодель не принимает такой reasoning_effort.DeepSeek принимает none, low, high или max. GLM принимает low или high.
400unsupported_tool_choiceGLM получила в tool_choice именованную функцию или "required".Отправляйте GLM auto или none; она сама выбирает инструменты. DeepSeek принимает любую форму.
400unsupported_inputЧасть содержимого такого вида, который модель не читает.Картинки отправляйте DeepSeek; GLM читает только текст.
400too_many_imagesБольше десяти картинок в одном запросе.Отправляйте не больше десяти.
422hard_limitЗапрос нарушает одно из жёстких ограничений в условиях.Ничего не списано. Уберите это сообщение из истории, которую отправляете обратно, иначе следующий вызов тоже остановится.
400rejectedМодель не смогла принять запрос в таком виде.Сверьте параметры со списком модели в разделе Модели. Ничего не списано.
503busyМодель занята.Повторите через столько секунд, сколько указано в Retry-After. Ничего не списано.
503model_unavailableМодель отключена на нашей стороне.Пока используйте другую модель; страница статуса покажет, когда она вернётся.
502upstream_errorМодель сбоила, не написав ни слова.Повторите через минуту. Ничего не списано.
404not_foundТакого маршрута нет.API обслуживает GET /v1/models, GET /v1/models/{id}, GET /v1/status и POST /v1/chat/completions.
404api_closedAPI выключен.Попробуйте позже.
В потокеКодКогдаЧто делать
—stream_cutМодель остановилась, не закончив, посреди потока.Оплачивается только написанное. Повторите, чтобы получить остальное, или продолжите с того, что пришло.

Какие повторять

  • Повторяйте 429 rate_limited, 503 busy и 502 upstream_error — через Retry-After секунд, если он есть.
  • Не повторяйте 400, 401, 402, 404 или 422: тот же запрос получит тот же ответ.
  • 429 daily_cap ждёт 00:00 UTC. Лучше поднимите лимит.