Seedance 2.0 API
Seedance 2.0 is the previous Seedance generation on OmniaKey, published under the provider ID dreamina-seedance-2-0-260128: one id covers text to video, a first frame and reference-driven shots of up to 15 seconds, always with an audio track.
- Model ID
- dreamina-seedance-2-0-260128
- Provider
- ByteDance
- Modality
- AI Video
- Per second of output
- $0.07–$0.37
- Last verified
- 2026-09-15
Playground
Use this model with your OmniaKey account.



From a moment to a moving story
Start with your own idea or make this prompt yours.
01
Where it fits
Use Seedance 2.0 when you want Seedance quality at roughly half the 2.5 rate, from $0.07 to $0.37 per second between 480P and 1080P; a 4-second 480P clip returned in about a minute in our record.
02
What it does
Text to video
dreamina-seedance-2-0-260128
Generate a short video clip from a text prompt.
Image to video
dreamina-seedance-2-0-260128
Animate a still image into a short video clip.
Reference video
dreamina-seedance-2-0-260128
Use reference footage to guide a generated clip.
03
Call it
Media models run asynchronously. Create a task, poll it until it finishes, then download the signed asset URL.
# 1. Create the job. 202 Accepted; the body carries the task id,
# the pre-charged price, and a poll_url. Reuse one Idempotency-Key
# across retries so a timeout never starts a second paid job.
curl --fail-with-body https://api.omniakey.com/v1/media/tasks \
-H "Authorization: Bearer $OMNIAKEY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: dreamina-seedance-2-0-260128-001" \
-d '{
"model": "dreamina-seedance-2-0-260128",
"type": "video",
"operation": "text_to_video",
"input": {"prompt": "a paper boat on a quiet lake at sunset"},
"parameters": {"duration": 6, "resolution": "720p"}
}'
# 2. The same model id and the same poll loop serve the other operations:
# image_to_video media[] type "first_frame"
# reference_to_video media[] type "reference_image"
# Reference media travel alongside the prompt:
# {"prompt": "...", "media": [{"type": "first_frame", "url": "https://example.com/first-frame.png"}]}
# A public HTTPS URL or a base64 data URI both work.
# 3. Poll GET /v1/media/tasks/{id} until status is
# succeeded | failed | canceled. Progress carries percent and stage.
curl --fail-with-body https://api.omniakey.com/v1/media/tasks/TASK_ID \
-H "Authorization: Bearer $OMNIAKEY_API_KEY"
# 4. Download assets[0].url before expires_at, or poll again for a
# fresh signed URL. Failed and canceled jobs are refunded.
curl -sS -o out.mp4 "$(jq -r '.assets[0].url' result.json)"04
Pricing
Video jobs are billed per second of rendered output, not per token. Failed or canceled jobs are refunded automatically.
$0.07–$0.37per second
- 480P
- $0.07per second
- 720P
- $0.15per second
- 1080P
- $0.37per second
More models from ByteDance
Frequently asked questions
How do I call Seedance 2.0 on OmniaKey?
POST to /v1/media/tasks with the model id, type "video", and operation "text_to_video" — or "image_to_video" with a first frame in input.media[] with type "first_frame". Reuse one Idempotency-Key across retries so a timeout never starts a second paid job.
What does Seedance 2.0 cost?
Seedance 2.0 bills $0.07–$0.37 per second of rendered video. Creation pre-charges the requested duration up front from your prepaid balance, and failed or canceled jobs are refunded automatically.
Why does the API return a task id instead of the video?
Video renders take from about a minute to several minutes, so OmniaKey runs every video route through one asynchronous lifecycle. Poll GET /v1/media/tasks/{id} until the status is succeeded, then read the signed asset URL.
