Seedance 2.5
Seedance 2.5 is multimodal video generation from reference images, videos, and audio. Supports video editing and extension.
bytedance/seedance-2-5
1. Authentication
The API uses an API key for authentication.
Get Your API Key
Get your API key from https://icreat.ai/hub/keys.
2. Call the API
Submit a Request
Use cURL to submit an HTTP request and start a task:
curl --fail-with-body --connect-timeout 10 --max-time 60 \
-X POST https://api.icreat.ai/v1/task/submit/bytedance/seedance-2-5 \
-H "Authorization: Bearer ${ICREAT_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"content": [
{
"type": "text",
"text": "A golden retriever running on a beach at sunset in slow motion"
}
],
"ratio": "16:9",
"resolution": "720p",
"duration": 5
}'The server will return a response body similar to the following:
{ "task_id": "task-xxx" }Use the task_id to poll the task status and retrieve the result.
3. Poll Task Status
curl --connect-timeout 10 --max-time 60 \
-X POST "https://api.icreat.ai/v1/task/query-status" \
-H "Authorization: Bearer ${ICREAT_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"task_id": "task-xxx"
}'The server will return the task status. When the status is SUCCEEDED, you can retrieve the result.
4. Retrieve the Result
curl --connect-timeout 10 --max-time 60 \
-X POST "https://api.icreat.ai/v1/task/get-result" \
-H "Authorization: Bearer ${ICREAT_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"task_id": "task-xxx"
}'The server will return the output of the task.
5. Schema
Top-Level Fields
The API uses a multimodal input structure. content is a required array that supports any combination of text, image, video, and audio references.
| Field | Type | Required | Description |
|---|---|---|---|
content |
object[] | Yes | Multimodal content array. See the schema below |
generate_audio |
boolean | No | Whether to generate audio |
ratio |
string | No | Output aspect ratio. Supported values: 16:9, 4:3, 1:1, 3:4, 9:16, 21:9, and adaptive. When set to adaptive, the model automatically selects the most appropriate aspect ratio based on the input |
resolution |
string | No | Output resolution. Supported values: 480p and 720p |
duration |
integer | No | Video duration in seconds. Accepts an integer from 4 to 30, or -1 to let the model automatically select the duration |
watermark |
boolean | No | Whether to add an “AI Generated” watermark |
tools |
object[] | No | List of tools to use |
content[] Items
| Field | Type | Required | Description |
|---|---|---|---|
type |
string | Yes | Content type: text, image_url, video_url, or audio_url |
text |
string | Conditionally | Required when type=text. Supports Chinese, English, Japanese, Indonesian, Spanish, and Portuguese |
image_url |
object | Conditionally | Required when type=image_url. Format: {"url":"https://..."} |
video_url |
object | Conditionally | Required when type=video_url. Format: {"url":"https://..."} |
audio_url |
object | Conditionally | Required when type=audio_url. Format: {"url":"https://..."} |
role |
string | Required for media | Media role: reference_image, reference_video, reference_audio, first_frame, or last_frame |
need_review |
boolean | No | Whether to submit the reference content for official review. Set this to true when the reference content contains faces or copyrighted IP |
Chinese prompts must not exceed 2,000 characters, and English prompts must not exceed 2,000 words. Overly long prompts may dilute the information and cause the model to ignore certain details.
need_review Guidelines
- If the reference content contains faces or copyrighted IP, set
need_reviewtotrue; otherwise, generation is likely to fail. - If content requiring review is submitted with
need_reviewset tofalse, the task is likely to fail. - If content that does not require review is submitted with
need_reviewset totrue, generation may take longer.
Reference Images
- Supported formats:
jpeg,png,webp,bmp,tiff,gif,heic, andheif - Aspect ratio (width/height):
0.4–2.5 - Width and height:
300–6000px - Maximum size per image: less than
30 MB - Maximum request body size:
64 MB
The following modes are supported:
-
First-Frame Mode Provide one
image_urlitem and set itsroletofirst_frame. -
First-and-Last-Frame Mode Provide two
image_urlitems and set their roles tofirst_frameandlast_frame, respectively. -
Reference Image Mode Provide 1–30
image_urlitems and set theroleof each image toreference_image.
Reference Videos
- Supported formats:
mp4,mov - Supported resolutions:
480p,720p - Duration per video:
2–15seconds - Maximum number of reference videos: 10
- Maximum total duration of all reference videos:
15seconds - Aspect ratio (width/height):
0.4–2.5 - Width and height:
300–6000px - Total pixel count:
409600–8295044 - Maximum size per video:
200 MB - Frame rate:
24–60 FPS
| Container Format | Extension | MIME Type | Supported Codecs |
|---|---|---|---|
| MP4 | .mp4 |
video/mp4 |
Video: H.264/AVC, H.265/HEVC; Audio: AAC, MP3 |
| QuickTime | .mov |
video/quicktime |
Video: H.264/AVC, H.265/HEVC; Audio: AAC, MP3 |
Reference Audio
- Supported formats:
wav,mp3 - Duration per audio file:
2–15seconds - Maximum number of reference audio files: 10
- Maximum total duration of all reference audio files:
15seconds - Maximum size per audio file:
15 MB - Maximum request body size:
64 MB - Base64 encoding is not recommended for large files
tools[] Items
| Field | Type | Required | Description |
|---|---|---|---|
type |
string | Yes | Tool type. Currently, only web_search is supported |
6. Input Examples
6.1 Text-to-Video
{
"content": [
{
"type": "text",
"text": "A cat is playing a ball"
}
],
"generate_audio": true,
"ratio": "3:4",
"duration": 5,
"resolution": "480p"
}6.2 Without a Watermark
{
"content": [
{
"type": "text",
"text": "A cat is playing a ball"
}
],
"generate_audio": true,
"ratio": "3:4",
"duration": 5,
"resolution": "480p",
"watermark": false
}6.3 Enable web_search
{
"content": [
{
"type": "text",
"text": "A kitten plays the piano under the Eiffel Tower"
}
],
"ratio": "3:4",
"duration": 5,
"resolution": "480p",
"tools": [
{
"type": "web_search"
}
]
}6.4 Image-to-Video — First Frame
{
"content": [
{
"type": "text",
"text": "A cat is playing a ball"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/reference.jpg"
},
"role": "first_frame"
}
],
"generate_audio": true,
"ratio": "3:4",
"duration": 5,
"resolution": "480p"
}6.5 Image-to-Video — First and Last Frames
{
"content": [
{
"type": "text",
"text": "A cat is playing a ball"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/first.jpg"
},
"role": "first_frame"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/last.jpg"
},
"role": "last_frame"
}
],
"generate_audio": true,
"ratio": "3:4",
"duration": 5,
"resolution": "480p"
}6.6 Reference Images
{
"content": [
{
"type": "text",
"text": "A cat is playing a ball"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/first.jpg"
},
"role": "reference_image"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/last.jpg"
},
"role": "reference_image"
}
],
"generate_audio": true,
"ratio": "3:4",
"duration": 5,
"resolution": "480p"
}6.7 Reference Images — need_review
{
"content": [
{
"type": "text",
"text": "A cat is playing a ball"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/first.jpg"
},
"role": "reference_image",
"need_review": true
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/last.jpg"
},
"role": "reference_image"
}
],
"generate_audio": true,
"ratio": "3:4",
"duration": 5,
"resolution": "480p"
}6.8 Reference Content with Audio
{
"content": [
{
"type": "text",
"text": "A cat is playing a ball"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/first.jpg"
},
"role": "reference_image"
},
{
"type": "audio_url",
"audio_url": {
"url": "https://example.com/audio.mp3"
},
"role": "reference_audio"
}
],
"ratio": "3:4",
"duration": 5,
"resolution": "480p"
}6.9 Video Editing
{
"content": [
{
"type": "text",
"text": "Replace the cat in this video to the dog in the picture."
},
{
"type": "video_url",
"video_url": {
"url": "https://example.com/video.mp4"
},
"role": "reference_video"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/dog.jpg"
},
"role": "reference_image"
}
],
"ratio": "3:4",
"duration": 5,
"resolution": "480p"
}