Seedance per-request integration
Prices, canonical parameters and AI integration instructions for two video models.
Choose a model
These per-request Seedance models are enabled. Before calling a model, confirm that GET /v1/models with your key includes its ID. A public listing does not grant access to every key. Use a video-service key for the 混合 group and API root https://video.1route.dev.
| Display name | API model ID | Duration | Standard price |
|---|---|---|---|
| Seedance 2.0 Mini · 12 seconds | seedance-2.0-mini-12s | Exactly 12 seconds | ¥1.02/request |
| Seedance 2.5 · Multiple images | seedance-2.5-30img | 4–30 whole seconds | ¥2.16/request |
Amounts are CNY balance units, with no USD exchange-rate conversion. These are public price snapshots for the 混合 group; confirm account-specific rates on live pricing. Each task counts once, without multiplying by duration, reference count or tokens. Polling and queue time do not create another generation task.
These are distinct from token-priced Seedance models. Never reuse their names, parameters or billing formulas. Give your AI the model and price contract and OpenAPI.
The 2.5 model accepts 4–30 whole seconds, uses fixed 720p, and supports up to 30 images, 10 MP3 references, six aspect ratios and face references. face=true enables colored-pencil preprocessing of reference images; it is off by default. Video references are unsupported.
Instructions for your AI
Integrate the 1Route per-request Seedance models using this guide and its OpenAPI.
Read VIDEO_API_KEY from private configuration. Never log it or expose it in frontend code.
Check GET /v1/models, account pricing and my CNY budget before generating.
Use the public model IDs. Mini is text-only and exactly 12 seconds; the multi-image model accepts 4–30 whole seconds.
The multi-image model uses fixed 720p, up to 30 images and 10 MP3 references. Use only the six documented ratio values and JSON booleans for face, default false.
Do not use WAN3 fields, token pricing or per-second pricing for these models.
Submit once after budget approval and save id and X-Oneapi-Request-Id immediately.
Poll the same task every 15 seconds. Download immediately after completed provides a service URL.
Never repeat POST automatically after an ambiguous timeout or 5xx. Retry GET with backoff.
Contact support if delivery is missing; do not regenerate.Request fields
POST /v1/videos, JSON, with Authorization: Bearer YOUR_API_KEY.
| Field | Mini 12-second model | 2.5 multi-image model |
|---|---|---|
model | seedance-2.0-mini-12s | seedance-2.5-30img |
prompt | Required, 1–2000 characters | Required, 1–2000 characters; identify references as Image 1, Image 2 |
seconds | Required integer 12 | Required integer 4 through 30 |
resolution | Omit or use 720p; default output is used | Fixed 720p; optional, other nonempty resolution strings are normalized to 720p |
images | Unsupported; omit | Optional array of at most 30 public image URL strings |
audios | Unsupported; omit | Optional array of at most 10 MP3 audio URL strings |
ratio | Unsupported; omit | Optional: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9; omit to retain the model default |
face | Unsupported; omit | Optional JSON boolean; true enables colored-pencil preprocessing of reference images; default false |
Do not send aspect_ratio, duration, size, videos, reference_images or extra billing fields. Multipart uploads, base64, preview-page links and authenticated media URLs are unsupported. Audio, ratio and face fields apply only to the 2.5 model, not Mini.
The Mini sample is portrait 720×1280; aspect-ratio selection is not offered. The 2.5 model always uses the 720p tier, so requesting 480p does not produce a 480p video. Pixel dimensions vary with aspect ratio; do not hard-code 1280×720 for every ratio.
Audio must be genuinely MP3-encoded, not a renamed WAV file. This service requires audio URL paths to end in .mp3; signed query parameters are allowed. A nonmatching extension is rejected at entry, while successful decoding still depends on the actual file contents.
face controls colored-pencil preprocessing of reference images, not guaranteed acceptance of every face reference. Use unquoted JSON booleans true and false. The 30-image and 10-audio limits do not guarantee every reference appears fully in the output. Use only legally authorized media. Audio, six-ratio and face capabilities are documented interface support; no additional paid generation was performed for these features in this update.
Minimal requests
After budget approval, choose one example, not both.
{
"model": "seedance-2.0-mini-12s",
"prompt": "A colorful kite sways over a meadow beneath a blue sky. A slow camera push-in, natural daylight, no text.",
"seconds": 12
}{
"model": "seedance-2.5-30img",
"prompt": "A colorful kite sways above a meadow. A slow camera push-in, natural daylight, no text.",
"seconds": 4,
"resolution": "720p"
}For image references on the 2.5 model, add "images": ["https://YOUR_MEDIA_HOST/reference.jpg"]. Replace the placeholder with an authorized real image URL first. Do not submit placeholders or upload private media without approval.
2.5 image and audio example
Replace both media placeholders first. This request still counts once; duration, media count and the face switch do not add a unit-price surcharge.
{
"model": "seedance-2.5-30img",
"prompt": "Use Image 1 as the scene reference and the rhythm of Audio 1 to guide a continuous shot.",
"seconds": 12,
"resolution": "720p",
"ratio": "16:9",
"images": ["https://YOUR_MEDIA_HOST/reference.jpg"],
"audios": ["https://YOUR_MEDIA_HOST/reference.mp3"],
"face": false
}Poll and download
- Save the complete creation-response
id. A model name is not a task ID. - Query
GET /v1/videos/{id}every 15 seconds with the same key. Wait while queued or in progress. - On
completed, usemetadata.urlor the suppliedurl. If absent, keep querying the same task or contact support. 99% is not download readiness. - Download from the returned service-signed URL verbatim, without an API key. Do not change its host or query. Links last up to about 5 minutes; ready cached files remain about 10 minutes. Save promptly.
A creation timeout or disconnect does not prove no task was created. Never retry POST automatically. Check task and usage records on terminal failure. Successful generation with failed delivery retains its charge until support delivers the file or handles a refund. Resume saved task IDs after a restart; cancellation and idempotent creation are not promised.