Видео

Каталог видеомоделей и общий API для создания, проверки и скачивания роликов.

Создавайте видео через POST /v1/videos. Руководство Seedance описывает параметры модели, референсы, получение результатов и восстановление на этом же маршруте.

Доступные модели

СемействоМоделиСтраница
Seedance2.0, 2.5, 2.0 Mini, 2.0 FastМодели, параметры и примеры

Список моделей и их возможностей может зависеть от ключа и тарифа. Перед созданием задачи запросите актуальный каталог у вашего подключения и используйте канонический ID из него.

Общий цикл

  1. Выберите модель и подготовьте текстовый prompt или поддерживаемые референсы.
  2. Отправьте задачу на POST /v1/videos и сохраните возвращённый id.
  3. Проверяйте GET /v1/videos/{id} до итогового статуса.
  4. После completed скачайте файл через GET /v1/videos/{id}/content с API-ключом или по подписанному content.video_url из ответа без API-ключа.

GET задачи использует статусы queued, in_progress, completed и failed. При unknown остановите автоматическую обработку и сохраните ID. См. все статусы и ошибки.

Запрос и ответы

Для Seedance используйте поля OpenAI Videos model, prompt, seconds и size, как в примерах генерации.

При доступе к референсам расширения задаются полями image_urls, video_urls, audio_urls с массивами HTTPS URL. Роли изображений можно задать в image_with_roles: [{"url":"RESULT_URL","role":"first_frame"}]; роли и ограничения соответствуют референсам Seedance. Пропорции задавайте aspect_ratio. Предпочитайте JSON и ссылки на файлы: загрузка файлов через multipart не поддерживается.

json
{
  "model": "seedance-2.5",
  "prompt": "A paper boat glides across a quiet lake.",
  "seconds": 5,
  "resolution": "720p",
  "generate_audio": false
}

Отправьте этот JSON на POST /v1/videos с Authorization: Bearer <API_KEY> и Content-Type: application/json. Пример ответа создания:

json
{
  "id": "task_example",
  "object": "video",
  "status": "queued",
  "progress": 0,
  "created_at": 1790000000,
  "model": "seedance-2.5"
}

GET /v1/videos/{id} с тем же API-ключом возвращает текущий статус. Пример после завершения:

json
{
  "id": "task_example",
  "object": "video",
  "status": "completed",
  "progress": 100,
  "created_at": 1790000000,
  "completed_at": 1790000120,
  "model": "seedance-2.5",
  "content": {
    "video_url": "RESULT_URL"
  }
}

content необязателен; при его отсутствии используйте авторизованный путь скачивания. completed_at появляется после успеха. При failed остановите ожидание и сохраните ID, даже если error отсутствует.

GET /v1/videos/{id}/content принимает API Bearer и может вернуть HTTP 307 со ссылкой в Location. Прочитайте адрес без автоматического перехода, затем отдельно скачайте точный HTTPS URL без API-ключа. Для подписанных ссылок из content действуют те же правила скачивания.