How to Draft Seedance 2.5 Videos at 480p and Finish Them in 1080p or 4K with the Dreamina API
5 min read • November 12, 2026
Table of contents
- Introduction
- How does Seedance 2.5 draft mode work?
- Pricing
- Step 1. Make the draft
- Step 2. Wait for it and watch it
- Step 3. Turn the draft into a full-quality video
- Draft and full quality, side by side
- Questions
- Conclusion
Introduction
The useapi.net Dreamina API makes a 480p Seedance 2.5 draft for about a seventh of the price of the same video at 1080p. Once you like it, one more call to POST /videos/full-quality turns that same draft into a 1080p video, or 4K on a Canadian account. The full-quality video keeps the draft’s shot, motion and timing, so you pay full price only for the take you already approved. 4K is only available through this API: ByteDance’s own Seedance 2.5 API stops at 1080p (as of November 2026). It runs on the Dreamina subscription you already have, the same way Dreamina’s “Generate in full quality” button works on the website.
The 480p draft and the 1080p video made from it, playing side by side:
Below are the requests that make them and the credits each step used.
How does Seedance 2.5 draft mode work?
- Send your prompt to POST /videos with
model: "seedance-2.5-draft". You get a 480p video of 4 to 30 seconds, from text, a start and an end frame, or up to 50 references (30 images, 10 videos, 10 audio clips), the same inputs asseedance-2.5. - Watch it. If it’s not right, change the prompt and make another draft.
- Within 14 days, send the draft’s
jobidto POST /videos/full-quality withresolution1080por4k. Dreamina builds the full-quality video from that draft, with its prompt, references, length and aspect ratio.
US and Canadian accounts both make drafts and 1080p videos. 4K needs a Canadian account. Both steps need a paid Dreamina plan.
Dreamina can’t upscale a draft: its only next step is full quality. A 1080p full-quality video can be upscaled like any other.
Pricing
Full quality costs the same as making the video with seedance-2.5 at that resolution. The draft is an extra run on top of that, whether you then make 1080p or 4K, so it pays off when you would otherwise try a prompt more than once. Prices for the draft and every other model are in the cost calculator.
Start using the API
A single $15/month subscription covers every API on useapi.net — one token, all services. You connect up to 3 accounts per service, each with its own website subscription, and useapi.net handles the REST API, load balancing, and polling. Need more accounts? Each extra subscription is $10/month and adds 3 more accounts per service.
Subscribe — $15/month Pay with crypto
Pricing and volume options — full refund within the first 14 days if you have fewer than 50 successful generations. Already subscribed? Change the quantity in the Stripe Customer Portal instead of buying again.
Step 1. Make the draft
The steps below are plain curl. The same flow as one script, in Node.js and Python, is in useapi/dreamina-api on GitHub.
You need a useapi.net API token (Setup useapi.net) and a Dreamina account with a paid plan, connected through Setup Dreamina.
curl --location 'https://api.useapi.net/v1/dreamina/videos' \
--header 'Authorization: Bearer user:12345-…' \
--form 'model="seedance-2.5-draft"' \
--form 'duration="4"' \
--form 'ratio="9:16"' \
--form 'prompt="Pretty lady dancing"'
Leave out account and the API picks one of your Dreamina accounts with free capacity. The response carries the jobid:
{
"jobid": "j1112160042000000000v-u12345-CA:[email protected]:dreamina",
"type": "video",
"status": "created",
"model": "seedance-2.5-draft"
}
Step 2. Wait for it and watch it
Poll GET /videos/jobid every 15 seconds or so, or pass replyUrl in step 1 and get the result posted to you.
curl --location 'https://api.useapi.net/v1/dreamina/videos/j1112160042000000000v-u12345-CA:[email protected]:dreamina' \
--header 'Authorization: Bearer user:12345-…'
{
"jobid": "j1112160042000000000v-u12345-CA:[email protected]:dreamina",
"status": "completed",
"model": "seedance-2.5-draft",
"response": {
"videoUrl": "https://…/video.mp4",
"width": 480,
"height": 854,
"durationMs": 4042
}
}
Our draft was ready in 85 seconds, a 480×854 video for 68 credits:
Step 3. Turn the draft into a full-quality video
The draft is what we wanted, so its jobid goes to POST /videos/full-quality:
curl --location 'https://api.useapi.net/v1/dreamina/videos/full-quality' \
--header 'Authorization: Bearer user:12345-…' \
--form 'jobid="j1112160042000000000v-u12345-CA:[email protected]:dreamina"' \
--form 'resolution="1080p"'
The video is made on the draft’s own account. The response is a new video job, polled the same way. It keeps model: "seedance-2.5-draft", and request.resolution and request.draftJobid tell it apart from the draft:
{
"jobid": "j1112160306000000000v-u12345-CA:[email protected]:dreamina",
"type": "video",
"status": "created",
"model": "seedance-2.5-draft",
"request": {
"inputMode": "full_quality",
"resolution": "1080p",
"draftJobid": "j1112160042000000000v-u12345-CA:[email protected]:dreamina"
}
}
It was ready in about 2 minutes, a 1080×1920 video for 468 credits:
For 4K, send resolution: "4k" from a draft made on a Canadian account. Dreamina offers it there, though our own tests ran at 1080p. ByteDance’s own API doesn’t sell Seedance 2.5 at 4K at all: its price list marks it “Not supported”. The finished video is an ordinary video job, so you can still upscale a 1080p one or raise its frame rate.
A job that isn’t a finished draft, a draft older than 14 days, or 4k on a US account gets 400. A Dreamina account without a paid plan gets 403, and one out of credits 412. A job that fails later shows status: "failed" and an error when you poll it.
Draft and full quality, side by side
The two videos are the same take: the moves, the turn of the head, the wink and the timing match from the first frame to the last. Here is the same moment, 3.5 seconds in, cropped from both. The draft, enlarged to 1080p, is on the left and the full-quality video on the right:

Eyelashes, single strands of hair and the skin come out sharp, with nothing in the face moved.
Questions
Is there a Seedance 2.5 draft mode API?
Yes. The useapi.net Dreamina API makes 480p seedance-2.5-draft videos and turns them into 1080p, or 4K on a Canadian Dreamina account, on the Dreamina subscription you already pay for. ByteDance’s own API also has a draft mode, but its price list offers Seedance 2.5 only up to 1080p (as of November 2026).
How much does a Seedance 2.5 draft cost?
Through useapi.net a 5-second Seedance 2.5 draft costs 65 credits on a US Dreamina account and 85 on a Canadian one, about $0.59 or $0.55 on the Advanced plan (as of November 2026). The full-quality video then costs what a seedance-2.5 video does at that resolution, so the draft is an extra run that saves you paying for full-quality takes you would throw away. See Pricing.
Does the full-quality video look like the draft?
Yes. With the useapi.net Dreamina API the full-quality video is built from your draft, so it keeps the same take, motion and timing, only sharper, as the side-by-side above shows. Sending the same prompt to seedance-2.5 again would make a different video.
Can I make a 4K Seedance 2.5 video from a draft?
Yes, through useapi.net on a Canadian Dreamina account: send the draft’s jobid to POST /videos/full-quality with resolution: "4k", at the price of a 4K seedance-2.5 video. US accounts make 1080p. ByteDance’s own API offers Seedance 2.5 only up to 1080p (as of November 2026).
Conclusion
A Seedance 2.5 draft lets you try an idea at 480p for a fraction of the price and keep exactly the take you like, at 1080p or 4K. Make one with POST /videos and seedance-2.5-draft, then finish it with POST /videos/full-quality. The whole flow is one script, in Node.js and Python, on GitHub: useapi/dreamina-api/seedance-draft. Connect your Dreamina account with Setup Dreamina, and see the Dreamina API overview for every model.