SEEDANCE25APIINDEPENDENT

API QUICKSTART / HUMAN + AGENT READY

Integrate Seedance 2.5 with one asynchronous API flow.

Pick the T2V, I2V, or R2V workflow ID, build the request, submit an asynchronous task, and start with a short test.

STATUSOFFICIAL API LIVE
Confirmed · OFFICIAL API Official developer API live

The official developer API is live at this page publication, and EvoLink launches its integrated route on the same publication date.

Official pricing docs →
Confirmed · EVOLINK Live on EvoLink · API key access available

The upstream official API and EvoLink integration are live for the August 7 publication. Use the three workflow-specific EvoLink model IDs and verify the current price shown in the EvoLink console before production traffic.

Open Seedance 2.5 on EvoLink →
Text to videoseedance-2.5-text-to-videoLive EvoLink model ID for prompt-only text-to-video requests.
Image to videoseedance-2.5-image-to-videoLive EvoLink model ID for first-frame or first/last-frame image-to-video requests.
Reference to videoseedance-2.5-reference-to-videoLive EvoLink model ID for multimodal reference-to-video, editing, and extension workflows.
CODECURL + NODE
GENERATE.SH
curl https://api.evolink.ai/v1/videos/generations \
  -H "Authorization: Bearer $EVOLINK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5-text-to-video",
    "prompt": "A clean product shot, slow dolly in, soft daylight",
    "duration": 5,
    "quality": "720p",
    "generate_audio": true
  }'
GENERATE.MJS
const resp = await fetch("https://api.evolink.ai/v1/videos/generations", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.EVOLINK_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    // Default T2V route. Switch to the I2V or R2V ID for those workflows.
    model: process.env.SEEDANCE_MODEL || "seedance-2.5-text-to-video",
    prompt,
    duration: 5,
    quality: "720p",
    generate_audio: true,
  }),
});

const job = await resp.json();
// Current documented EvoLink task-query pattern:
const task = await fetch(`https://api.evolink.ai/v1/tasks/${job.id}`, {
  headers: { Authorization: `Bearer ${process.env.EVOLINK_API_KEY}` },
}).then((r) => r.json());
PARAMETERSREQUEST BODY
FieldTypeRequiredNotes
model string REQUIRED Choose the live T2V, I2V, or R2V EvoLink model ID; the quickstart defaults to text-to-video.
prompt string REQUIRED Shot description with subject, motion, style, and constraints.
duration / quality provider fields REQUIRED Use 4–30 seconds and 480p/720p; 4K is not a launch API tier.
generate_audio / content_filter provider fields optional Use only when supported by the selected workflow; review the current console price before scaling.
image_urls / video_urls / audio_urls provider fields optional Reference mode supports 30 images, 10 videos, and 10 audio files.
callback_url provider field optional Poll GET /v1/tasks/{task_id}; use callbacks when your integration enables them.

Machine-readable schema: /openapi.json / Agent guide: /agent.md

HANDOFFFINAL STEP

The route is live. Create a key and run your first short test.

Open EvoLink, add EVOLINK_API_KEY, choose the workflow-specific model ID, then verify the returned output and current console price before scaling production traffic.

Create EvoLink key