Skip to content
NewRouters/Documentation
VIDEO API

Seedance 2.0 · API guide

Integrate seedance-2.0 through the media task API. Request examples, parameters, authentication and result handling.

POST/v1/tasksMODELseedance-2.0
Official reference doubao-seedance-2-0-260128Checked 2026-09-27Official docs

This model is retired on this platform. This guide remains available for historical integrations; check the live catalog before calling.

Code examples & responses
Request & responseExamples
POST/v1/tasks
Server-side request
curl "https://newrouters.com/v1/tasks" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $API_KEY" \
  --data '{
  "model": "seedance-2.0",
  "input": {
    "seconds": 5,
    "resolution": "720p",
    "aspect_ratio": "16:9",
    "generate_audio": true,
    "prompt": "A small red house in a quiet garden"
  }
}'

The API origin is filled in. Set API_KEY before running. Examples never submit automatically.

ResponseSelected fields · illustrative values
202Task accepted
JSON
{
  "id": "TASK_ID",
  "status": "pending",
  "model": "seedance-2.0",
  "result": null,
  "error": null
}
200Successful result
JSON
{
  "id": "TASK_ID",
  "status": "succeeded",
  "model": "seedance-2.0",
  "result": {
    "assets": [
      "https://example.com/output.mp4"
    ]
  },
  "error": null
}
Retrieve results after submission
Request lifecycleAsynchronous media
  1. Create a task01
    POST /v1/tasks

    Submit model + input. Save the returned task id.

    202 · pending
  2. Poll status02
    GET /v1/tasks/{id}

    Wait and poll again while pending or processing.

    Wait → poll again
  3. Read the outcome03
    result.assets[] / error

    Read the result for the terminal task state.

    succeeded→ assetsfailed→ error

Use the exact API model ID seedance-2.0. This guide describes the platform contract; check the live catalog before calling the model.

The platform origin is filled in at build time. Set API_KEY to your server-side key before running.

Terminal window
curl "https://newrouters.com/v1/tasks" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $API_KEY" \
--data '{
"model": "seedance-2.0",
"input": {
"seconds": 5,
"resolution": "720p",
"aspect_ratio": "16:9",
"generate_audio": true,
"prompt": "A small red house in a quiet garden"
}
}'

The creation response accepts a task, not the final output. Replace TASK_ID with its returned ID and poll until succeeded or failed.

Terminal window
curl "https://newrouters.com/v1/tasks/TASK_ID" \
-H "Authorization: Bearer $API_KEY"

Read result on success and error on failure. Keep the original task ID when the upstream outcome is unknown; do not submit a duplicate paid generation.

FieldTypeRequirementDefaultConstraints
audiosarrayOptional—max items 3
imagesarrayOptional—max items 9
promptstringRequired——
videosarrayOptional—max items 3
secondsintegerOptional5min 4; max 15
resolutionenumOptional"720p"480p, 720p, 1080p
aspect_ratioenumOptional"16:9"21:9, 16:9, 9:16, 4:3, 3:4, 1:1
frames_imagesarrayOptional—max items 2
generate_audiobooleanOptionaltrue—

Checked: 2026-09-27 · Platform model: seedance-2.0 · Official reference: doubao-seedance-2-0-260128

Check current availability, contract and account pricing before integration. Keep request IDs and usage receipts when diagnosing errors. Complete API reference