Create Seedance video task
Submit a Seedance 2.0 text-to-video or image-to-video task with rich generation parameters
Available models
| Model ID | Notes |
|---|---|
doubao-seedance-2-0-260128 | Seedance 2.0 standard — higher quality |
doubao-seedance-2-0-fast-260128 | Seedance 2.0 Fast — faster, lower cost |
Call flow
POST /v1/videos— submit task, getid(the task ID)GET /v1/videos/{task_id}— poll untilstatus=completed- Read the video URL from
metadata.url, or download viaGET /v1/videos/{task_id}/content
Parameter precedence
Use top-level parameters (seconds, resolution, ratio, etc.).
Do not pass the same parameter in both the top level and metadata —
if you do, behaviour is server-determined.
Multimodal inputs
For first/last frames, reference videos, or reference audio, usemetadata.content to declare each asset’s type
(image_url / video_url / audio_url) and role explicitly.
Including a video_url asset may trigger video-input pricing.
Resolution notes
480p: lowest cost, fastest — ideal for drafts and previews720p: suitable for regular production1080p: availability depends on upstream account permissions — test in your environment before using in production
Authorizations
Body
Seedance 2.0 video generation request. model and prompt are required.
Place common parameters at the top level; metadata is only for
backwards-compatible legacy fields and complex multimodal asset inputs.
Model ID. The standard version produces higher quality; the Fast version is faster and cheaper.
doubao-seedance-2-0-260128, doubao-seedance-2-0-fast-260128 "doubao-seedance-2-0-260128"
Text prompt. Include subject, action, scene, camera style, lighting, artistic style, and any constraints. Reference multimodal assets in the prompt as "video 1", "image 1", "audio 1", etc.
"A white kitten slowly walking on a clean desk, soft daylight, cinematic lens, stable shot"
Recommended. Video duration in seconds — pass as a string (e.g. "5").
Seedance 2.0 supports 4 to 15 seconds. Do not combine with duration
or metadata.duration.
4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 "5"
Legacy field. Video duration in seconds. New integrations should use
the top-level seconds field instead. Do not combine with seconds
or metadata.duration.
4 <= x <= 155
Recommended. Output resolution. 480p is cheapest and fastest;
720p suits regular production; 1080p availability depends on
upstream account permissions — test before using in production.
480p, 720p, 1080p "720p"
Recommended. Output aspect ratio. adaptive or auto follows
the input asset ratio; specify explicitly when there is no input asset.
adaptive, auto, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 "16:9"
Sora-compatible field, format 1280x720. New integrations should
prefer top-level resolution + ratio to avoid mismatches with
upstream enumerations.
"1280x720"
Single reference image — URL or Base64. Suitable for simple
image-to-video or first-frame reference. For multiple images,
first/last frames, or character references, use metadata.content.
"https://example.com/image.jpg"
Array of reference images — URLs or Base64. When you need to declare
explicit roles (first frame, last frame, plain reference), use
metadata.content instead.
[
"https://example.com/reference-1.jpg",
"https://example.com/reference-2.jpg"
]Recommended. Whether to generate synchronised audio. Enabling this may increase generation time. For dialogue, describe lines, tone, and acoustic environment in the prompt.
false
Recommended. Whether to add a watermark. Usually disabled for external API use.
false
Recommended. Whether to lock the camera. Suited to product shots, standing figures, stable compositions, and surveillance perspectives. Enabling this reduces camera drift.
false
Recommended. Whether to return the last frame of the generated video. Useful for chaining clips — use the last frame as the first frame of the next segment.
false
Random seed. Using the same model, assets, parameters, and seed tends to produce similar results, but exact reproducibility is not guaranteed.
20231234
Number of videos to generate. Keep at 1 for async tasks; submit multiple independent tasks if you need several clips to simplify tracking and billing.
1 <= x <= 11
Response format. Use url.
url "url"
User identifier for auditing and abuse monitoring; not used in generation.
"user-1234"
Seedance 2.0 extended parameters. In most cases, use the top-level request
fields instead of these metadata equivalents. metadata.content is still
the recommended way to pass complex multimodal assets.
Response
Seedance video task created successfully
Seedance video task object, compatible with the OpenAI / Sora video task format.
Video task ID.
"video_abc123"
Object type, always video.
video "video"
The model that processed the task.
doubao-seedance-2-0-260128, doubao-seedance-2-0-fast-260128 "doubao-seedance-2-0-fast-260128"
Task status.
queued, in_progress, completed, failed "queued"
Task progress as a percentage (0–100).
0 <= x <= 1000
Task creation timestamp in milliseconds.
1764347090922
Video duration in seconds.
"5"
Task completion timestamp in milliseconds, populated when complete.
1764347170000
Expiry timestamp for the task and video file, in milliseconds.
1764433570000
Video dimensions, e.g. 1280x720.
"1280x720"
Error information for a failed Seedance video task.
Additional metadata. Contains url once the task is complete.