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
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.
