Skip to content
llms.party

BytePlus Seedance

seedance serves BytePlus ModelArk's Dreamina Seedance 2.5 on the same /v1/videos API as the MiniMax groups. It supports clips up to 30 seconds at 480p, 720p or 1080p, from text or a single first-frame image.

A deployment serves this group only when its BytePlus credential is configured. GET /v1/models lists the groups your key can call.

Try it

Generate a video

POST /v1/videos

BytePlus Seedance · billed by tokens

Create a job

curl -sS "https://llms.party/v1/videos" \
  -H "Authorization: Bearer $LLMS_PARTY_KEY" \
  -H "content-type: application/json" \
  -d '{
    "model": "seedance",
    "prompt": "A glass city at sunset, slow aerial push-in.",
    "seconds": 5,
    "resolution": "720p",
    "ratio": "16:9"
  }'
FieldSeedance values
seconds4–30, integer.
resolution480p, 720p (default) or 1080p, lowercase.
ratio16:9, 4:3, 1:1, 3:4, 9:16, 21:9; image input follows the image.
input_referenceOne image URL for the first frame.

Reference video input and the editing and extension surfaces are not exposed through the gateway. One first-frame image is the supported input.

Poll and download

Polling is the same as the other video groups:

curl -sS "https://llms.party/v1/videos/$VIDEO_ID" \
  -H "Authorization: Bearer $LLMS_PARTY_KEY"

The task moves from queued to in_progress to completed. A 4 s 480p job took around two minutes in testing; longer clips take longer.

When the job completes, download the clip through the OpenAI-compatible content route:

curl -sS "https://llms.party/v1/videos/$VIDEO_ID/content" \
  -H "Authorization: Bearer $LLMS_PARTY_KEY" \
  -o seedance.mp4

The response is video/mp4. The gateway streams the file from BytePlus as it downloads (Range requests are supported), so large 720p/1080p clips are not buffered. BytePlus's signed URL is resolved internally and is not returned in the task object; it expires after 24 hours or 100 downloads, so always fetch through /content. BytePlus keeps task records for 7 days; after that a finished clip can no longer be downloaded.

What it costs

BytePlus bills Seedance by tokens, not per second. The price is per million completion tokens:

ResolutionUSD per 1M tokens5 s at 16:9, 24 fps30 s at 16:9, 24 fps
480p$10.7048,038 tokens · $0.514288,225 · $3.08
720p$10.70108,000 · $1.156648,000 · $6.94
1080p$11.70243,000 · $2.8431,458,000 · $17.06

The token estimate is:

tokens = (input video seconds + output seconds) × width × height × fps / 1024

For text-to-video the input-video term is zero. The polled task's usage.total_tokens is the real token count (BytePlus reports it as completion tokens upstream). Only successful generations are billed. Failures, including moderation rejections, are free. Input video has a lower token rate ($6.40/1M tokens at 480p/720p, $7.00/1M at 1080p) with a minimum consumption floor, but reference-video input is not exposed through the gateway anyway.

The gateway's spend meter estimates this from the clip's duration and resolution, so the spend booked against the key may differ slightly from the BytePlus invoice. Reconcile large runs against the invoice. Rates: BytePlus ModelArk pricing.

Compare with MiniMax H3, which is charged per second of output ($0.05–$0.13/s) but limited to 15 s.

Status and errors

StatusMeaning
queuedAccepted, waiting for a worker.
in_progressRendering.
completedReady to download via /content.
failederror.message says why.
cancelledCancelled before completion.

A moderation rejection surfaces as failed, usually quickly. A 422 from create means the request was rejected before a task existed (budget, model access or validation), not a provider failure.