Ошибки
HTTP-коды на запросах
| Код | Когда |
|---|---|
200 OK | GET /tasks/{id} — задача найдена |
202 Accepted | POST /generate — задача создана, в ответе task_id |
400 Bad Request | Невалидное тело: отсутствуют обязательные параметры модели, плохой JSON |
401 Unauthorized | Нет заголовка Authorization, или ключ неверный/удалён |
402 Payment Required | Баланса на ключе не хватает на запрашиваемую модель |
403 Forbidden | Запрос с не-allowed IP, или модель не в allowed_models для ключа |
404 Not Found | GET /tasks/{id} — task_id не существует или принадлежит другому юзеру |
422 Unprocessable Entity | Pydantic не смог распарсить тело (неверные типы и т.п.) |
429 Too Many Requests | Превышен rate_limit_per_min ключа |
503 Service Unavailable | Включён maintenance-режим (см. system.maintenance_mode) |
Ошибки внутри failed-задачи
Когда GET /tasks/{id} возвращает status: failed, поле error содержит человекочитаемое описание. Полный технический трейс остаётся только в логах сервера. Самые частые причины:
Сервис временно недоступен E-294. Высокая нагрузка. Пожалуйста попробуйте позже
Provider billing error — провайдер вернул ошибку оплаты на нашей стороне. Это наша проблема, не клиента. Деньги возвращены, попробуй чуть позже. Если ошибка повторяется — пиши админу.
Provider rejected prompt: contains restricted content
Safety-фильтр провайдера отказал в генерации. Чаще всего — насилие, NSFW, изображения конкретных людей. Переформулируй промпт.
Timeout while waiting for provider response
Провайдер взял задачу, но не вернул результат за 10 минут. Сетевые проблемы у провайдера, или модель в очереди слишком долго. Деньги возвращены — можно ретраить, скорее всего в этот раз получится у fallback-провайдера.
Concurrency limit exceeded
У провайдера временно нет свободных слотов под нагрузкой. Задача автоматически переотправляется в очередь — это не финальный failed, а transient. Через 10-30 секунд должна перейти в processing.
Ошибки парсинга параметров модели
unexpected parameter, invalid aspect_ratio, duration must be between 5 and 8 — параметры модели не прошли валидацию провайдера. Сверь со страницей конкретной модели в каталоге.
Что делать при failed
- Проверь
error— там обычно сказано, что не так. - Деньги уже вернулись — проверять и не нужно, refund автоматический.
- Стоит ли ретраить? Зависит:
- Сетевые/таймауты — да, ретраить с задержкой 30-60 секунд.
- Safety/Validation — нет, переформулируй промпт или поправь параметры.
- Billing — пробовать другой
model_nameили подождать (мы чиним).