POST /v1/videos для создания асинхронной задачи генерации видео Seedance. Опрашивайте задачу до её завершения, затем скачайте видео по возвращённому URL Flatkey.
Поддерживаемые модели: seedance-2.0, seedance-2.0-fast, seedance-2.0-mini и seedance-2.5. Доступность зависит от вашего аккаунта; используйте GET /v1/models для получения актуального списка моделей.
Эндпоинт
Flatkey также принимает
POST /v1/video/generations и GET /v1/video/generations/{task_id}. Используйте /v1/videos для стандартной структуры ответа и нативных данных usage.Запрос
Заголовки
Параметры тела запроса
string
обязательно
Идентификатор модели Seedance:
"seedance-2.0", "seedance-2.0-fast", "seedance-2.0-mini" или "seedance-2.5".array
обязательно
Мультимодальные входные элементы. Включите хотя бы один непустой текстовый элемент, изображение, видео или аудио. См. элементы
content.string
Разрешение выходного видео. По умолчанию:
"720p".string
Соотношение сторон выходного видео:
"16:9", "4:3", "1:1", "3:4", "9:16", "21:9" или "adaptive". По умолчанию: "adaptive". При "adaptive" модель подбирает соотношение сторон по входным изображениям или видео. Для seedance-2.5 задачи с первым кадром и с первым и последним кадрами поддерживают только "adaptive".integer
Длительность видео в секундах. По умолчанию:
5. Модели Seedance 2.0 принимают значения от 4 до 15; seedance-2.5 — от 4 до 30.boolean
Добавить водяной знак “AI generated” в правый нижний угол. По умолчанию:
false.boolean
Сгенерировать синхронизированную монофоническую звуковую дорожку. По умолчанию:
true. Установите false, если вам нужно только видео; сгенерированное аудио иногда может не пройти проверку на авторские права.boolean
Вернуть последний кадр сгенерированного видео в виде изображения. По умолчанию:
false. При значении true завершённая задача содержит metadata.last_frame_url, по которому скачивается JPEG того же размера, что и видео, без водяного знака. Используйте его как first_frame следующей задачи, чтобы выстраивать клипы в цепочку. Как и metadata.url, этот URL не требует заголовка авторизации; не раскрывайте его посторонним.string
Только для
seedance-2.5. Контейнер сгенерированного видео: "mp4" или "mov". По умолчанию: "mp4". MOV сохраняет больше цветовой точности для цветокоррекции и композитинга (H.264, YUV 4:4:4, звук PCM), но некоторые плееры не могут его открыть. Эндпоинт контента отдаёт результаты в MOV с типом video/quicktime.string
Только для
seedance-2.5, для задач в режиме референса. Сообщает модели, какую задачу вы хотите выполнить: "auto" (по умолчанию), "reference", "edit" или "extend". Если задать значение явно, проверки типа задачи выполняются уже при отправке, поэтому недопустимая комбинация сразу завершается ошибкой, а не после запуска задачи. Для "reference", "edit" и "extend" в content нужны референсные элементы; запрос только с текстом и "reference" отклоняется. См. редактирование и продление видео.integer
Приоритет в очереди от
0 до 9. По умолчанию: 0. Задача с более высоким значением встаёт в очередь перед задачами с более низким приоритетом, ожидающими ту же модель. Поддерживается всеми моделями Seedance 2.0 и seedance-2.5. Значения вне диапазона 0–9 отклоняются с кодом 400.integer
Сколько секунд задача может ожидать и выполняться, прежде чем истечёт. По умолчанию:
172800 (48 часов). Укажите меньшее значение, если запоздалый результат вам не нужен.string
Публичный HTTPS URL, на который отправляется
POST при каждом изменении статуса задачи. См. Колбэки задач. URL должен использовать https, не содержать учётных данных пользователя, быть не длиннее 2048 символов и разрешаться в публичный адрес; иначе запрос отклоняется с кодом 400.Элементы content
Каждый URL может быть публичным HTTPS URL, data URI вида
data:<mime>;base64, (только для изображений и аудио) или ссылкой asset:// из библиотеки ассетов. Размер всего тела запроса должен быть меньше 64 МБ.
Для каждой задачи выберите один режим ввода. Смешивать режимы нельзя:
Редактирование видео
seedance-2.5 умеет редактировать или продлевать существующее видео в режиме референса. Опишите изменение в промпте и ссылайтесь на видео как @Video1.
seedance-2.5 с референсным видео, редактирование тарифицируется по ставке для запросов с видео при выбранном разрешении за фиксированные 30 секунд, независимо от длительности входного и выходного видео.
Режим черновика
seedance-2.5 может сначала сгенерировать недорогой черновик в 480p, чтобы вы проверили сцену, планы и движение, прежде чем платить за финальное видео. Для этого нужны два запроса:
- Создайте черновик. Отправьте обычный запрос с
"draft": trueи"resolution": "480p". Он тарифицируется как обычное видео 480p. - Сгенерируйте финальное видео. После завершения черновика отправьте запрос с
"resolution": "1080p", в котором единственный элементcontent— этоdraft_taskсо ссылкой на идентификатор задачи черновика.
draft_task параметры duration, ratio, frames, seed, generate_audio, omni_reference_task_type, draft и любые другие элементы content: такой запрос отклоняется с кодом 400. Параметры return_last_frame, output_format, watermark, priority, execution_expires_after и callback_url по-прежнему можно задавать.
Seedance не принимает напрямую изображения или видео с реальными человеческими лицами. Загрузите их как ассеты реального человека и ссылайтесь на них через
asset://.Примеры запросов
Входные данные первого и последнего кадра
Мультимодальный референс
Ответ
Поля ответа
string
Публичный идентификатор задачи, используемый для опроса задачи и скачивания готового видео.
task_id содержит то же значение.string
Статус задачи:
queued, in_progress, completed или failed.integer
Прогресс генерации от 0 до 100.
integer
Unix-метка времени создания задачи.
Опрос статуса задачи
Значения статусов
Колбэки задач
Укажитеcallback_url, чтобы получать изменения статуса вместо опроса или вместе с ним. Flatkey отправляет POST с Content-Type: application/json, когда задача переходит в статус in_progress, completed или failed. Тело запроса в точности совпадает с тем, что в этот момент возвращает GET /v1/videos/{task_id}, включая metadata.url и metadata.last_frame_url для завершённых задач.
Ответьте любым статусом
2xx в течение 5 секунд. Иначе Flatkey повторит отправку дважды, через 2 и 8 секунд, после чего прекратит попытки. Flatkey не следует редиректам. Колбэки не подписываются, поэтому, прежде чем действовать на основе результата, проверьте его опросом задачи и продолжайте считать опрос источником истины на случай потери колбэка.
Скачивание видео
video/mp4 в потоковом режиме или video/quicktime, если в задаче использовался output_format: "mov". Он не требует Bearer-токена и может использоваться непосредственно как источник <video>.
Ошибки
Ошибки на этапе запроса используют стандартный конверт ошибок Flatkey:Сквозной пример
Этот пример создаёт задачу, опрашивает её каждые пять секунд и скачивает готовое видео. Требуетсяjq.