Как разобрать неудачный запрос к Seedance
- 1
Читайте код, а не сообщение
Решайте по code (ошибки запроса) или job.errorCode (ошибки задачи): сообщения могут меняться, коды нет.
- 2
Сначала проверьте ограничения
Большинство ответов 400 это длительность, разрешение или соотношение сторон, которых нет у модели. GET /v1/models показывает ограничения каждой модели.
- 3
Уважайте 429
Подождите Retry-After секунд перед повторной отправкой.
- 4
Повторяйте безопасно
После таймаута отправьте запрос с тем же Idempotency-Key. После отклоненного промпта измените его и возьмите новый ключ.
Ошибки запроса (HTTP-вызов не проходит)
| Код | Статус | Значение | Решение |
|---|---|---|---|
| invalid_api_key | 401 | Ключ не передан, указан неверно или отозван. | Передавайте Authorization: Bearer <ключ>. Если ключ отозван, создайте новый. |
| insufficient_balance | 402 | Токенов меньше, чем стоит задача по расчету. | Пополните баланс в Billing. Ссылка есть в data.top_up_url. |
| account_not_active | 403 | Аккаунт разработчика приостановлен. | Напишите в поддержку. |
| scope_missing | 403 | У ключа нет scope, нужного этому эндпоинту. | Используйте ключ с этим scope. |
| job_not_found | 404 | В аккаунте этого ключа нет задачи с таким id. | Проверьте id: задачи видны только своему аккаунту. |
| character_not_found | 404 | Персонажа с таким id или slug нет. | Получите список персонажей через GET /v1/characters. |
| upload_not_found | 404 | Такого upload_id нет в этом рабочем пространстве. | Создайте загрузку заново. |
| reference_upload_not_developer | 400 | The upload_id is a file uploaded on the website, not through the API. | Upload this file with /v1/uploads first. |
| reference_upload_not_found | 404 | upload_id референса нет в этом рабочем пространстве. | Загрузите файл заново и передайте новый upload_id. |
| video_edit_source_not_found | 404 | Такого source_video_upload_id нет. | Загрузите клип с upload_type VIDEO. |
| upload_in_use | 409 | Эту загрузку еще использует задача в очереди или в работе. | Удалите ее после завершения задачи. |
| character_pending | 409 | Персонаж еще на проверке. Ничего не зарезервировано. | Подождите retry_after секунд и повторите запрос. |
| upload_too_large | 413 | Файл больше допустимого размера для своего типа. | Изображения до 50 MB, видео до 200 MB, аудио до 15 MB. |
| character_registration_failed | 422 | Изображение персонажа не прошло проверку. | Зарегистрируйте персонажа еще раз с другим изображением. |
| rate_limited | 429 | Слишком много запросов за интервал. | Подождите столько секунд, сколько указано в заголовке Retry-After. |
| prompt_required | 400 | Промпт не передан (для озвучки: текст). | Добавьте промпт. |
| prompt_too_long | 400 | Промпт длиннее лимита модели. | Сократите его; GET /v1/models показывает maxPromptChars. |
| model_not_found | 400 | Неизвестный алиас модели. | Используйте id из GET /v1/models. |
| duration_not_supported | 400 | Модель не поддерживает такую длительность. | Передайте одну из длительностей модели. |
| aspect_ratio_not_supported | 400 | Модель не поддерживает такое соотношение сторон. | Передайте одно из соотношений сторон модели. |
| resolution_not_supported | 400 | Модель не поддерживает такое разрешение. | Передайте одно из разрешений модели. |
| reference_combination_not_supported | 400 | Эти референсы нельзя сочетать, например первый и последний кадр вместе с изображениями-референсами. | Передавайте один тип в запросе. |
| upload_invalid | 400 | В запросе на загрузку не хватает поля или у поля неверный тип. | Передайте file_name, mime_type, file_size и upload_type. |
| video_edit_model_not_supported | 400 | Для редактирования видео нужна модель семейства Seedance 2.0 (2.0, Fast или Mini). | Используйте kreator-video-pro, kreator-video-fast или kreator-video-mini. |
| video_edit_source_required | 400 | Для редактирования видео нужен исходный клип. | Передайте source_video_upload_id или video. |
| voice_required | 400 | Для синтеза речи нужен голос. | Используйте id из GET /v1/voices. |
| paid_account_required | 403 | Lip Sync needs a paid account. Nothing was charged. | Top up with a card under Billing. |
| paid_check_unavailable | 503 | The account's payment status could not be read just now. Nothing was charged. | Send the same request again in a moment. |
| audio_reference_too_long | 400 | The audio references add up to more than the model accepts in total (15 s on Seedance 2.0, 30 s on 2.5). Nothing was charged. | Trim or remove audio so all audio references combined fit. |
| image_upload_not_found | 404 | The image_upload_id isn't in this workspace. | Upload the photo with upload_type IMAGE and use the new upload_id. |
| audio_upload_not_found | 404 | The audio_upload_id isn't in this workspace (or audio_job_id isn't a completed /v1/audio job). | Upload the track with upload_type AUDIO, or use a completed audio job id. |
| audio_too_short | 400 | The voice track is under 4 seconds. Nothing was charged. | Send 4 seconds to 5 minutes of audio. |
| audio_too_long | 400 | The voice track is over 5 minutes. Nothing was charged. | Trim it to 5 minutes or less. |
| audio_unreadable | 400 | The audio couldn't be read. Nothing was charged. | Use an MP3 or WAV under 15 MB. |
| image_rejected | 422 | The photo didn't pass the safety check. Nothing was charged. | Use a different photo. |
| internal_error | 500 | Сбой на нашей стороне. | Повторите запрос с тем же Idempotency-Key. |
| dispatch_disabled | 503 | Генерация в этой среде приостановлена. | Повторите позже. |
Ошибки задачи (задача завершается неудачей, токены освобождаются)
| Код | Значение | Решение |
|---|---|---|
| reference_rejected | Референс не принят. | Сохраните лицо как персонажа через POST /v1/characters или возьмите другое изображение. |
| reference_asset_pending | Новый референс еще на проверке. | Подождите errorData.retry_after секунд и отправьте его снова с тем же upload_id и новым Idempotency-Key. |
| reference_asset_failed | Референс не прошел проверку. | Используйте другой файл. |
| generation_rejected | Запрос не принят (промпт, референс или параметры). | Измените промпт, референс или параметры и повторите. |
| generation_timeout | Задача не завершилась вовремя. Зарезервированные токены освобождаются. | Повторите запрос с новым Idempotency-Key. |
| generation_unavailable | Модель временно недоступна. | Повторите позже или выберите другую модель. |
| generation_failed | Генерация не удалась. | Повторите; если ошибка повторяется, измените промпт или референсы. |
Как использовать в видео реальное лицо?
Сохраните лицо как персонажа через POST /v1/characters и передавайте его id: так лицо стабильно сохраняется от клипа к клипу. Промпты, которые просят выдать себя за конкретную знаменитость или публичную фигуру, не принимаются; описывайте внешность, одежду и стиль.
Почему у результата другое соотношение сторон?
С входным изображением или первым кадром режим adaptive следует за изображением. Передавайте явный aspect_ratio, когда результат должен попасть в формат, и проверьте, что модель его поддерживает.
Почему camera_fixed не сработал с входным изображением?
Не передавайте camera_fixed вместе с входным изображением или кадром, а опишите камеру в промпте (например, locked-off camera).
Частые вопросы
Списываются ли токены, если задача Seedance не удалась?
Нет. Зарезервированные токены неудачной задачи освобождаются.
Что значит insufficient_balance?
Баланс токенов меньше расчетной стоимости задачи. Пополните его в консоли; ничего не было зарезервировано.
Что делать с 429?
Подождите столько секунд, сколько указано в заголовке Retry-After, и отправьте запрос снова.
Почему мой промпт отклонили?
Он нарушал правила допустимого использования. Измените промпт и создайте новую задачу.


