Wan 3.0 Image to Video
Integrace
alibaba/wan-3.0/image-to-video
# 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/alibaba/wan-3.0/image-to-video?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "The hummingbird hovers in place with blurred wings, sips from the flower, then darts out of frame as the camera slowly racks focus to dew drops on the leaves.",
"resolution": "480p",
"duration": 5,
"generate_audio": false,
"image": "https://content.doitong.com/dev-api/2026/10/21/req_8d2gi6xieif0cf518mbnx752/0-MBac_P_HYvIYfHDIWeUvA_IRELThrq.png"
}'
# 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/alibaba/wan-3.0/image-to-video?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "The hummingbird hovers in place with blurred wings, sips from the flower, then darts out of frame as the camera slowly racks focus to dew drops on the leaves.",
"resolution": "480p",
"duration": 5,
"generate_audio": false,
"image": "https://content.doitong.com/dev-api/2026/10/21/req_8d2gi6xieif0cf518mbnx752/0-MBac_P_HYvIYfHDIWeUvA_IRELThrq.png"
}),
});
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 = {
"prompt": "The hummingbird hovers in place with blurred wings, sips from the flower, then darts out of frame as the camera slowly racks focus to dew drops on the leaves.",
"resolution": "480p",
"duration": 5,
"generate_audio": False,
"image": "https://content.doitong.com/dev-api/2026/10/21/req_8d2gi6xieif0cf518mbnx752/0-MBac_P_HYvIYfHDIWeUvA_IRELThrq.png",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/alibaba/wan-3.0/image-to-video", 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/cs/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": "alibaba/wan-3.0/image-to-video",
"input": {
"prompt": "The hummingbird hovers in place with blurred wings, sips from the flower, then darts out of frame as the camera slowly racks focus to dew drops on the leaves.",
"resolution": "480p",
"duration": 5,
"generate_audio": false,
"image": "https://content.doitong.com/dev-api/2026/10/21/req_8d2gi6xieif0cf518mbnx752/0-MBac_P_HYvIYfHDIWeUvA_IRELThrq.png"
}
}
Volejte model Wan 3.0 Image to Video (alibaba/wan-3.0/image-to-video) prostřednictvím Doitong API. Dokumentace pro agenty: https://doitong.com/cs/developers/models/alibaba/wan-3.0/image-to-video.md
POST https://api.doitong.com/v1/run/alibaba/wan-3.0/image-to-video?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"prompt": "The hummingbird hovers in place with blurred wings, sips from the flower, then darts out of frame as the camera slowly racks focus to dew drops on the leaves.",
"resolution": "480p",
"duration": 5,
"generate_audio": false,
"image": "https://content.doitong.com/dev-api/2026/10/21/req_8d2gi6xieif0cf518mbnx752/0-MBac_P_HYvIYfHDIWeUvA_IRELThrq.png"
}
Pokud je stav odpovědi "queued" nebo "running", dotazujte GET https://api.doitong.com/v1/requests/REQUEST_ID?wait=20, dokud nebude "succeeded"; soubory jsou v outputs[].url. POST https://api.doitong.com/v1/quote/alibaba/wan-3.0/image-to-video se stejným tělem vrátí přesnou cenu před spuštěním.
Tento požadavek: 0,25 $ 250 kreditů API Spustit na této stránce
Váš nový API klíč. Zobrazuje se pouze nyní a už je vložen do kódu a do pole API klíč níže. Uchovávejte ho v tajnosti: nikdy ho nevkládejte do kódu, který se spouští v prohlížeči.
Příklady
Sestavit požadavek
Ovládací prvky se generují ze schématu modelu. Kód a cena se aktualizují podle provedených změn.
/run/alibaba/wan-3.0/image-to-video?wait=20
cena → 0,25 $
# 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/alibaba/wan-3.0/image-to-video?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "The hummingbird hovers in place with blurred wings, sips from the flower, then darts out of frame as the camera slowly racks focus to dew drops on the leaves.",
"resolution": "480p",
"duration": 5,
"generate_audio": false,
"image": "https://content.doitong.com/dev-api/2026/10/21/req_8d2gi6xieif0cf518mbnx752/0-MBac_P_HYvIYfHDIWeUvA_IRELThrq.png"
}'
# 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/alibaba/wan-3.0/image-to-video?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "The hummingbird hovers in place with blurred wings, sips from the flower, then darts out of frame as the camera slowly racks focus to dew drops on the leaves.",
"resolution": "480p",
"duration": 5,
"generate_audio": false,
"image": "https://content.doitong.com/dev-api/2026/10/21/req_8d2gi6xieif0cf518mbnx752/0-MBac_P_HYvIYfHDIWeUvA_IRELThrq.png"
}),
});
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 = {
"prompt": "The hummingbird hovers in place with blurred wings, sips from the flower, then darts out of frame as the camera slowly racks focus to dew drops on the leaves.",
"resolution": "480p",
"duration": 5,
"generate_audio": False,
"image": "https://content.doitong.com/dev-api/2026/10/21/req_8d2gi6xieif0cf518mbnx752/0-MBac_P_HYvIYfHDIWeUvA_IRELThrq.png",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/alibaba/wan-3.0/image-to-video", 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": "alibaba/wan-3.0/image-to-video",
"input": {
"prompt": "The hummingbird hovers in place with blurred wings, sips from the flower, then darts out of frame as the camera slowly racks focus to dew drops on the leaves.",
"resolution": "480p",
"duration": 5,
"generate_audio": false,
"image": "https://content.doitong.com/dev-api/2026/10/21/req_8d2gi6xieif0cf518mbnx752/0-MBac_P_HYvIYfHDIWeUvA_IRELThrq.png"
},
"wait_seconds": 20
}
}
}
Spustit tento požadavek
Váš klíč zůstává v tomto prohlížeči: odesílá se pouze do Doitong API a uloží se do localStorage jen tehdy, když zaškrtnete možnost Zapamatovat. Získat klíč API
Vytvořeno na Doitong
Veřejná díla vytvořená komunitou Doitong pomocí Wan 3.0. Znovu použijte prompt jedním kliknutím.
Video
Create a realistic cinematic UGC-style commercial video, exactly 30 seconds long. The entire scene takes place inside a modern passenger airplane during a daytime flight. Natural smartphone-like cinematography, realistic airplane cabin, authentic passengers, natural lighting, realistic skin...
Video
Реалистичная бытовая сцена в советской одесской квартире зимним вечером. Женщина находится на кухне, мужчина — в комнате и прихожей. Атмосфера обычной советской семьи перед приходом гостей. Голоса: все персонажи говорят по-русски с естественным, выразительным одесским говором. Характерная...
O modelu Wan 3.0 Image to Video
Wan 3.0 image-to-video začíná vaším obrázkem a může skončit druhým obrázkem, přičemž generovaný zvuk je ve výchozím nastavení zapnutý. Prompt je volitelný. Klipy v délce 2 až 30 sekund při 480p, 720p nebo 1080p s adaptivním či pevným poměrem stran a volitelným krokem uvažování pro složitý pohyb.
Parametry
Odešlete buď kanonický název, nebo nativní název, ne oba. Kanonické názvy
promptvolitelné
resolutionvolitelné
aspect_ratiovolitelné
durationvolitelné
audiovolitelné
generate_audio
enable_prompt_expansionvolitelné
enable_thinkingvolitelné
seedvolitelné
start_image_urlpovinné
image
end_image_urlvolitelné
end_image
Parametry souborů přijímají veřejnou adresu https:// URL, data: URI do 10 MB nebo file_url nahraného souboru. Soubory
Výstup
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "alibaba/wan-3.0/image-to-video",
"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": 250,
"usd": "0.25",
"charged": 250,
"refunded": 0
},
"input": {
"prompt": "The fox leaps toward the fireflies and lands softly on the grass",
"image": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"duration": 5,
"resolution": "720p"
},
"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,
"width": 1024,
"height": 768,
"fps": 1.0,
"duration": 5,
"num_frames": 1
},
"seed": 42,
"duration": 5,
"actual_prompt": "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"
}
}
Pole výstupu
- video
- object {url, content_type, file_name, file_size, width, height, fps, duration, num_frames}Video soubor vytvořený generováním.
- seed
- integerHodnota seedu použitá při generování.
- duration
- numberDélka generovaného videa v sekundách.
- actual_prompt
- string | null
Další varianty Wan 3.0
Další modely: Obrázek na video
Pro AI agenty: tato stránka je ve formátu Markdown na adrese https://doitong.com/cs/developers/models/alibaba/wan-3.0/image-to-video.md. Všechny modely a návody: https://doitong.com/developers/llms.txt