GETAPI
СвязатьсяВойти
GETAPI/Документация/Ошибки API

Ошибки API

Структура ошибок, HTTP-статусы и действия клиента

Проверяйте HTTP-статус, тип содержимого и объект error до чтения результата модели

Формат ошибки

json
{
  "error": {
    "code": "",
    "message": "Invalid token (request id: example)"
  }
}
ПолеТипОписание
error.messagestringСообщение о причине
error.codestring, number или nullКод ошибки, может быть пустым
error.typestringДополнительный тип, если присутствует
error.paramstring или nullПараметр, если указан

Состав полей зависит от источника ошибки Строка request id: в сообщении может отсутствовать Не привязывайте обработчик к полному тексту с конкретным идентификатором

Ошибки OpenRouter и расчёта

Код или сообщениеКак разбирать
model_price_error, no available endpointsДля модели нет доступных upstream endpoints
model_price_error, no compatible priced endpointНет подходящего исполнителя с ценой при заданных ограничениях провайдера и параметров
model_price_error, сообщение о configured_price или резервеМетод не смог определить цену или резерв, одного изменения текста запроса недостаточно
invalid_batch_priceНе удалось определить цену batch-варианта, читайте вложенное сообщение
upstream_errorОшибка OpenRouter или исполнителя, дополнительные сведения могут находиться в metadata

model_price_error не всегда означает отсутствие тарифа у модели. Проверьте полный текст ошибки, модель, метод и объект provider

При 429 смотрите источник ограничения, например metadata.provider_name и metadata.limit_source, если они присутствуют. Статус сам по себе не определяет, кто ограничил запрос

HTTP-статусы

СтатусВозможная причинаДействие
400Некорректный JSON, пропущенное поле, недопустимый параметр или данныеИсправить запрос
401Ключ отсутствует или не принятПроверить авторизацию
403Запрет доступа или неподходящий класс моделиПроверить права, модель и метод
404Неизвестный путь, метод или ресурсПроверить URL и HTTP-метод
429Ограничение частоты или квоты, если возвращено сервисом или поставщикомУменьшить нагрузку, учитывать Retry-After при наличии
503 с model_not_foundМодель не найдена или недоступна для такого вызоваСверить идентификатор с каталогом
Другие 5xxВозможный временный сбой сервиса или поставщикаОценить безопасный ограниченный повтор

Код 503 сам по себе не определяет стратегию повтора

Типичные ошибки запроса

СообщениеПричина
field messages is requiredОтсутствует messages
Model name not specified, model name cannot be emptyНе передан model
You are not allowed to sample from this modelМодель не подходит для метода генерации
max_tokens must be greater than thinking.budget_tokensОбщий лимит не превышает бюджет рассуждений
Could not process imageНевозможно обработать изображение
Invalid Responses API requestНекорректный запрос Responses или неподдерживаемое продолжение

Ошибка без JSON

Неизвестный путь или промежуточный сервер может вернуть HTML или текст Сохраняйте HTTP-статус и ограниченный безопасный фрагмент ответа Не заменяйте исходную ошибку исключением парсера JSON

Ошибка внутри HTTP 200

В Chat Completions ошибка может находиться в choices[].error, а finish_reason иметь значение error, даже если message.content содержит часть ответа Проверяйте эти поля до использования результата, HTTP-статус и непустой текст сами по себе не подтверждают завершение генерации

Потоковые ответы

До начала SSE ошибка может прийти как обычный JSON Во время потока обрабатывайте события ошибки и разрыв соединения Не считайте неполный поток успешно завершённым ответом

Ответ без текста

HTTP 200 не гарантирует непустой текст Вызов инструмента, отказ модели, рассуждения и достижение лимита обрабатываются по структуре ответа Не классифицируйте каждый пустой content как технический сбой

Обращение в поддержку

Сохраните время UTC, HTTP-метод, путь, модель, статус и идентификатор запроса, если он доступен Удалите API-ключ и пользовательские секреты перед отправкой данных

Повторы, журнал и поддержка

Назад
← Идентификаторы моделей
Далее
Лимиты и повторные запросы →