Flux 3 Keyframes To Video Draft
統合
blackforestlabs/flux-3/keyframes-to-video/draft
# 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/blackforestlabs/flux-3/keyframes-to-video/draft?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",
"keyframes": [
{
"image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"frame_index": 0
}
]
}'
# 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/blackforestlabs/flux-3/keyframes-to-video/draft?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",
"keyframes": [
{
"image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"frame_index": 0
}
]
}),
});
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",
"keyframes": [
{
"image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"frame_index": 0,
},
],
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/blackforestlabs/flux-3/keyframes-to-video/draft", 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/ja/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": "blackforestlabs/flux-3/keyframes-to-video/draft",
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"keyframes": [
{
"image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"frame_index": 0
}
]
}
}
Doitong APIを通じてFlux 3 Keyframes To Video Draftモデル(blackforestlabs/flux-3/keyframes-to-video/draft)を呼び出します。エージェント向けドキュメント: https://doitong.com/ja/developers/models/blackforestlabs/flux-3/keyframes-to-video/draft.md
POST https://api.doitong.com/v1/run/blackforestlabs/flux-3/keyframes-to-video/draft?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",
"keyframes": [
{
"image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"frame_index": 0
}
]
}
レスポンスのステータスが"queued"または"running"の場合、"succeeded"になるまでGET https://api.doitong.com/v1/requests/REQUEST_ID?wait=20をポーリングしてください。ファイルはoutputs[].urlにあります。同じボディでPOST https://api.doitong.com/v1/quote/blackforestlabs/flux-3/keyframes-to-video/draftを実行すると、実行前の正確な価格が返されます。
このリクエスト: $0.30 300 APIクレジット このページで実行
新しいAPIキーです。 これは今だけ表示され、コードと下記のAPIキー欄にすでに入力されています。秘密にしてください。ブラウザで実行されるコードに決して含めないでください。
Doitongで作成
DoitongコミュニティがFlux 3で作成した公開作品です。ワンクリックでプロンプトを再利用できます。
Close-up portrait seorang wanita berkulit pucat berdiri setengah tubuh di dalam air berwarna lembut kebiruan, dikelilingi bunga teratai berkelopak penuh yang bermekaran indah di permukaan air. Rambutnya pirang pucat tersanggul longgar dengan beberapa helaian tipis jatuh alami membingkai sisi...
Close-up portrait seorang wanita berkulit pucat berdiri setengah tubuh di dalam air berwarna lembut kebiruan, dikelilingi bunga teratai berkelopak penuh yang bermekaran indah di permukaan air. Rambutnya pirang pucat tersanggul longgar dengan beberapa helaian tipis jatuh alami membingkai sisi...
Prompt Details Seorang wanita berkulit pucat berdiri setengah tubuh di dalam air berwarna lembut kebiruan, dikelilingi bunga teratai berkelopak penuh yang bermekaran indah di permukaan air. Rambutnya pirang pucat tersanggul longgar dengan beberapa helaian tipis jatuh alami membingkai sisi...
Seorang wanita berkulit pucat berdiri setengah tubuh di dalam air berwarna lembut kebiruan, dikelilingi bunga teratai berkelopak penuh yang bermekaran indah di permukaan air. Rambutnya pirang pucat tersanggul longgar dengan beberapa helaian tipis jatuh alami membingkai sisi wajahnya. Ia memeluk...
"Potret sinematik ultra-realistis close-up seorang anak laki-laki kecil (balita) yang sangat menggemaskan dengan mata cokelat besar yang ekspresif, rambut hitam berantakan yang tebal, mengenakan kaus putih kerah henley. Dia berpose dengan kedua tangan terkatup di depan dada, menunjukkan senyum...
"Potret sinematik ultra-realistis close-up seorang anak laki-laki kecil (balita) yang sangat menggemaskan dengan mata cokelat besar yang ekspresif, rambut hitam berantakan yang tebal, mengenakan kaus putih kerah henley. Dia berpose dengan kedua tangan terkatup di depan dada, menunjukkan senyum...
"Potret sinematik ultra-realistis close-up seorang anak laki-laki kecil (balita) yang sangat menggemaskan dengan mata cokelat besar yang ekspresif, rambut hitam berantakan yang tebal, mengenakan kaus putih kerah henley. Dia berpose dengan kedua tangan terkatup di depan dada, menunjukkan senyum...
Foto sinematik hiper-realistis resolusi tinggi menampilkan seorang pria muda Indonesia dengan tubuh ramping dan proporsional, rambut hitam pendek agak acak, mengenakan jaket kulit hitam, celana riding fit, dan sepatu motor. Ia sedang melakukan aksi freestyle ekstrem dengan motor sport 500cc...
Foto sinematik hiper-realistis resolusi tinggi menampilkan seorang pria muda Indonesia dengan tubuh ramping dan proporsional, rambut hitam pendek agak acak, mengenakan jaket kulit hitam dan celana riding fit. Ia sedang bersiap melakukan freestyle menggunakan motor sport 500cc berwarna merah,...
リクエストを作成
コントロールはモデルスキーマから生成されます。値を変更するとコードと価格が更新されます。
/run/blackforestlabs/flux-3/keyframes-to-video/draft?wait=20
見積もり → $0.30
# 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/blackforestlabs/flux-3/keyframes-to-video/draft?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",
"keyframes": [
{
"image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"frame_index": 0
}
]
}'
# 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/blackforestlabs/flux-3/keyframes-to-video/draft?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",
"keyframes": [
{
"image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"frame_index": 0
}
]
}),
});
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",
"keyframes": [
{
"image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"frame_index": 0,
},
],
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/blackforestlabs/flux-3/keyframes-to-video/draft", 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": "blackforestlabs/flux-3/keyframes-to-video/draft",
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"keyframes": [
{
"image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"frame_index": 0
}
]
},
"wait_seconds": 20
}
}
}
Flux 3 Keyframes To Video Draftについて
`prompt`と、固有の`frame_index`を持つ1~10個の`keyframes`を指定します。キーフレーム位置を検証するには5~20秒の明示的な`duration`が必要です。`aspect_ratio`はautoまたは21:9~9:16で、`generate_audio`で音声を切り替えます。出力にはフル品質レンダリング用の`draft_cache`が含まれます。
パラメータ
prompt必須
aspect_ratio任意
duration任意
generate_audio任意
safety_tolerance任意
keyframes必須
keyframes[].image_url必須
keyframes[].frame_index必須
出力
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "blackforestlabs/flux-3/keyframes-to-video/draft",
"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": 300,
"usd": "0.30",
"charged": 300,
"refunded": 0
},
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"keyframes": [
{
"image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"frame_index": 0
}
]
},
"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
},
"draft_cache": {
"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"
}
}
出力フィールド
- video
- object {url, content_type, file_name, file_size}ドラフトとして生成された動画。
- draft_cache
- object {url, content_type, file_name, file_size} | null`draft-enhance`でドラフトを完全な品質でレンダリングするためのキャッシュデータ。永続的な暗号化バンドルに保存されます。パートナーがドラフト用バンドルを返さなかった場合、この出力はありません。
その他のFlux 3バリアント
その他のモデル: 画像から動画
AIエージェント向け:このページのMarkdown版はこちらです: https://doitong.com/ja/developers/models/blackforestlabs/flux-3/keyframes-to-video/draft.md. すべてのモデルとガイド: https://doitong.com/developers/llms.txt