Seedance 2.5
Integrar
bytedance/seedance-2.5/draft/complete
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/bytedance/seedance-2.5/draft/complete?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"draft_id": "your-draft-id"
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.com/v1";
const headers = {
"Authorization": "Bearer " + process.env.DOITONG_API_KEY,
"Content-Type": "application/json",
};
// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/bytedance/seedance-2.5/draft/complete?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"draft_id": "your-draft-id"
}),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);
// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
import os
import requests
API = "https://api.doitong.com/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"draft_id": "your-draft-id",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/bytedance/seedance-2.5/draft/complete", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])
# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
# 1. Connect once (Claude Code; Cursor, VS Code, Claude Desktop: https://doitong.com/rm/developers/docs/mcp)
claude mcp add --transport http doitong-models https://api.doitong.com/v1/mcp \
--header "Authorization: Bearer $DOITONG_API_KEY"
# 2. Your agent calls the "run" tool with:
{
"model_id": "bytedance/seedance-2.5/draft/complete",
"input": {
"draft_id": "your-draft-id"
}
}
Cloma il model Seedance 2.5 (bytedance/seedance-2.5/draft/complete) tras la Doitong API. Documentaziun per agents: https://doitong.com/rm/developers/models/bytedance/seedance-2.5/draft/complete.md
POST https://api.doitong.com/v1/run/bytedance/seedance-2.5/draft/complete?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"draft_id": "your-draft-id"
}
Sche il status da la resposta è "queued" u "running", fa polling GET https://api.doitong.com/v1/requests/REQUEST_ID?wait=20 fin ch'el è "succeeded"; las datotecas èn en outputs[].url. POST https://api.doitong.com/v1/quote/bytedance/seedance-2.5/draft/complete cun il medem body returna il pretsch exact avant l'execuziun.
Questa dumonda: ≈$9,15 9 150 credits API Lantschar sin questa pagina
Tia nova clav API. Quest vegn mussada mo ussa ed è gia en il code ed en il champ da la clav API sutvart. Mantegna ella secreta: na la metta mai en code che vegn exequì en in navigatur.
Fatg sin Doitong
Ovras publicas fatgas cun Seedance 2.5 da la communitad Doitong. Reutilisescha in prompt cun in clic.
Video
Use the input image as the base scene and visual appearance. Use the reference video strictly as a motion reference for the dog’s movement. The dog must move exactly like in the reference video: - same gait (trotting rhythm) - same speed and tempo - same head motion and body dynamics - same ear...
Video
First-person POV of a dog trotting forward along the path at a realistic, moderate speed (approximately 8 km/h). The camera is positioned low, at the natural height of the dog’s head. The motion follows a true trotting gait: steady, rhythmic, grounded movement with gentle vertical bounce and...
Video
Subject: Young woman with dark hair, pale skin, glowing green eyes. Context: Dark, shadowy room. Action: Slow subtle breathing, slight blink. Cold direct gaze at camera. Finger pressed to lips. Minimal movement. Style: Cinematic, hyperrealistic, mysterious, intense. Camera motion: Static shot, no...
Video
First-person POV of a dog running forward along the path at a realistic, moderate speed (approximately 10 km/h). The camera is positioned low, at the natural height of the dog’s head. The motion follows a true trotting gait: steady, rhythmic, grounded movement with gentle vertical bounce and...
Video
Очень медленный финальный наезд камеры. Пламя свечи на переднем плане горит ярче, создавая блики. Dialogue in this scene: Астролог: "Но в марте будет одна дата… когда решение изменит всё. Напишите в комментариях “Овен” — и я сделаю отдельный разбор." No background music.
Video
A close-up portrait of a striking cyberpunk woman with sleek dark hair partially wet and falling around her face. She’s wearing glossy, high-tech neon visor goggles with a vivid color gradient — bright yellow, orange, and pink reflecting glowing city lights. Her expression is confident and...
Video
Ultra-realistic scene featuring miniature construction workers in orange vests and hard hats, actively working on a giant [pizza]. The tiny workers are using small tools, cranes, and machines to [assemble]. The [pizza] is placed on a metal surface or kitchen countertop. Steam or particles rise...
Video
Two sandboarders racing down massive golden sand dunes, carving aggressively in wide S-curves, heading directly toward the camera in a low, dramatic angle. They are captured in mid-motion, kicking up thick trails of sand behind their boards. Both riders wear full protective sandboarding suits in...
Video
Алиса издает радостный, заливистый смех и весело дрыгает ножками в воздухе. Камера плавно уходит в затемнение через мягкий расфокус, оставляя ощущение тепла. На последних секундах в кадр попадает ладонь мамы, которая нежно гладит ребенка по голове, успокаивая суету. Завершающий аккорд видео...
Video
Папа судорожно разворачивает подгузник, случайно роняет его и быстро наклоняется, чтобы поднять, исчезая из кадра на секунду. Камера плавно переводит фокус от папы к лицу Алисы на переднем плане. Малышка издает тихий звук, похожий на вздох, сохраняя полное олимпийское спокойствие и глядя на суету...
Video
Родители забавно сталкиваются спинами на заднем плане, синхронно ойкают и продолжают свой безумный бег. Камера быстро отъезжает назад, открывая масштабный вид на всю комнату, полную движения. В самом центре кадра Алиса остается абсолютно неподвижной, создавая сильный визуальный контраст между...
Video
Алиса медленно и очень забавно поворачивает голову сначала влево, затем вправо, пытаясь осознать причину шума. Камера совершает круговое вращение вокруг ее головы на 90 градусов. Ее маленькая пухлая ручка тянется к объективу, пальцы медленно сжимаются и разжимаются. Атмосфера сцены передает милое...
Video
На заднем плане мама и папа комично проносятся из стороны в сторону, создавая эффект ускоренной суеты. Камера слегка покачивается, имитируя живой взгляд. Алиса медленно переводит взгляд с одного родителя на другого, ее брови слегка приподняты в забавном недоумении. Движения родителей подчеркнуто...
Video
Папа судорожно разворачивает подгузник, случайно роняет его и быстро наклоняется, чтобы поднять, исчезая из кадра на секунду. Камера плавно переводит фокус от папы к лицу Алисы на переднем плане. Малышка издает тихий звук, похожий на вздох, сохраняя полное олимпийское спокойствие и глядя на суету...
Video
Папа судорожно разворачивает подгузник, случайно роняет его и быстро наклоняется, чтобы поднять, исчезая из кадра на секунду. Камера плавно переводит фокус от папы к лицу Алисы на переднем плане. Малышка издает тихий звук, похожий на вздох, сохраняя полное олимпийское спокойствие и глядя на суету...
Video
На заднем плане мама и папа комично проносятся из стороны в сторону, создавая эффект ускоренной суеты. Камера слегка покачивается, имитируя живой взгляд. Алиса медленно переводит взгляд с одного родителя на другого, ее брови слегка приподняты в забавном недоумении. Движения родителей подчеркнуто...
Construir ina dumonda
Ils controls vegnan generads dal schema dal model. Il code e il pretsch s'actualiseschan durant che ti als midas.
/run/bytedance/seedance-2.5/draft/complete?wait=20
calculaziun → $9,15
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/bytedance/seedance-2.5/draft/complete?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"draft_id": "your-draft-id"
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.com/v1";
const headers = {
"Authorization": "Bearer " + process.env.DOITONG_API_KEY,
"Content-Type": "application/json",
};
// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/bytedance/seedance-2.5/draft/complete?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"draft_id": "your-draft-id"
}),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);
// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
import os
import requests
API = "https://api.doitong.com/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"draft_id": "your-draft-id",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/bytedance/seedance-2.5/draft/complete", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])
# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "run",
"arguments": {
"model_id": "bytedance/seedance-2.5/draft/complete",
"input": {
"draft_id": "your-draft-id"
},
"wait_seconds": 20
}
}
}
Executar questa dumonda
Tia clav resta en quest browser: ella vegn tramessa mo al Doitong API e memorisada (localStorage) mo sch'ella scheccas Tiar a memoria. Obtegnair ina clav API
Davart Seedance 2.5
Survegn in `draft_id` d'ina execuziun anteriura da Seedance 2.5 e renda il video final. L'id resta valid durant set dis e mo per il caller original. L'output è fixà a 1080p, e il codec po esser auto, H264 u H265. La resposta cuntegna il video e la semenza.
Parameters
draft_idobligatori
resolutionopziunal
codecopziunal
Output
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "bytedance/seedance-2.5/draft/complete",
"status": "succeeded",
"created_at": "2026-10-20T12:00:00Z",
"started_at": "2026-10-20T12:00:02Z",
"completed_at": "2026-10-20T12:00:09Z",
"queue_position": null,
"cost": {
"credits": 9150,
"usd": "9.15",
"charged": 9150,
"refunded": 0
},
"input": {
"draft_id": "your-draft-id"
},
"output": {
"video": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
"content_type": "video/mp4",
"file_name": "0-output.mp4",
"file_size": 1843200
},
"seed": 42,
"draft_id": "string"
},
"outputs": [
{
"type": "video",
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
"content_type": "video/mp4",
"file_size": 1843200,
"width": 1280,
"height": 720,
"duration": 5,
"stored": true
}
],
"error": null,
"metrics": {
"inference_seconds": 6.8
},
"urls": {
"self": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
"cancel": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
}
}
Champs da l'output
- video
- object {url, content_type, file_name, file_size}Datoteca video producida da la generaziun.
- seed
- integerValur da seed applitgada durant la generaziun.
- draft_id
- string | nullIdentifitgader da bozza per la terminaziun sut il medem conto entaifer set dis; la resposta cuntegna null sch'il mod da bozza è disactivà.
Dapli models: Video a video
Per agents AI: questa pagina sco Markdown è disponibla sut https://doitong.com/rm/developers/models/bytedance/seedance-2.5/draft/complete.md. Tut ils models e las guidas: https://doitong.com/developers/llms.txt