Справочник · Ошибки

Ошибки Photta API все типы и что с ними делать

В двух словах

Каждый сбой Photta API возвращает один и тот же формат: статус, `error.type`, сообщение и `request_id`. Повторяйте запросы при 429 с учётом заголовка Retry-After и при 5xx с экспоненциальной задержкой; ошибки 400, 401 и 402 исправляйте в своём коде.

  • Ошибки: Типы ошибок (7)
  • Retry-After: Retry-After: 30s
  • Лимиты: 600 запросов/мин

Все показатели на этой странице взяты из документации API Photta · проверено

Типы ошибок

Полный список, опубликованный в документации API.

400invalid_request_error
The request is malformed or contains invalid parameters.
401authentication_error
The API key is missing, invalid, or expired.
402insufficient_credits_error
Your account does not have enough credits.
404not_found_error
The requested resource does not exist.
409conflict_error
The request conflicts with current state — e.g. your concurrent-batch cap is reached.
429rate_limit_error
Too many requests. Slow down and retry.Retry-After: 30
500api_error
An internal server error occurred. Retry later.

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

Одинаковый конверт на каждом endpoint независимо от того, что пошло не так.

{
  "error": {
    "type": "rate_limit_error",
    "message": "Rate limit exceeded."
  },
  "request_id": "req_xxxxxxxx"
}

Обработка ошибок

  • Учитывайте Retry-After

    Ответ 429 содержит заголовок Retry-After. Подождите указанное количество секунд, затем повторите запрос с экспоненциальной задержкой — мгновенный повтор лишь отодвинет следующее окно.

  • При сбоях credits возвращаются

    Если генерация завершилась ошибкой уже после принятия в обработку, списанные credits возвращаются автоматически, поэтому повторный запрос не приведет к двойному списанию.

  • Указывайте request id

    Каждый ответ содержит `request_id`. Логируйте его. Это самый быстрый способ для поддержки найти конкретный сбой среди тысяч других.

  • 409 — сигнал очереди

    Конфликт означает, что достигнут лимит вашего тарифного плана на параллельную обработку пакетов. Выполняйте polling уже запущенного пакета до его завершения, затем отправьте запрос повторно — не крутите запросы вхолостую.

Вопросы об ошибках API

Как выглядит тело ошибки?

Объект `error` с полями `type` и `message`, а также `request_id`. Тип стабилен и предназначен для машинного чтения; сообщение предназначено для человека и может меняться.

Какие ошибки имеет смысл повторять?

429 после ожидания времени из Retry-After, а также 5xx с экспоненциальной задержкой. Ответы 400, 401 или 402 будут завершаться с той же ошибкой, пока что-то не изменится на вашей стороне.

Что означает 402?

`insufficient_credits_error` — на аккаунте недостаточно credits для вызова или для полного резервирования в пакете. Генерация не выполняется, списаний нет.

Как сообщить об ошибке?

Передайте `request_id`, эндпоинт и время. Этой тройки параметров достаточно для точной идентификации вызова; само изображение для поиска не требуется.

Эндпоинты и справочные материалы

Все показатели на этой странице взяты из документации API Photta · проверено

Протестируйте API за пять минут

Сгенерируйте API-ключ Photta, вставьте пример cURL выше, и вы получите первое изображение на модели быстрее, чем сварится кофе.

  • Типы ошибок (7)
  • Retry-After: 30s
  • 600 запросов/мин