Seedance 2.5 Text to Video
Generate video from a text prompt. Set draft=true for a cheap 480p preview, or draft_request_id to finalize an earlier draft at 1080p.
Seedance 2.5 Draft Mode splits video generation into two linked calls to the same endpoint: submit with draft=true for a fast, low-cost 480p preview, then finalize the take you keep with draft_request_id for a full 1080p render that reuses the exact prompt, reference materials, seed, aspect ratio, and duration from the draft.
Generate video from a text prompt. Set draft=true for a cheap 480p preview, or draft_request_id to finalize an earlier draft at 1080p.
Animate a still image into video. Set draft=true for a cheap 480p preview, or draft_request_id to finalize an earlier draft at 1080p.
Generate a transition between a start and end image. Set draft=true for a cheap 480p preview, or draft_request_id to finalize an earlier draft at 1080p.
Blend reference images, video, and audio into a guided generation. Set draft=true for a cheap 480p preview, or draft_request_id to finalize an earlier draft at 1080p.
Dreamina-tier text-to-video with the same Draft Mode workflow.
Dreamina-tier image-to-video with the same Draft Mode workflow.
Dreamina-tier first/last-frame transitions with the same Draft Mode workflow.
Dreamina-tier multi-reference generation with the same Draft Mode workflow.
Relaxed-moderation text-to-video with the same Draft Mode workflow.
Relaxed-moderation image-to-video with the same Draft Mode workflow.
Relaxed-moderation first/last-frame transitions with the same Draft Mode workflow.
Relaxed-moderation multi-reference generation with the same Draft Mode workflow.
Seedance 2.5 Draft Mode is a two-step workflow built for iteration: generate a cheap 480p draft first, review it, then finalize only the take you keep at 1080p — instead of paying full-resolution pricing for every attempt. It's the same two fields on every text-to-video, image-to-video, first-last-frame, and omni-reference endpoint, across the Doubao, Intl, and Spicy tiers.
Step one: submit a normal request with draft: true added — the output is always 480p, and sending a resolution value other than 480p alongside it is rejected (400), not silently ignored. Step two: call the same endpoint again with draft_request_id set to the draft's request_id, and nothing else — Seedance reuses the draft's prompt, reference materials, seed, aspect ratio, and duration automatically to re-render the same shot at 1080p. A draft stays finalizable for 7 days from when it was submitted.
480p drafts run at $0.17/sec (Doubao) — a fraction of the 1080p finalize rate ($0.85/sec) — so you can try several prompts or seeds before committing.
draft=true and draft_request_id are just fields on the endpoints you already use — no separate finalize route, no new endpoint to learn.
Works on text-to-video, image-to-video, first-last-frame, and omni-reference — video-edit and video-extend are out of scope (they already force adaptive ratio/duration).
Doubao, Intl (Dreamina), and Spicy (NSFW) all support Draft Mode identically.
Requesting a resolution other than 480p alongside draft=true is rejected with a 422 validation error, not silently overridden — what you request is what gets billed.
A draft's request_id stays valid for finalization for 7 days from when the draft was submitted.
| Tier | Draft (480p) | Finalize (1080p) |
|---|---|---|
| Doubao | $0.17/sec | $0.85/sec |
| Intl (Dreamina) | $0.187/sec | $0.935/sec |
| Spicy (NSFW) | $0.187/sec | $0.935/sec |
Submit with draft=true, then call the same endpoint again with draft_request_id to finalize that draft at 1080p.
curl -X POST https://api.muapi.ai/api/v1/seedance-2.5-text-to-video \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"prompt":"A cinematic tracking shot through a city park after rain, soft cloudy light, wet pavement reflections","duration":5,"aspect_ratio":"16:9","seed":42,"draft":true}'
# Response: {"request_id":"REQUEST_ID"}
# draft:true always renders 480p. Sending "resolution" set to anything other
# than 480p alongside draft:true is REJECTED (400) rather than ignored.
# Poll /predictions/REQUEST_ID/result until the draft completes.Call any Seedance 2.5 t2v/i2v/first-last-frame/omni-reference endpoint with draft: true in the request body.
curl -X POST https://api.muapi.ai/api/v1/seedance-2.5-text-to-video \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"draft_request_id":"REQUEST_ID_FROM_DRAFT"}'
# Response: {"request_id":"NEW_REQUEST_ID"}
# Same endpoint, no prompt needed — draft_request_id finalizes that draft at
# 1080p, reusing its prompt, reference materials, seed, aspect ratio, and duration.
# Works the same way on seedance-2.5-image-to-video, -first-last-frame, and -omni-reference.
# A draft stays finalizable via its request_id for 7 days after it completes.Call the same endpoint again with draft_request_id set to the draft's request_id — no prompt needed.
A two-step video generation workflow: generate a fast, low-cost 480p draft to test composition and motion, then finalize only the draft you keep at 1080p by calling the same endpoint again with draft_request_id — instead of paying full-resolution pricing for every attempt.
Text-to-video, image-to-video, first-last-frame, and omni-reference, across the Doubao, Intl, and Spicy tiers (12 endpoints total). Video-edit and video-extend are not supported.
No — call the exact same endpoint you used to submit the draft, but with draft_request_id set instead of prompt/resolution/etc.
The request is rejected with a 422 validation error. Draft Mode always renders 480p, so any explicit resolution other than 480p alongside draft=true is invalid rather than silently ignored.
ByteDance estimates roughly 57% savings for a 5-second clip needing about 4 attempts to land, and up to 77% for clips needing around 20 attempts, compared to generating every attempt directly at 1080p.
Call the same endpoint with draft_request_id set to the draft's request_id. You cannot resend the prompt, reference image, seed, aspect ratio, or duration — they're reused from the draft automatically.
A draft's request_id stays valid for finalization for 7 days from when the draft was submitted.
No — finalize always renders 1080p. For a 4K deliverable, use the dedicated -4k endpoint directly instead of Draft Mode.
Create one Muapi API key, iterate cheaply at 480p, and finalize only the takes you keep at 1080p.