TokenRa
中文Get API Key

Video model · ByteDance

Seedance 2.5 Pro API

Seedance 2.5 Pro is ByteDance's Seedance 2.5 video model, served on TokenRa under the ID artsdance-2-5-pro-260801. It takes text and reference images and returns a video with audio. The request format differs from Seedance 2.0.

Model ID
artsdance-2-5-pro-260801
Input
Text, reference images
Output
720p or 1080p video
Mode
Async task

Capabilities

Capabilities & endpoints

Video generation is asynchronous: create a task, then poll it. A 4–5 second 720p clip took about 5 minutes in testing.

POSThttps://tokenra.io/v1/video/generationsTested
Create a task. Returns task_id immediately.
GEThttps://tokenra.io/v1/video/generations/{task_id}Tested
Query the task. The video link is in data.result_url when data.status is SUCCESS.

Modes

Generation modes

A. Text to video

Output settings sit at the top level of the request. Tested on 2026-10-23: the video came back 720x1280, 4.08 seconds long and without an audio track.

POST /v1/video/generations
{
  "model": "artsdance-2-5-pro-260801",
  "prompt": "A paper boat drifting down a rainy neon street at night, cinematic close-up",
  "resolution": "720p",
  "ratio": "9:16",
  "duration": 4,
  "generate_audio": false
}

B. Reference images

Image URLs in images are sent to the model as reference images. Tested on 2026-10-23: a 1280x720, 5-second video with audio, the defaults when ratio, duration and generate_audio are left out.

POST /v1/video/generations
{
  "model": "artsdance-2-5-pro-260801",
  "prompt": "The logo card slowly zooms in while a soft light sweeps across it",
  "images": ["https://example.com/logo-card.png"],
  "resolution": "720p"
}

C. content array

To control each item, send content instead of prompt and images: 1 to 16 items of type text or image_url, with at least one text item. role is passed to the model as given. Mode B is converted into this same request.

POST /v1/video/generations
{
  "model": "artsdance-2-5-pro-260801",
  "resolution": "720p",
  "content": [
    {"type": "text", "text": "The character from image 1 walks into the room from image 2"},
    {
      "type": "image_url",
      "image_url": {"url": "https://example.com/character.png"},
      "role": "reference_image"
    },
    {
      "type": "image_url",
      "image_url": {"url": "https://example.com/room.png"},
      "role": "reference_image"
    }
  ]
}

Request

Request parameters

Output settings go at the top level
Seedance 2.5 reads resolution, ratio, duration and generate_audio from the top level of the request. This is the opposite of Seedance 2.0, which reads them from metadata.
ParameterTypeRequiredDescription
modelstringYesartsdance-2-5-pro-260801
promptstringYesDescribe the scene, the motion and the camera. Optional when content contains a text item.
resolutionstringYes720p or 1080p. Required; 480p and a missing value are rejected. Also decides the price.
ratiostringNoAspect ratio such as 16:9 or 9:16; 9:16 was tested.
durationintegerNoLength in seconds. Default 5; 4 was tested.
generate_audiobooleanNoGenerate a soundtrack. On by default; false produced a silent video.
imagesstring[]NoReference image URLs, see mode B.
contentarrayNoText and image items, see mode C. Replaces prompt and images.
Not supported on TokenRa
  • metadata is ignored. A request that put resolution only in metadata was rejected with invalid_resolution.
  • Video and audio references are not available: video_url and audio_url items fail with unsupported content type.
  • Only the fields in the table are sent to the model. Others, such as seed, watermark, return_last_frame or callback_url, are dropped without an error.

Response

Response format

Create response

200 OK
{
  "id": "task_FUhA4FK80TV1p70mpHlyZXCxeHR0dPPa",
  "task_id": "task_FUhA4FK80TV1p70mpHlyZXCxeHR0dPPa",
  "object": "video",
  "model": "artsdance-2-5-pro-260801",
  "status": "queued",
  "progress": 0,
  "created_at": 1792766873
}

Query response

200 OK
{
  "code": "success",
  "message": "",
  "data": {
    "task_id": "task_FUhA4FK80TV1p70mpHlyZXCxeHR0dPPa",
    "action": "generate",
    "status": "SUCCESS",
    "fail_reason": "",
    "result_url": "https://example.com/output.mp4",
    "submit_time": 1792766873,
    "start_time": 1792766890,
    "finish_time": 1792767085,
    "progress": "100%",
    "data": {
      "id": "cgt-20261023154938-amaq7",
      "object": "video.generation",
      "status": "completed",
      "data": [{"url": "https://example.com/output.mp4"}],
      "usage": {"total_tokens": 104140, "completion_tokens": 104140}
    }
  }
}

data.data holds the raw upstream task. Unlike Seedance 2.0 it does not repeat the resolution, ratio or duration; usage.total_tokens is the billed video token count.

data.statusMeaning
NOT_START / SUBMITTED / QUEUEDAccepted, waiting to start.
IN_PROGRESSGenerating.
SUCCESSDone. Download result_url.
FAILUREFailed. The reason is in fail_reason; the pre-charged amount is refunded.

Errors

Errors & limits

Errors from this model

HTTPcodeMessageCause
400invalid_resolutionresolution must be 720p or 1080presolution missing, 480p, or only inside metadata.
400invalid_requestprompt is requiredNo prompt and no text item in content.
500build_request_failedunsupported content type: video_urlA content item other than text or image_url.

Common errors

HTTPerror.codeMeaningWhat to do
401—Missing, wrong or deleted API key. The message is Invalid token.Check the Authorization: Bearer header and the key in the console.
400—The body is not valid JSON.Fix the JSON and send Content-Type: application/json.
500invalid_requestA required field is missing, for example messages.Add the field named in the message. Retrying will not help.
403insufficient_user_quotaYour balance or plan quota is used up.Top up in the console, then retry.
503model_not_foundUnknown model ID, or no channel serves it for your group.Check the ID in the model list or with GET /v1/models.
429—Too many requests.Back off exponentially and retry.
5xx—The upstream provider failed or timed out.Retry a few times; keep the request id if it persists.

Limits and notes

  • Poll every 10–15 seconds. Test tasks (4–5 s, 720p) finished in about 5 minutes.
  • result_url is a temporary link. Download and store the video yourself.
  • The price depends on resolution (720p or 1080p). See the live rate in the Model Square.