Seedance 2.5 Flex API
Seedance 2.5 Flex by ByteDance for text to video, reference to video, 4–30s clips up to 1080p with audio. Call it through Moyi API's OpenAI-compatible /v1/videos endpoint with one API key.
Loading price…
Seedance 2.5 Flex model IDs and parameters
| Mode | Model ID | Duration | Resolution | Aspect ratio | Audio |
|---|---|---|---|---|---|
| Text to video | seedance-2-5-text-to-video-flex | 4–30s | 480p, 720p, 1080p | 16:9, 4:3, 1:1, 3:4, 21:9, 9:16 | Yes |
| Reference to video | seedance-2-5-reference-to-video-flex | 4–30s | 480p, 720p, 1080p | 16:9, 4:3, 1:1, 3:4, 21:9, 9:16 | Yes |
Call the Seedance 2.5 Flex API
1. Get an API key and set it as an environment variable
export TEAMO_API_KEY=sk-teamo-...2. Make your first request
Video generation is asynchronous: create a job, poll it, then download the MP4.
import os, time, requests
API = "https://api.moyi-api.com/v1/videos"
headers = {"Authorization": f"Bearer {os.environ['TEAMO_API_KEY']}"}
# 1. Create a video job
job = requests.post(API, headers=headers, json={
"model": "seedance-2-5-text-to-video-flex",
"prompt": "A small dog running on grass",
"seconds": "5",
}).json()
# 2. Poll until status is completed
while job["status"] not in ("completed", "failed"):
time.sleep(5)
job = requests.get(f"{API}/{job['id']}", headers=headers).json()
# 3. Download the MP4
if job["status"] == "completed":
video = requests.get(f"{API}/{job['id']}/content", headers=headers)
open("video.mp4", "wb").write(video.content)
else:
print(job.get("error"))Pricing
Loading price…
Seedance 2.5 Flex API FAQ
- What are the Seedance 2.5 Flex API model IDs?
- Seedance 2.5 Flex model IDs on Moyi API — Text to video: seedance-2-5-text-to-video-flex; Reference to video: seedance-2-5-reference-to-video-flex.
- What is the difference between Seedance 2.5 Flex text-to-video and image-to-video?
- Text to video creates a clip from a prompt only. Image to video animates the image you pass in input_reference as the first frame, and reference to video uses your images as references for characters, objects or style.
- How long and what resolution can Seedance 2.5 Flex videos be?
- Seedance 2.5 Flex generates 4–30s clips up to 1080p in 16:9, 4:3, 1:1, 3:4, 21:9, 9:16, with optional audio. Pass seconds as an integer string; if size is omitted, the model's first supported resolution and aspect ratio are used.
- How do I call the Seedance 2.5 Flex API?
- Send POST /v1/videos with the model ID and prompt, poll GET /v1/videos/{video_id} until status is completed, then download from /v1/videos/{video_id}/content. The endpoint follows OpenAI Videos, so the OpenAI SDK's client.videos.create works with base_url https://api.moyi-api.com/v1. Video generation API docs.
- How much does the Seedance 2.5 Flex API cost and how do I pay?
- Seedance 2.5 Flex is billed per second of generated video. New accounts start with a $0 balance — top up from $5 by card, then usage is deducted per job with no subscription. Per-second and per-clip prices are in the Pricing section of this page. Top up.