Skip to Content
DocumentationModelsVideoSeedance 2.5

Seedance 2.5

Use doubao-seedance-2.5 to create video output. This page contains the complete request needed for this model.

Model facts

PropertyValue
Model IDdoubao-seedance-2.5
EndpointPOST /api/v1/generation/create
OutputVideo
Modestext-to-video, image-to-video, video reference, audio reference
PricingView current pricing 

Minimal request

curl -X POST https://api.api-stock.com/api/v1/generation/create \ -H "Authorization: Bearer $API_STOCK_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "doubao-seedance-2.5", "input": { "prompt": "A cinematic scene with soft natural light" } }'

The create response contains a task ID:

{ "code": 200, "data": { "taskId": "019ca881-9503-7270-a560-f00fc2b15785", "status": "not_started", "createdAt": "2026-08-22T12:00:00.000Z" } }

Parameters

Parameters belong inside the top-level input object. Unknown fields are rejected.

Parameter Type Required Default Description
prompt string Yes Video prompt. Reference images, videos and audio positionally in the prompt.
duration number No 5 Output duration in seconds (4-30). For reference-video jobs, input and output seconds use the reference-input tariff. min 4, max 30
size "adaptive" | "16:9" | "4:3" | "1:1" | "3:4" | "9:16" | "21:9" No "adaptive" Output aspect ratio. First/last-frame and extend jobs require adaptive.
resolution "480p" | "720p" | "1080p" No "720p" Output resolution and per-second billing tier
generateAudio boolean No true Whether the generated video includes audio
nsfwCheck boolean No false Run prompt/image moderation before generation
watermark boolean No false Add an AI-generated watermark
seed number No Random seed; identical output is not guaranteed
outputFormat "mp4" | "mov" No "mp4" Output video container
omniReferenceTaskType "auto" | "reference" | "extend" No "auto" Optional task-type hint. edit is unavailable until variable-duration billing settlement is supported.
imageUrls string[] No Reference image URLs (maximum 30 across both image fields)
imageWithRoles object[] No Images with explicit first_frame, last_frame or reference_image roles. Each item is { url: string, role: string }.
videoUrls string[] No Public reference-video URLs (maximum 10; 2-30 seconds each and 30 seconds total). Their duration is probed before charging.
audioUrls string[] No Reference audio URLs (maximum 10; 30 seconds total)
returnLastFrame boolean No false Return the output's last frame for chaining
tools object[] No Optional enhancements such as web search grounding. Each item is { type: "web_search" }.

Modes

Minimal generation

{ "model": "doubao-seedance-2.5", "input": { "prompt": "A cinematic scene with soft natural light" } }

With image urls

{ "model": "doubao-seedance-2.5", "input": { "prompt": "A cinematic scene with soft natural light", "imageUrls": [ "https://example.com/input.jpg" ] } }

With video urls

{ "model": "doubao-seedance-2.5", "input": { "prompt": "A cinematic scene with soft natural light", "videoUrls": [ "https://example.com/input.mp4" ] } }

With audio urls

{ "model": "doubao-seedance-2.5", "input": { "prompt": "A cinematic scene with soft natural light", "audioUrls": [ "https://example.com/input.mp3" ] } }

Constraints

  • duration: minimum 4; maximum 30.
  • size: allowed: adaptive, 16:9, 4:3, 1:1, 3:4, 9:16, 21:9.
  • resolution: allowed: 480p, 720p, 1080p.
  • outputFormat: allowed: mp4, mov.
  • omniReferenceTaskType: allowed: auto, reference, extend.

Invalid types, unsupported enum values, out-of-range numbers, and missing required fields return HTTP 400 with error.code: "invalid_input". Correct the request rather than retrying it unchanged.

Result

Poll the task or provide a top-level webhook URL in the create request:

curl https://api.api-stock.com/api/v1/task/status/$TASK_ID \ -H "Authorization: Bearer $API_STOCK_KEY"

A successful media task returns one or more files:

{ "code": 200, "data": { "taskId": "019ca881-9503-7270-a560-f00fc2b15785", "status": "finished", "files": [ { "fileUrl": "https://storage.api-stock.com/result.mp4", "fileType": "video" } ], "createdTime": "2026-08-22T12:00:00.000Z" } }

See Tasks and webhooks for terminal statuses, retries and webhook delivery.