Loading model…正在加载模型详情…
Loading model…正在加载模型详情…
Turn a text prompt into a short cinematic video with ByteDance's Seedance 2.0, in a standard variant for quality or a Fast variant for quicker, lower-cost iteration.
Continue the previous video seamlessly, keeping the same small white ceramic delivery robot with expressive digital eyes, the same rainy neon city street at night, and the same cinematic 3D animation style. The robot continues walking forward carefully while holding the glowing glass flower. The camera smoothly tracks alongside the robot, then slowly moves to the front as it approaches a small cozy flower shop at the end of the street. Warm golden light glows through the shop window, contrasting with the cool neon reflections on the wet pavement. The robot slows down, stops at the entrance, gently raises the glowing flower with both hands, and looks up with a hopeful and slightly nervous expression. A soft bell rings as the shop door slowly opens, warm light spills onto the rainy street, and the robot’s eyes brighten with happiness. Smooth natural motion, emotional storytelling, detailed reflections, realistic rain, soft bokeh lights, shallow depth of field, high-quality lighting, no text, no logos, no watermark.
An elegant professional woman enthusiastically explaining the thermos flask in her hand. Her facial expressions are natural and welcoming. Her lip movements are perfectly synced with the input reference audio. High-definition, warm tones, studio lighting.
Fast cinematic tracking shot following the drifting race car through the corner, smooth and steady at a slight low angle, the camera moving alongside the car to keep it centered as it slides sideways, the car drifting continuously through the turn with its rear end sliding outward and front wheels counter-steering, tires spinning rapidly and throwing up billowing clouds of white smoke that trail and dissipate behind the car, background grandstands and track barriers rushing past with strong motion blur to convey high speed, tire smoke drifting and expanding, heat haze shimmering above the asphalt, high-speed motorsport cinematography with a sharp car against a motion-blurred background, dynamic energy, natural fluid motion, no warping, no flicker, consistent vehicle, realistic lighting, highly detailed, fast intense continuous motion, 5 seconds.
Seedance 2.0 is a video generation model from ByteDance. ByteDance describes it as a multimodal model built for fast, realistic video, with consistent characters and motion across shots.
UniRoute offers standard, Fast and Mini variants. Seedance 2.0 is the standard variant, aimed at output quality and control. Seedance 2.0 Fast gives up some options for lower cost and quicker iteration, which suits testing prompts. All take a text prompt and a catalog option; standard and Fast expose resolution and duration, while Mini exposes duration, and every request is quoted and charged as a whole.
Seedance 2.0 follows Seedance 1.5 Pro. ByteDance’s description of Seedance 2.0 highlights multimodal references, native audio and stronger multi-shot consistency. On UniRoute today, Seedance 2.0 is used as text to video with a resolution and duration option; the reference and audio inputs are not exposed yet.
What you can do with Seedance 2.0 through UniRoute today.
Describe the subject, action, camera movement and mood in a prompt, choose a resolution and duration, and run. All callable variants accept a text prompt, and each request is quoted before it is charged.
Other Seedance 2.0 modes (image to video, reference video and audio, lip sync and video editing) are not yet available through UniRoute.
The variants you can call, with their options and prices.
| Variant | Model ID | Modes | Inputs | Output | Price |
|---|---|---|---|---|---|
| Seedance 2.0 Fast | bytedance/seedance-2-fast | Text to video | Text prompt and a size option | Resolution: 480p, 720p; Duration: 5s, 10s | $0.37 to $1.55 per request |
| Seedance 2.0 | bytedance/seedance-2 | Text to video | Text prompt and a size option | Resolution: 480p, 720p, 1080p; Duration: 5s, 10s | $0.59 to $6.38 per request |
| Seedance 2.0 Mini | bytedance/seedance-2-mini | Text to video | Text prompt and an option for duration | Duration: 5s, 10s | $0.12 to $0.24 per request |
Priced per request. The option you choose sets the price.
| Seedance 2.0 Fast | |
|---|---|
| 480p · 5s | $0.37 |
| 480p · 10s | $0.73 |
| 720p · 5s | $0.78 |
| 720p · 10s | $1.55 |
| Seedance 2.0 | |
|---|---|
| 480p · 5s | $0.59 |
| 480p · 10s | $1.19 |
| 720p · 5s | $1.28 |
| 720p · 10s | $2.56 |
| 1080p · 5s | $3.19 |
| 1080p · 10s | $6.38 |
| Seedance 2.0 Mini | |
|---|---|
| 5s | $0.12 |
| 10s | $0.24 |
Rounded to the cent; the live quote in the workspace shows the exact amount. Prices updated 2026-11-08.
Pay as you go from a single USD wallet balance. You see the quote before each request.
Call Seedance 2.0 from your own code with the media API.
# Requires bash, curl and jq. Set API_KEY to your own unified UniRoute Key.set -euo pipefail: "${API_KEY:?Set API_KEY first}"BASE='https://api.uniroute.app/v1/media'MODEL='bytedance/seedance-2'OPTION='480p:5'PROMPT='A calm sunrise over a mountain lake'curl -fsS --max-time 60 "$BASE/catalog" -H "Authorization: Bearer $API_KEY" | jq -e '.data.models'BODY=$(jq -n --arg model "$MODEL" --arg option "$OPTION" --arg prompt "$PROMPT" '{model:$model,option:$option,prompt:$prompt}')QUOTE_BODY=$(printf '%s' "$BODY" | jq '{model,option}')QUOTE=$(curl -fsS --max-time 60 "$BASE/quote" -H "Authorization: Bearer $API_KEY" -H 'Content-Type: application/json' -d "$QUOTE_BODY")CAP=$(printf '%s' "$QUOTE" | jq -er '.data.quoted_usd')BODY=$(printf '%s' "$BODY" | jq --arg cap "$CAP" '. + {max_cost_usd:$cap}')IDEMPOTENCY="example-$(date +%s)-$$"create() { curl -fsS --max-time 60 "$BASE/tasks" -H "Authorization: Bearer $API_KEY" -H "Idempotency-Key: $IDEMPOTENCY" -H 'Content-Type: application/json' -d "$BODY"; }TASK_ID=$(create | jq -er '.data.task_id')# The same request and idempotency key must return the original task without charging again.REPLAY_ID=$(create | jq -er '.data.task_id')[ "$TASK_ID" = "$REPLAY_ID" ]for attempt in $(seq 1 120); do TASK=$(curl -fsS --max-time 60 "$BASE/tasks/$TASK_ID" -H "Authorization: Bearer $API_KEY") printf '%s' "$TASK" | jq -e '.data | {task_id,status,billing}' if printf '%s' "$TASK" | jq -e '.data.status == "success" and .data.billing.state == "charged"' >/dev/null; then index=0 while IFS= read -r url; do index=$((index+1)) curl -fL --max-time 120 "$url" -o "$TASK_ID-$index.bin" done < <(printf '%s' "$TASK" | jq -er '.data.urls[].url') break fi if printf '%s' "$TASK" | jq -e '.data.status == "failed" and .data.billing.state == "released"' >/dev/null; then exit 1; fi if [ "$attempt" = 120 ]; then echo "Polling limit reached. Keep task ID $TASK_ID and query it later; do not create a new task." >&2 exit 1 fi sleep 5donecurl -fsS --max-time 60 "$BASE/tasks?limit=20" -H "Authorization: Bearer $API_KEY" | jq -e '.data'# Check this task and the caller Key in Console usage; billing.charged_usd is the actual USD charge.| Name | In | Description |
|---|---|---|
model | Body | Model ID to run. |
option | Body | One of the options offered for the model: 480p:5, 480p:10, 720p:5, 720p:10, 1080p:5, 1080p:10, 5, 10. |
prompt | Body | Text prompt describing what to generate. |
max_cost_usd | Body | Maximum cost in USD for this task, taken from the quote. |
Idempotency-Key | Header | A unique key per task, so a repeated request returns the original task instead of charging again. |
Typical ways to put Seedance 2.0 to work.
Turn an idea into a short clip for social posts. Try several prompt wordings with the Fast variant, then render the version you like with the standard variant.
Draft product teasers, ad concepts and campaign moodboards as moving images without a shoot, and refine the prompt until the motion and mood fit the brief.
Preview camera moves and scene pacing from a written shot description before you plan a full production.
Call the API from your product to generate clips on demand. Each request is quoted up front and its status can be polled until the result is ready.
Common questions about Seedance 2.0.
Seedance 2.0 is ByteDance's AI video generation model. On UniRoute you can use it from this page or through the API to turn a text prompt into a short video.
Seedance 2.0 is the standard variant and offers more resolution choices. Seedance 2.0 Fast has fewer options and a lower price per request, which makes it a good fit for trying prompts. The specs and pricing tables on this page list the exact options and prices.
From $0.12 / clip. Each request is priced for the whole clip at the resolution and duration you choose. The full price table is in the Pricing section (prices updated 2026-11-08).
Not yet. ByteDance describes support for them, but UniRoute currently accepts a text prompt plus a resolution and duration option. The API section of this page lists the inputs that are available now.
Use the media API: request a quote for your model and option, create a task with an Idempotency-Key and a maximum cost, then poll the task until the result is ready. The API section shows a complete example and the parameters.
Video generation is asynchronous. After you submit a request its status updates while it runs, and the result appears when it is ready. The time varies with the variant, the options you choose and current load, so poll the task instead of submitting it again.
No. Generation is paid from your wallet balance. You can open the workspace and review the price without paying, create an account to see a live quote for your exact settings, and you are charged only for requests that are accepted.