Veo3.1 Reference to Video
Integrace
veo3.1/reference-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/veo3.1/reference-to-video?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
]
}'
# 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/veo3.1/reference-to-video?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
]
}),
});
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": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
],
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/veo3.1/reference-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": "veo3.1/reference-to-video",
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
]
}
}
Volejte model Veo3.1 Reference to Video (veo3.1/reference-to-video) prostřednictvím Doitong API. Dokumentace pro agenty: https://doitong.com/cs/developers/models/veo3.1/reference-to-video.md
POST https://api.doitong.com/v1/run/veo3.1/reference-to-video?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
]
}
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/veo3.1/reference-to-video se stejným tělem vrátí přesnou cenu před spuštěním.
Tento požadavek: 3,20 $ 3 200 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.
Vytvořeno na Doitong
Veřejná díla vytvořená komunitou Doitong pomocí Veo 3.1. Znovu použijte prompt jedním kliknutím.
Video
Art style: Реалистичный кулинарный блог. Камера немного отдаляется, показывая ведущую по пояс. Она активно жестикулирует, призывая зрителей писать комментарии и подписываться. В конце она машет рукой или делает приветственный жест. Ее улыбка сияет, создавая позитивный финал. Свет из окна...
Video
Art style: Реалистичный кулинарный блог. Камера плавно перемещается от рук ведущей к противню. Ведущая совершает мягкие вращательные движения ладонями, формируя шарик теста. Видно, как мягкое тесто податливо меняет форму под ее пальцами. Затем она аккуратно кладет готовый шарик на пергамент рядом...
Video
Art style: Modern Webtoon Illustration. Нари сначала спокойно спит с закрытыми глазами. Затем резко распахивает глаза от осознания, что проспала. Быстрое, выразительное комедийное пробуждение. Голова неподвижна, камера статична. Плавный переход от первого кадра ко второму. Сохранить внешность...
Video
Art style: Реалистичный кулинарный блог. Камера направлена сверху под небольшим углом, создавая детальный крупный план миски. Ложка медленно опускает густой греческий йогурт на поверхность яиц, йогурт плавно соскальзывает и ложится плотной массой. Яичные желтки слегка подрагивают от движения...
Марк резко стартует с места, его кроссовки громко стучат по брусчатке, камера быстро движется за ним на уровне земли, создавая эффект скорости. На заднем плане размываются стены старого города. Пыль слегка поднимается из-под ног, передавая энергию и суету гиперактивного туриста. Off-screen...
Кинематографичная сцена в современном офисном коридоре. Огромная дверь с надписью «Фарм» резко открыта, изнутри виден пиксельный мир в стиле Minecraft: квадратные фермы, зелёные блоки, механизмы, лёгкое зелёное и тёплое свечение. Из двери выходит главный герой — толстый, неприятного вида, немного...
Кинематографичная сцена: главный герой открывает дверь и попадает в бесконечный тёмный мир серверов. Камера медленно движется вперёд, показывая бесконечные серверные стойки, мигающие лампы и холодный неоновый свет. Из темноты появляется глава разработки — абсурдно огромный качок с идеальной...
Главный герой открывает дверь и попадает в розовый сказочный HR-мир. Камера показывает пони, сердечки, блестящие облачка, розовый свет и всё вокруг как будто сделано из милоты. В центре появляется бимбо-глава HR — очень гламурная, в розовом, с идеальной внешностью и ярким макияжем. Она дружелюбно...
Главный герой открывает дверь и оказывается в гигантском мире Minecraft-like. Камера показывает бесконечные фермы, механизмы, падающие ресурсы, мобов, редстоун и автоматизацию. На переднем плане стоит глава отдела фарма — квадратный парень с мотыгой в руках. Он разворачивается к герою и жестом...
Кинематографичная сцена: главный герой открывает дверь и попадает в бесконечный тёмный мир серверов. Камера медленно движется вперёд, показывая бесконечные серверные стойки, мигающие лампы и холодный неоновый свет. Из темноты появляется глава разработки — абсурдно огромный качок с идеальной...
Камера показывает рабочую жизнь HR-отдела: одна сотрудница катается на кресле, кто-то берёт подушку Кати, несколько человек сидят и увлечённо болтают, другие пьют чай и кушают, и всё это происходит так, будто это стратегическая работа мирового уровня. Глава HR стоит посреди этого хаоса и с милой...
Кинематографичная сцена в современном офисном коридоре. Главный герой стоит напротив четырёх огромных дверей, каждая из которых выглядит как вход в отдельную вселенную. Над дверями большими буквами написано: Разработка, Маркетинг, HR, Фарм. Сначала камера показывает героя со спины или в...
Глава фарма ведёт главного героя по своему миру и показывает, как устроены фермы и процессы. Затем он указывает на отдельную часть системы, где визуально показана новая схема выдачи аккаунтов по новым гео. Вокруг двигаются механизмы, работают фермы, падает дроп, всё автоматизировано и работает...
Камера показывает гигантского киберпанк-робота в мире серверов. Робот медленно выходит из темноты, на нём современное худи, широкие штаны, в руке электронка, от него идёт холодное неоновое свечение. Глава разработки с гордостью презентует его главному герою, жестом показывая на робота. Робот...
создай видео для хронометража 00:28 - 00:32 сценарий без букв персонаж не говорит, это только видеоряд Используй референс **[0:28 - 0:32] Блок 8: Кульминация *Видеоряд:* Девушка разворачивается к нам спиной и убегает в платье и шубе в лес, мы видим ее убегающий силуэт Волчица не дает всадником...
создай видео для хронометража 00:28 - 00:32 сценарий примерный, можно отклоняться в safe, без букв персонаж не говорит, это только видеоряд Используй референс **[0:28 - 0:32] Блок 8: Кульминация *Видеоряд:* Девушка разворачивается к нам спиной и убегает в лес, мы видим ее убегающий силуэт Волчица...
Sestavit požadavek
Ovládací prvky se generují ze schématu modelu. Kód a cena se aktualizují podle provedených změn.
/run/veo3.1/reference-to-video?wait=20
cena → 3,20 $
# 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/veo3.1/reference-to-video?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
]
}'
# 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/veo3.1/reference-to-video?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
]
}),
});
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": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
],
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/veo3.1/reference-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": "veo3.1/reference-to-video",
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
]
},
"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
O modelu Veo3.1 Reference to Video
Vygeneruje video z `prompt` a seznamu referenčních obrazů v `image_urls`, takže vzhled objektu zůstane konzistentní. Poměr stran je 16:9 nebo 9:16 a rozlišení 720p, 1080p nebo 4k. Výchozí délka je 8s a generování zvuku je ve výchozím nastavení zapnuté.
Parametry
Odešlete buď kanonický název, nebo nativní název, ne oba. Kanonické názvy
promptpovinné
aspect_ratiovolitelné
durationvolitelné
resolutionvolitelné
generate_audiovolitelné
auto_fixvolitelné
safety_tolerancevolitelné
image_urlspovinné
images
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": "veo3.1/reference-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": 3200,
"usd": "3.20",
"charged": 3200,
"refunded": 0
},
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"image_urls": [
"https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
]
},
"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
}
},
"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}Video vytvořené modelem.
Další varianty Veo 3.1
Další modely: Reference na video
Pro AI agenty: tato stránka je ve formátu Markdown na adrese https://doitong.com/cs/developers/models/veo3.1/reference-to-video.md. Všechny modely a návody: https://doitong.com/developers/llms.txt