
Multimodal video model for cinematic output from text, image, audio, or video inputs, with stable motion and consistent characters.
Multimodal video model for cinematic output from text, image, audio, or video inputs, with stable motion and consistent characters.
seedance-2-0-proPOST /v1/videos/generationsLive pay-as-you-go rates from the EmpirioLabs catalog. You are billed only for what you use, with no monthly minimum.
Seedance 2.0 Pro runs through POST /v1/videos/generations. The request returns a job_id right away; poll GET /v1/jobs/{job_id} until the job completes and read the output URLs from the result. Get an API key from the EmpirioLabs dashboard.
curl https://api.empiriolabs.ai/v1/videos/generations \
-H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "seedance-2-0-pro",
"prompt": "Describe what you want Seedance 2.0 Pro to generate."
}'curl https://api.empiriolabs.ai/v1/jobs/JOB_ID \
-H "Authorization: Bearer $EMPIRIOLABS_API_KEY"import requests
response = requests.post(
"https://api.empiriolabs.ai/v1/videos/generations",
headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
json={
"model": "seedance-2-0-pro",
"prompt": "Describe what you want Seedance 2.0 Pro to generate.",
},
)
job = response.json()
# Generation runs as an async job. Poll until it completes.
import time
while True:
status = requests.get(
f"https://api.empiriolabs.ai/v1/jobs/{job['job_id']}",
headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
).json()
if status.get("status") in ("completed", "failed"):
print(status)
break
time.sleep(5)Request parameters supported by the Seedance 2.0 Pro API on EmpirioLabs. Defaults apply when a field is omitted.
| Parameter | Type | Default | Range / values | Description |
|---|---|---|---|---|
| prompt | string | - | - | Scene description. |
| mode | enum | auto | auto, t2v, i2v_first, i2v_both, reference, edit, extend | auto: detect from inputs. t2v: text-to-video. i2v_first: animate first frame. i2v_both: morph between start (image) and end (image_end). reference: use image as... |
| resolution | enum | 720p | 480p, 720p, 1080p | Output resolution. Larger = higher fidelity but slower / more expensive. |
| aspect_ratio | enum | adaptive | adaptive, 16:9, 9:16, 1:1, 4:3, 3:4, 21:9 | adaptive: derive from input image. |
| custom_duration | boolean | true | - | If false, the model decides clip length. If true, use the duration field. |
| duration | number | 5 | 4 to 15 | Clip length in seconds. Only used when custom_duration=true. |
| generate_audio | boolean | true | - | Generate native audio with the video. |
| image | string | - | - | Reference image URL. |
| image_end | string | - | - | End-frame image URL for i2v_both. |
| video | string | - | - | Reference video URL for edit / extend. |
| negative_prompt | string | - | - | What to avoid. |
Multimodal video from text, images, audio, and video inputs. Native audio-video sync, strong motion stability, consistent character handling.
On EmpirioLabs, Seedance 2.0 Pro is billed pay as you go: T2V/I2V 480P $0.139 per second; T2V/I2V 720P $0.300 per second; T2V/I2V 1080P $0.749 per second. The live rate card on this page always matches what the API charges.
Seedance 2.0 Pro is served through POST /v1/videos/generations on api.empiriolabs.ai with standard bearer-token authentication.
Yes. The EmpirioLabs playground runs Seedance 2.0 Pro in the browser with the same parameters the API exposes, so you can test prompts before writing code.
Create an EmpirioLabs account, then generate a key under API Keys in the dashboard. Billing is pay-as-you-go credits, so you only pay for the requests you make.
Explore our models, or contact us about business inquiries, custom deployments, or anything else.