Wan 3.0 Image to Video
Integrar
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.ru/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.ru/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.ru/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.ru/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/pt-PT/developers/docs/mcp)
claude mcp add --transport http doitong-models https://api.doitong.ru/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"
}
}
Chame o modelo Wan 3.0 Image to Video (alibaba/wan-3.0/image-to-video) através da Doitong API. Documentação para agentes: https://doitong.com/pt-PT/developers/models/alibaba/wan-3.0/image-to-video.md
POST https://api.doitong.ru/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"
}
Se o estado da resposta for "queued" ou "running", consulte GET https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20 repetidamente até ficar "succeeded"; os ficheiros estão em outputs[].url. POST https://api.doitong.ru/v1/quote/alibaba/wan-3.0/image-to-video com o mesmo corpo devolve o preço exato antes da execução.
Este pedido: 0,25 $ 250 créditos da API · ≈ 26,83 ₽ Executar nesta página
A sua nova chave de API. É apresentada apenas agora e já está inserida no código e no campo da chave de API abaixo. Mantenha-a secreta: nunca a coloque em código que seja executado num navegador.
Exemplos
Criar um pedido
Os controlos são gerados a partir do esquema do modelo. O código e o preço são atualizados à medida que os altera.
/run/alibaba/wan-3.0/image-to-video?wait=20
cotação → 0,25 $
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.ru/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.ru/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.ru/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.ru/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
}
}
}
Executar este pedido
A sua chave permanece neste navegador: é enviada apenas para a Doitong API e guardada em localStorage apenas se selecionar Lembrar. Obter uma chave de API
Criado na Doitong
Trabalhos públicos criados com Wan 3.0 pela comunidade Doitong. Reutilize um prompt com um clique.
Vídeo
Создай 30-секундный обучающий музыкальный ролик для детей 3–5 лет. Тема: транспорт. Яркая 2D-анимация, весёлый водитель в кепке, крупные машины, пастельные цвета. 0:00–0:10 приветствие под музыку; 0:10–0:30 песенка: "Машина едет би-би, би-би", "Поезд едет ту-ту, ту-ту". Бодрая детская музыка...
Vídeo
Создай 30-секундный обучающий музыкальный ролик для детей 3–5 лет. Тема: транспорт. Яркая 2D-анимация, тот же весёлый водитель в кепке, самолёт. 0:00–0:15 песенка: "Самолёт летит вж-ж-ж, вж-ж-ж"; 0:15–0:25 интерактивная пауза: водитель спрашивает "Как гудит машина?", пауза; 0:25–0:30 финальный...
Vídeo
# PROMPT: Animated Mother’s Day greeting card **Format:** vertical video 9:16 **Duration:** 12–15 seconds **Style:** high‑quality Pixar‑inspired 3D animation, cinematic, warm, emotional, charming animated movie aesthetic. ### The main character is a child Use the attached image as the only and...
Sobre Wan 3.0 Image to Video
Wan 3.0 de imagem para vídeo começa com a sua imagem e pode terminar numa segunda, com áudio gerado por predefinição. O prompt é opcional. Clipes de 2 a 30 segundos a 480p, 720p ou 1080p, com proporção adaptativa ou fixa e uma etapa de raciocínio opcional para movimentos complexos.
Parâmetros
Envie o nome canónico ou o nome nativo, não ambos. Nomes canónicos
promptopcional
resolutionopcional
aspect_ratioopcional
durationopcional
audioopcional
generate_audio
enable_prompt_expansionopcional
enable_thinkingopcional
seedopcional
start_image_urlobrigatório
image
end_image_urlopcional
end_image
Os parâmetros de ficheiro aceitam um URL https:// público, um URI data: até 10 MB ou o file_url de um carregamento. Ficheiros
Resultado
{
"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.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
"cancel": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
}
}
Campos do resultado
- video
- object {url, content_type, file_name, file_size, width, height, fps, duration, num_frames}Ficheiro de vídeo produzido pela geração.
- seed
- integerValor da seed aplicado durante a geração.
- duration
- numberDuração do vídeo gerado, medida em segundos.
- actual_prompt
- string | null
Outras variantes de Wan 3.0
Mais modelos: Imagem para vídeo
Para agentes de IA: esta página em Markdown está disponível em https://doitong.com/pt-PT/developers/models/alibaba/wan-3.0/image-to-video.md. Todos os modelos e guias: https://doitong.com/developers/llms.txt