Seedance 2.5
Integracja
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/pl/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"
}
}
Wywołaj model Seedance 2.5 (bytedance/seedance-2.5/draft/complete) za pośrednictwem Doitong API. Dokumentacja dla agentów: https://doitong.com/pl/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"
}
Jeśli status odpowiedzi to "queued" lub "running", odpytuj GET https://api.doitong.com/v1/requests/REQUEST_ID?wait=20, aż status zmieni się na "succeeded"; pliki znajdują się w outputs[].url. POST https://api.doitong.com/v1/quote/bytedance/seedance-2.5/draft/complete z tym samym ciałem zwraca dokładną cenę przed uruchomieniem.
To żądanie: ≈9,15 $ 9150 kredytów API Uruchom na tej stronie
Twój nowy klucz API. Jest wyświetlany tylko teraz i znajduje się już w kodzie oraz w polu klucza API poniżej. Zachowaj go w tajemnicy: nigdy nie umieszczaj go w kodzie uruchamianym w przeglądarce.
Utworzone w Doitong
Publiczne prace utworzone za pomocą Seedance 2.5 przez społeczność Doitong. Użyj ponownie promptu jednym kliknięciem.
Wideo
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...
Wideo
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...
Wideo
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...
Wideo
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...
Wideo
Очень медленный финальный наезд камеры. Пламя свечи на переднем плане горит ярче, создавая блики. Dialogue in this scene: Астролог: "Но в марте будет одна дата… когда решение изменит всё. Напишите в комментариях “Овен” — и я сделаю отдельный разбор." No background music.
Wideo
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...
Wideo
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...
Wideo
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...
Wideo
Алиса издает радостный, заливистый смех и весело дрыгает ножками в воздухе. Камера плавно уходит в затемнение через мягкий расфокус, оставляя ощущение тепла. На последних секундах в кадр попадает ладонь мамы, которая нежно гладит ребенка по голове, успокаивая суету. Завершающий аккорд видео...
Wideo
Папа судорожно разворачивает подгузник, случайно роняет его и быстро наклоняется, чтобы поднять, исчезая из кадра на секунду. Камера плавно переводит фокус от папы к лицу Алисы на переднем плане. Малышка издает тихий звук, похожий на вздох, сохраняя полное олимпийское спокойствие и глядя на суету...
Wideo
Родители забавно сталкиваются спинами на заднем плане, синхронно ойкают и продолжают свой безумный бег. Камера быстро отъезжает назад, открывая масштабный вид на всю комнату, полную движения. В самом центре кадра Алиса остается абсолютно неподвижной, создавая сильный визуальный контраст между...
Wideo
Алиса медленно и очень забавно поворачивает голову сначала влево, затем вправо, пытаясь осознать причину шума. Камера совершает круговое вращение вокруг ее головы на 90 градусов. Ее маленькая пухлая ручка тянется к объективу, пальцы медленно сжимаются и разжимаются. Атмосфера сцены передает милое...
Wideo
На заднем плане мама и папа комично проносятся из стороны в сторону, создавая эффект ускоренной суеты. Камера слегка покачивается, имитируя живой взгляд. Алиса медленно переводит взгляд с одного родителя на другого, ее брови слегка приподняты в забавном недоумении. Движения родителей подчеркнуто...
Wideo
Папа судорожно разворачивает подгузник, случайно роняет его и быстро наклоняется, чтобы поднять, исчезая из кадра на секунду. Камера плавно переводит фокус от папы к лицу Алисы на переднем плане. Малышка издает тихий звук, похожий на вздох, сохраняя полное олимпийское спокойствие и глядя на суету...
Wideo
Папа судорожно разворачивает подгузник, случайно роняет его и быстро наклоняется, чтобы поднять, исчезая из кадра на секунду. Камера плавно переводит фокус от папы к лицу Алисы на переднем плане. Малышка издает тихий звук, похожий на вздох, сохраняя полное олимпийское спокойствие и глядя на суету...
Wideo
На заднем плане мама и папа комично проносятся из стороны в сторону, создавая эффект ускоренной суеты. Камера слегка покачивается, имитируя живой взгляд. Алиса медленно переводит взгляд с одного родителя на другого, ее брови слегка приподняты в забавном недоумении. Движения родителей подчеркнуто...
Zbuduj żądanie
Elementy sterujące są generowane ze schematu modelu. Kod i cena aktualizują się podczas ich zmiany.
/run/bytedance/seedance-2.5/draft/complete?wait=20
wycena → 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
}
}
}
Uruchom to żądanie
Klucz pozostaje w tej przeglądarce: jest wysyłany tylko do Doitong API i zapisywany (localStorage) tylko po zaznaczeniu opcji Zapamiętaj. Uzyskaj klucz API
Informacje o Seedance 2.5
Przyjmuje `draft_id` z wcześniejszego uruchomienia szkicu Seedance 2.5 i renderuje finalne wideo. Identyfikator pozostaje ważny przez siedem dni i tylko dla pierwotnego wywołującego. Wynik ma stałą rozdzielczość 1080p, a kodek może mieć wartość auto, H264 lub H265. Zwraca wideo i ziarno.
Parametry
draft_idwymagane
resolutionopcjonalne
codecopcjonalne
Wynik
{
"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"
}
}
Pola wyniku
- video
- object {url, content_type, file_name, file_size}Plik wideo utworzony podczas generowania.
- seed
- integerWartość ziarna stosowana podczas generowania.
- draft_id
- string | nullIdentyfikator wersji roboczej do ukończenia na tym samym koncie w ciągu siedmiu dni; odpowiedź zawiera null, jeśli tryb wersji roboczych jest wyłączony.
Więcej modeli: Wideo na wideo
Dla agentów AI: ta strona w formacie Markdown jest dostępna pod adresem https://doitong.com/pl/developers/models/bytedance/seedance-2.5/draft/complete.md. Wszystkie modele i przewodniki: https://doitong.com/developers/llms.txt