Seedance 2.5 API Integration
Use Seedance 2.5 through Rivya Public API v1 with model id seedance-2-5, supported inputs, parameters, Files API rules, credits, and response examples.
seedance-2-5
text, file
Required for reference modes
per_input_and_output_second · 480p_with_video=17 · 480p_without_video=28 · 720p_with_video=38 · 720p_without_video=63 · 1080p_with_video=68.5 · 1080p_without_video=114 · ⌈total⌉
Video
METERED
30000 characters
Request contract
Send the model id at the top level. Model-specific controls belong in params.
| Key | Type | Required | Default | Description |
|---|---|---|---|---|
| model | string | Yes | seedance-2-5 | Use the seedance-2-5 API model id. |
| prompt | string | No | - | Maximum 30000 characters for this model. |
| params | object | No | - | Model-specific parameter object. Use the rows below for allowed keys. |
| client_request_id | string | No | - | Optional client-side id for tracing requests in your system. |
Model parameters
| Key | Type | Required | Default | Range | Options | Description |
|---|---|---|---|---|---|---|
| seedance_scene | select | No | text | - | text, frames, reference | Choose the input contract before uploading; text, frame guidance, and references are mutually exclusive scenes. |
| resolution | select | No | 720p | - | 480p, 720p, 1080p | Each resolution has separate no-video and with-video rates. |
| aspect_ratio | select | No | adaptive | - | 1:1, 4:3, 3:4, 16:9, 9:16, 21:9, adaptive | Aspect ratio |
| duration | number | No | 5 | min -1 / max 30 / step 1 | - | Choose -1 for automatic duration or a whole number from 4 through 30 seconds. Automatic duration reserves 30 output seconds before the run. |
| output_format | select | No | mp4 | - | mp4, mov | Output format |
| generate_audio | select | No | true | - | true, false | Request generated audio with the output clip. |
| return_last_frame | select | No | false | - | false, true | Also return the final video frame as a still image for review or follow-up work. |
| web_search | select | No | false | - | false, true | Allow the model to use its optional web-search control for this run. |
| nsfw_checker | select | No | true | - | false, true | Enable the model's optional content filter. No automated filter can guarantee complete coverage. |
Upload policy
Upload reference files first, then place the returned URL and duration token inside params.referenceMediaItems.
Guide frames or high-capacity references: Frames accepts 1 or 2 JPEG, PNG, WebP, BMP, GIF, or TIFF images up to 30 MB each. Reference accepts up to 30 images, 10 MP4/MOV videos up to 95 MB and 2-30 seconds each, and 10 MP3/WAV audio files up to 15 MB and 2-30 seconds each; video and audio totals are each capped at 30 seconds, and all media together is capped at 50 files.
50
image, video, audio
Video and audio references should carry durationToken from /api/v1/files when duration verification is required.
| kind | Max size | MIME types |
|---|---|---|
| image | 30 MB | image/jpeg, image/png, image/webp, image/bmp, image/gif, image/tiff |
| video | 95 MB | video/mp4, video/quicktime |
| audio | 15 MB | audio/mpeg, audio/wav, audio/x-wav |
Minimal request
{
"model": "seedance-2-5",
"prompt": "A cinematic product reveal with smooth camera movement",
"params": {
"seedance_scene": "text",
"resolution": "720p",
"aspect_ratio": "adaptive",
"duration": 5,
"output_format": "mp4",
"generate_audio": "true",
"return_last_frame": "false",
"web_search": "false",
"nsfw_checker": "true"
}
}Reference-file request
{
"model": "seedance-2-5",
"prompt": "A cinematic product reveal with smooth camera movement",
"params": {
"seedance_scene": "reference",
"resolution": "720p",
"aspect_ratio": "adaptive",
"duration": 5,
"output_format": "mp4",
"generate_audio": "true",
"return_last_frame": "false",
"web_search": "false",
"nsfw_checker": "true",
"referenceMediaItems": [
{
"url": "https://cdn.example.com/reference-video.mp4",
"kind": "video",
"name": "reference-video.mp4",
"mimeType": "video/mp4",
"durationSeconds": 8,
"durationToken": "video_duration_token_from_files_api",
"width": 1280,
"height": 720,
"sizeBytes": 8388608,
"framesPerSecond": 30,
"videoBitrateMbps": 8,
"videoMetadataToken": "video_metadata_token_from_original_files_api_upload_response"
}
]
}
}Create response
The create endpoint returns a public task id. Poll the status endpoint until the task succeeds or fails.
{
"id": "task_seedance_2_5_example",
"status": "queued",
"model": "seedance-2-5",
"reserved_credits": 315,
"final_credits": 0,
"settlement_status": "RESERVED",
"created_at": "2026-05-11T00:00:00.000Z",
"updated_at": "2026-05-11T00:00:00.000Z",
"result": null,
"error": null
}Common errors
validation_failed, insufficient_credits, idempotency_conflict, rate_limited, not_found
Some modes require Files API reference uploads.