88API88API
Руководство пользователяAI-приложенияAPIПомощь и поддержка
Видео (Video)

Seedance (официальная ретрансляция) Video API

Разрешение, длительность, соотношение сторон, референсные материалы, библиотека виртуальных портретов, черновики, последний кадр, веб-поиск, отмена задач, редактирование и продление видео для Seedance 2.0 Mini, 2.0, 2.0 Fast и 2.5.

На этой странице описан вызов видеомоделей Seedance (официальная ретрансляция). Как и другие видеомодели, они создаются через POST /v1/videos и опрашиваются через GET /v1/videos/{id}; аутентификация, загрузка материалов, статусы опроса, скачивание результатов и обработка ошибок описаны в полной спецификации Video API. Здесь приведены только поля и правила, специфичные для этой группы моделей.

Обновлено 2026-10-13. Эти модели ретранслируют официальный API Seedance от Volcengine; это отдельная группа моделей, не совпадающая с Seedance (официальная версия) и SD (облачная версия); параметры и возможности у них не взаимозаменяемы. Эти модели не поддерживают callback_url: запрос с непустым callback_url возвращает 400, задача не создаётся и оплата не списывается (пустая строка считается отсутствующим значением); результаты получайте опросом GET /v1/videos/{id}.

Модели

В таблице приведены ID model этой группы. Они видны только API-ключам с подключённой соответствующей группой; без неё GET /v1/models их не возвращает.

МодельID моделиРазрешениеДлительностьПо умолчаниюЛимит изображений / видео / аудио
Seedance 2.0 Mini (мультиразрешение)doubao-seedance-2.0-mini480P / 720P-1 или 4–15 с5 с9 / 3 / 3
Seedance 2.0 (мультиразрешение)doubao-seedance-2.0480P / 720P / 1080P / 4K-1 или 4–15 с5 с9 / 3 / 3
Seedance 2.0 Fast (мультиразрешение)doubao-seedance-2.0-fast480P / 720P-1 или 4–15 с5 с9 / 3 / 3
Seedance 2.5 (мультиразрешение)doubao-seedance-2.5480P / 720P / 1080P-1 или 4–30 с-1 (авто)30 / 10 / 10

Прежние ID моделей doubao-seedance-2-0-mini-260615, doubao-seedance-2-0-260128, doubao-seedance-2-0-fast-260128 и doubao-seedance-2-5-260628 по-прежнему работают и полностью соответствуют одноимённым моделям из таблицы выше; в каталоге моделей они больше не показываются, поэтому для новых интеграций используйте ID из таблицы.

Общие правила

  • Разрешение: resolution выбирает выходное разрешение из значений в таблице выше (без учёта регистра, например 720p, 4k); по умолчанию 720p.
  • Длительность: целое число секунд в duration (или seconds); -1 — модель сама выбирает длительность.
  • Соотношение сторон: ratio (или aspect_ratio) принимает 16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive; по умолчанию adaptive (по входным материалам). size тоже принимает соотношение сторон или уровень разрешения (например, 16:9 или 1080p); значение, противоречащее ratio, aspect_ratio или resolution, вернёт 400.
  • Промпт: при наличии референсных материалов или первого и последнего кадра prompt можно опустить; если нет ни того, ни другого, вернётся 400.
  • Генерация звука: generate_audio (boolean) со значением false отключает звук; по умолчанию видео со звуком.
  • Необязательные поля: watermark (boolean; при true в правом нижнем углу добавляется водяной знак «AI 生成» («сгенерировано ИИ»), по умолчанию его нет), priority (целое число 0–9, приоритет в очереди), return_last_frame (boolean, см. Последний кадр).
  • Неподдерживаемые поля: seed, camera_fixed, frames, service_tier вернут 400; draft поддерживается только в Seedance 2.5, см. Черновик и финальное видео.

Тарификация

Оплата в этой группе моделей рассчитывается по выходным токенам, которые платформа модели возвращает после завершения задачи, по тарифу, соответствующему сочетанию «разрешение × наличие референсного видео». При создании задачи средства заранее не списываются: в журнале использования сначала появляется запись о создании «操作 …» («Операция …») с суммой 0, а после завершения задачи — запись «任务用量表达式结算» («расчёт по выражению использования задачи»), по которой списывается фактическая стоимость.

Если длительность выбирает модель (duration равно -1 или в Seedance 2.5 длительность не указана), число секунд в записи о создании — это оценка по максимальной длительности, она отображается как «seconds: 30(预估)» (оценка); фактическое списание определяется записью расчёта. Неуспешные и отменённые задачи не оплачиваются.

Референсные материалы

  • Референсные изображения передаются в images, референсные видео — в metadata.referenceVideos, референсное аудио — в metadata.referenceAudios.
  • Поля в единственном числе тоже работают: image и input_reference — как референсные изображения, video — как референсное видео, audio — как референсное аудио. Один и тот же материал, указанный в нескольких полях, учитывается один раз.
  • Каждый элемент может быть строкой URL или объектом { "url": "...", "role": "..." }.
  • Изображения принимаются как публичные URL https:// или Data URI data:; аудио — тоже как публичные URL https:// или Data URI data:.
  • Референсное видео принимается только как публичный URL https://: http://, data:, Base64 и локальные файлы не принимаются; для локального видео сначала получите URL, как описано в разделе Загрузка локальных файлов. Ссылка должна открываться без входа в систему и оставаться действительной до завершения задачи.
  • Серия 2.0 (Mini, 2.0, Fast) не принимает одно лишь референсное аудио: добавьте референсное изображение или видео.
  • Рекомендуется, чтобы суммарная длительность референсных видео и суммарная длительность референсного аудио не превышали 15 секунд каждая для серии 2.0 и 30 секунд каждая для 2.5; при превышении платформа модели может вернуть ошибку уже после создания задачи.
  • Можно также использовать формат массива content из Volcengine Ark (элементы text, image_url, video_url, audio_url; role изображения может быть first_frame, last_frame или reference_image) — как на верхнем уровне, так и внутри metadata.
{
  "model": "doubao-seedance-2.0",
  "prompt": "Человек с изображения танцует в ритме референсного аудио, в стиле движений из референсного видео",
  "duration": 8,
  "resolution": "1080p",
  "ratio": "16:9",
  "images": ["https://cdn.example.com/dancer.jpg"],
  "metadata": {
    "referenceVideos": ["https://cdn.example.com/dance-motion.mp4"],
    "referenceAudios": ["https://cdn.example.com/music.mp3"]
  }
}

Библиотека виртуальных портретов (режим библиотеки)

По умолчанию референсные материалы проходят модерацию непосредственно при отправке в API генерации. Можно также сначала поместить материалы в библиотеку виртуальных портретов и, после того как они пройдут проверку при добавлении, использовать их для генерации:

  • Для изображений задайте "image_source_mode": "asset", для референсных видео — "video_source_mode": "asset" (видео по-прежнему должно быть публичным URL https://). Оба поля можно указать на верхнем уровне или в metadata; они независимы друг от друга.
  • Локальные изображения, загруженные через multipart/form-data, автоматически помещаются в библиотеку виртуальных портретов и отправляются в режиме библиотеки без дополнительных настроек, см. Загрузка файлов.
  • Проверка при добавлении в библиотеку лишь подтверждает, что материал можно использовать; это не подтверждение личности, не распознавание лица и не проверка «живости». Процесса добавления реальных людей с их согласием пока нет, поэтому фотографии реальных людей в режиме библиотеки тоже могут не пройти проверку.
  • Отдельного управления материалами (отдельная загрузка, список материалов, ID материалов) пока нет: материалы нужно передавать в каждом запросе на генерацию.
{
  "model": "doubao-seedance-2.5",
  "prompt": "Человек с изображения 1 надевает ожерелье с изображения 2 и медленно поворачивается в светлой фотостудии",
  "duration": 6,
  "resolution": "720p",
  "ratio": "9:16",
  "image_source_mode": "asset",
  "images": [
    { "url": "https://cdn.example.com/model.png", "role": "reference_image" },
    { "url": "https://cdn.example.com/necklace.png", "role": "reference_image" }
  ]
}

Несколько референсных изображений сохраняют порядок отправки. Укажите в промпте, что изображено на «изображении 1», «изображении 2» и т. д., чтобы модель не перепутала людей или предметы.

Первый и последний кадр

Первый и последний кадр передаются в metadata.firstFrame и metadata.lastFrame и учитываются в лимите изображений.

  • lastFrame требует firstFrame.
  • Первый и последний кадр нельзя сочетать с референсными изображениями, видео или аудио.
  • При использовании первого и последнего кадра Seedance 2.5 (мультиразрешение) требует ratio со значением adaptive (или без него).
{
  "model": "doubao-seedance-2.0-fast",
  "prompt": "Плавный переход от пустой площади ранним утром к той же композиции ночью, когда зажигаются огни",
  "duration": 5,
  "resolution": "720p",
  "metadata": {
    "firstFrame": "https://cdn.example.com/start.jpg",
    "lastFrame": "https://cdn.example.com/end.jpg"
  }
}

Редактирование и продление видео в Seedance 2.5

Когда Seedance 2.5 (мультиразрешение) получает референсное видео, тип задачи можно выбрать через omni_reference_task_type:

ЗначениеСмыслУсловия
auto (по умолчанию)Модель решает по материаламДлительность результата следует за входным видео (duration считается равным -1)
referenceГенерация по референсам—
editРедактирование видеоОбязательно референсное видео; ratio — adaptive; duration — -1
extendПродление видеоОбязательно референсное видео; ratio — adaptive

Кроме того, через output_format можно выбрать mp4 или mov. Оба поля работают только для 2.5; серия 2.0 вернёт 400, если они переданы.

{
  "model": "doubao-seedance-2.5",
  "prompt": "Превратить дневную сцену в дождливую ночь, сохранив движения человека",
  "omni_reference_task_type": "edit",
  "duration": -1,
  "ratio": "adaptive",
  "metadata": {
    "referenceVideos": ["https://cdn.example.com/source.mp4"]
  }
}

Черновик и финальное видео (Seedance 2.5)

Seedance 2.5 (мультиразрешение) может сначала сгенерировать недорогой черновик в 480p, а после проверки результата — финальное видео в 1080p на основе этого черновика. Другие модели черновики не поддерживают.

  1. Создайте черновик: добавьте в запрос "draft": true; разрешение результата всегда 480p. В запросе черновика нельзя одновременно задавать return_last_frame.
  2. Дождитесь успешного черновика: как обычно опрашивайте GET /v1/videos/{id}; когда статус станет completed, просмотрите черновик.
  3. Создайте финальное видео: передайте в content только один элемент draft_task, указав в id значение id задачи черновика (task_…, возвращённое при создании черновика). Финальное видео всегда в 1080p; промпт, материалы, длительность, соотношение сторон, звук и прочее наследуются от черновика, не передавайте повторно prompt, материалы, duration, ratio, generate_audio, omni_reference_task_type или return_last_frame, иначе вернётся 400.
{
  "model": "doubao-seedance-2.5",
  "content": [
    { "type": "draft_task", "draft_task": { "id": "task_REPLACE_WITH_YOUR_DRAFT_TASK_ID" } }
  ],
  "watermark": false
}
  • Можно использовать только успешные задачи черновика, созданные этим же аккаунтом; создайте финальное видео в течение 7 дней после создания черновика.
  • Черновик и финальное видео — две отдельные задачи с отдельной оплатой; финальное видео тарифицируется по уровню 1080p, а если черновик использовал референсное видео, финальное видео тоже тарифицируется по уровню с референсным видео.

Последний кадр

Задайте в запросе "return_last_frame": true, и после успешного завершения задачи можно получить изображение последнего кадра видео — для продолжения съёмки или как первый кадр следующего ролика:

curl https://api.88api.ai/v1/tasks/task_xxx/artifacts \
  -H "Authorization: Bearer sk-ваш-api-ключ"

В возвращённом массиве artifacts последним кадром является элемент с key, равным last_frame; скачайте его по content_url (тоже с API-ключом). Последний кадр не возвращается в ответе GET /v1/videos/{id}. Формат изображения определяется заголовком Content-Type скачанного файла; PNG не гарантируется.

Веб-поиск

Серия Seedance 2.0 и 2.5 поддерживают веб-поиск через tools — это полезно для промптов, которым нужна актуальная информация:

{
  "model": "doubao-seedance-2.0",
  "prompt": "Сгенерируй видео улиц набережной Вайтань с учётом сегодняшней погоды в Шанхае",
  "duration": 5,
  "resolution": "720p",
  "tools": [{ "type": "web_search" }]
}
  • tools поддерживает только {"type": "web_search"}.
  • Выполнять ли поиск, решает модель по промпту; дополнительная плата взимается за количество поисков только тогда, когда поиск действительно выполнен (цену см. в описании цен в консоли), без поиска доплаты нет.

Отмена задачи

Задачу можно отменить, пока она ещё в очереди и генерация не началась:

curl -X DELETE https://api.88api.ai/v1/videos/task_xxx \
  -H "Authorization: Bearer sk-ваш-api-ключ"
  • При успешной отмене возвращается {"id": "task_xxx", "object": "video", "status": "cancelled", "cancelled": true}; затем задача отображается как неуспешная (причина «任务已被用户取消» — «задача отменена пользователем»), оплата не списывается.
  • Задачи, которые уже готовятся, генерируются или завершены, отменить нельзя: возвращается 409 task_not_cancellable, продолжайте запрашивать результат задачи.
  • DELETE /v1/video/generations/{id} работает так же.

Официальный ID задачи

После того как Volcengine Ark примет задачу, GET /v1/videos/{id} возвращает official_task_id (например, cgt-20261012120000-abcde), а в журнале задач консоли также отображается «官方任务 ID» (официальный ID задачи). Если нужно разобраться с проблемой генерации, укажите и id задачи, и официальный ID задачи. Пока задача в очереди и ещё не принята, это поле не возвращается.

Загрузка файлов

Локальные изображения можно загрузить напрямую через multipart/form-data, в том числе несколько: повторяйте одно и то же имя поля (например, image), и по порядку отправки они будут соответствовать «изображению 1», «изображению 2». Загруженные изображения автоматически помещаются в библиотеку виртуальных портретов и отправляются в режиме библиотеки.

curl https://api.88api.ai/v1/videos \
  -H "Authorization: Bearer sk-ваш-api-ключ" \
  -F model=doubao-seedance-2.5 \
  -F "prompt=Человек с изображения 1 надевает ожерелье с изображения 2 и медленно поворачивается" \
  -F duration=6 \
  -F resolution=720p \
  -F "image=@./model.png" \
  -F "image=@./necklace.png"
  • При использовании локальных файлов нельзя одновременно передавать изображения в images, image, input_reference или content.
  • Один файл — не более 64 МБ, весь запрос — не более 128 МБ.
  • Локальные видео и аудио нельзя загрузить напрямую через multipart/form-data: сначала получите URL https://, как описано в разделе Загрузка локальных файлов, и укажите его в поле референсного видео или аудио; для референсного аудио можно также использовать Data URI data:.