Seedance 2.5
Seedance 2.5
Seedance 2.5 video with synchronized audio: text, image or mixed image / video / audio references, 4 to 30 seconds or auto length, up to 2K
- Endpoint
- POST /api/v1/videos/generate
- model
- seedance25
- Output
- Video
- Credits
- 15 per second at 720p
Aufgabe senden
/api/v1/videos/generateParameter
modelstringErforderlichMust be "seedance25"
typestringOptional"text-to-video", "image-to-video" or "media-to-video" (detected from media_urls when omitted). video-to-video is not supported
text-to-videoimage-to-videomedia-to-videopromptstringErforderlichText prompt, up to 10000 characters
media_urlsstring[]OptionalPublic https URLs of reference images, videos and audio. Required for image-to-video and media-to-video
image_urlsstring[]OptionalImage-only references; media_urls takes precedence
aspect_ratiostringOptionalStandard16:9"16:9" (default), "9:16", "1:1", "4:3", "3:4", "21:9" or "adaptive". Image-to-video follows the first frame; editing or extending a video requires "adaptive"
16:99:161:14:33:421:9adaptivedurationstringOptionalStandardauto"auto" (default) or "4" to "30" seconds. With "auto", credits for 30 seconds are reserved and the difference is refunded once the clip is ready. Editing or extending a video requires "auto"
auto4–30resolutionstringOptionalStandard1080p"720p", "1080p" (default) or "1080p-plus" (2K)
720p1080p1080p-pluschannelstringOptionalStandardstandard"standard" (default), "real" or "wild". Use real when references show real people
standardrealwildgenerate_audiobooleanOptionalStandardtrueGenerate synchronized audio (default: true)
truefalse
Seedance prompt guide
Seedance prompts work best as concrete director instructions. Describe the subject, action, scene, camera motion, visual style and constraints, then say what each reference file is for.
- For image-to-video, the first image is the opening frame and an optional second image is the closing frame. For reference media, pass images, videos and audio in media_urls.
- Describe each reference's role in the prompt in plain words ("the supplied cup", "the camera move from the supplied video"); do not refer to files by number or id.
- For edits say "strictly edit the supplied source video"; to continue a clip say "continue from the supplied previous clip".
- For complex scenes, list the shots in order, then a style and constraint package: stable faces, natural motion, no deformation, no watermark, no logo and no subtitles unless intended.
Anfrage
curl -X POST https://preview.bananapro.site/api/v1/videos/generate \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: docs-seedance25-text-001" \
-d '{
"model": "seedance25",
"type": "text-to-video",
"prompt": "A paper boat drifting down a rain-soaked street at dusk, reflections shimmering",
"aspect_ratio": "16:9",
"duration": "4",
"resolution": "720p"
}'Antwort200
{
"success": true,
"data": {
"task_id": "task_seedance25_123",
"credits_used": 60,
"remaining_credits": 940,
"model": "seedance25"
}
}Die credits_used-Werte in diesen Beispielen dienen nur zur Veranschaulichung. Der tatsächliche Verbrauch wird beim Senden berechnet und von der API zurückgegeben.
Aufgabe abfragen
/api/v1/videos/{task_id}status
pending- Accepted and waiting to start. Keep polling.
processing- Running. Keep polling.
completed- Finished. Read video_url; output holds the full result.
failed- Ended without a result. error_message says why and credits_refunded shows what was returned.
Poll every 5 to 10 seconds and stop at completed or failed, or register a webhook to be notified instead. Failed tasks are refunded automatically.
Anfrage
curl https://preview.bananapro.site/api/v1/videos/task_abc123 \
-H "Authorization: Bearer sk-your-api-key"Antwort200
{
"success": true,
"data": {
"task_id": "task_abc123",
"model": "seedance25",
"status": "completed",
"output": { "video_url": "https://..." },
"video_url": "https://...",
"error_message": null,
"credits_used": 60,
"credits_refunded": 0,
"created_at": "2026-10-04T10:00:00.000Z",
"updated_at": "2026-10-04T10:01:12.000Z",
"completed_at": "2026-10-04T10:01:12.000Z"
},
"request_id": "req_abc123"
}Auf das Ergebnis warten
TASK_ID=task_abc123
while true; do
TASK=$(curl -s https://preview.bananapro.site/api/v1/videos/$TASK_ID \
-H "Authorization: Bearer sk-your-api-key")
STATUS=$(echo "$TASK" | jq -r '.data.status')
if [ "$STATUS" = "completed" ] || [ "$STATUS" = "failed" ]; then
echo "$TASK" | jq
break
fi
sleep 10
donePreise
| Resolution | Without video input | With video input |
|---|---|---|
| 720p | 15 | 10 |
| 1080p | 35 | 21 |
| 1080p-plus (2K) | 85 | 51 |
Credits per billable second, rounded to the nearest 5. Without video input, billable seconds are the output seconds; with a reference video they are max(4, input video seconds) + output seconds. The real channel costs 1.2x. duration "auto" reserves 30 seconds when submitted and refunds the difference once the clip is ready; credits_refunded shows it.
Funktionen
- Text-to-video, image-to-video (first frame, or first and last frame) and media-to-video
- Up to 30 images, 10 videos and 10 audio clips as references (50 files, 30 s of video or audio in total)
- 4–30 second clips, or duration "auto" to let the model choose
- 720p, 1080p and 1080p-plus (2K) output with generated audio
- standard, real (for references with real people) and wild channels