black-forest-labs/flux-3/image-to-video
black-forest-labs/flux-3/image-to-video
FLUX 3 Image-to-Video animates a required reference image into a 5-20 second video, preserving subject appearance while using prompt control to guide motion, camera movement, visual style, and optional synchronized audio at 720P / 1080P output. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
Examples
Parameters
| Name | Type | Default | Constraints | Description |
|---|---|---|---|---|
| prompt *Prompt | textarea | — | ≤ 5000 chars | The text prompt describing the video you want to generate. |
| image *Image | image_upload | — | image/* · 1–1 items | URL of the image the video starts from (PNG, JPEG, or WebP).. |
| aspect_ratioAspect Ratio | select | — | 21:9 | 2:1 | 16:9 | 4:3 | 1:1 | 3:4 | 9:16 | The aspect ratio of the generated media. |
| resolutionResolution | select | 720p | 720p | 1080p | Resolution of the generated video. |
| durationDuration | slider | 5 | 5 ~ 20 · step 1 | Video length in seconds (5-20). |
| generate_audioGenerate Audio | boolean | true | — | Whether to generate audio for the video. |
Output fields
| Field | Type | Description |
|---|---|---|
| videos | array<string> |
API
Call this model through one unified REST API. Get a key on the API Keys page.
cURL
# 1) Submit — returns { "task_uuid": "..." }
curl -X POST "https://www.namifusion.com/api/v1/marketplace/run/black-forest-labs/flux-3/image-to-video" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": {
"prompt": "A cinematic slow push-in on a confident astronaut standing on a rocky alien landscape at sunrise, dust drifting through the air and a distant ringed planet visible in the sky. The subject remains consistent with the reference image while the camera adds subtle motion, the suit fabric and flags gently flutter in the wind, and soft atmospheric lighting creates a dramatic sci-fi mood. High detail, smooth motion, realistic shadows, immersive ambience.",
"image": [
"https://d1s3annbwribom.cloudfront.net/marketplace/examples/2026/10/08/1e37b8c98464.jpeg"
],
"aspect_ratio": "16:9",
"resolution": "720p",
"duration": 5,
"generate_audio": true
}
}'
# 2) Poll until status is "completed", then read the output URLs
curl "https://www.namifusion.com/api/v1/marketplace/run/tasks/TASK_UUID" \
-H "Authorization: Bearer YOUR_API_KEY"Python
import time, requests
API_KEY = "YOUR_API_KEY"
HEADERS = {"Authorization": f"Bearer {API_KEY}"}
# 1) Submit
resp = requests.post(
"https://www.namifusion.com/api/v1/marketplace/run/black-forest-labs/flux-3/image-to-video",
headers=HEADERS,
json={
"input": {
"prompt": "A cinematic slow push-in on a confident astronaut standing on a rocky alien landscape at sunrise, dust drifting through the air and a distant ringed planet visible in the sky. The subject remains consistent with the reference image while the camera adds subtle motion, the suit fabric and flags gently flutter in the wind, and soft atmospheric lighting creates a dramatic sci-fi mood. High detail, smooth motion, realistic shadows, immersive ambience.",
"image": [
"https://d1s3annbwribom.cloudfront.net/marketplace/examples/2026/10/08/1e37b8c98464.jpeg"
],
"aspect_ratio": "16:9",
"resolution": "720p",
"duration": 5,
"generate_audio": True
}
},
)
resp.raise_for_status() # 401/402/429/5xx stop here instead of polling a bad task
task = resp.json()
# 2) Poll until a terminal state (completed / failed / cancelled).
# This model is allowed up to 1800s server-side.
deadline = time.time() + 1860
while task.get("status") not in ("completed", "failed", "cancelled"):
if time.time() > deadline:
raise TimeoutError(f"still {task.get('status')} — keep the task_uuid and poll later")
time.sleep(3)
poll = requests.get(f"https://www.namifusion.com/api/v1/marketplace/run/tasks/{task['task_uuid']}", headers=HEADERS)
poll.raise_for_status()
task = poll.json()
print(task["status"], task.get("output"))JavaScript
const API_KEY = "YOUR_API_KEY";
const HEADERS = { Authorization: `Bearer ${API_KEY}` };
// 1) Submit
const resp = await fetch("https://www.namifusion.com/api/v1/marketplace/run/black-forest-labs/flux-3/image-to-video", {
method: "POST",
headers: { ...HEADERS, "Content-Type": "application/json" },
body: JSON.stringify({
"input": {
"prompt": "A cinematic slow push-in on a confident astronaut standing on a rocky alien landscape at sunrise, dust drifting through the air and a distant ringed planet visible in the sky. The subject remains consistent with the reference image while the camera adds subtle motion, the suit fabric and flags gently flutter in the wind, and soft atmospheric lighting creates a dramatic sci-fi mood. High detail, smooth motion, realistic shadows, immersive ambience.",
"image": [
"https://d1s3annbwribom.cloudfront.net/marketplace/examples/2026/10/08/1e37b8c98464.jpeg"
],
"aspect_ratio": "16:9",
"resolution": "720p",
"duration": 5,
"generate_audio": true
}
}),
});
if (!resp.ok) throw new Error(`submit failed: ${resp.status} ${await resp.text()}`);
let task = await resp.json();
// 2) Poll until a terminal state (completed / failed / cancelled).
// This model is allowed up to 1800s server-side.
const deadline = Date.now() + 1860 * 1000;
while (!["completed", "failed", "cancelled"].includes(task.status)) {
if (Date.now() > deadline) throw new Error(`still ${task.status} — keep the task_uuid and poll later`);
await new Promise((r) => setTimeout(r, 3000));
const poll = await fetch(`https://www.namifusion.com/api/v1/marketplace/run/tasks/${task.task_uuid}`, { headers: HEADERS });
if (!poll.ok) throw new Error(`poll failed: ${poll.status}`);
task = await poll.json();
}
console.log(task.status, task.output);Documentation
black-forest-labs/flux-3/image-to-video
black-forest-labs/flux-3/image-to-video
FLUX 3 Image-to-Video animates a required reference image into a 5-20 second video, preserving subject appearance while using prompt control to guide motion, camera movement, visual style, and optional synchronized audio at 720P / 1080P output. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
Parameters
| Parameter | Type | Required | Default | Limits / description |
|---|---|---|---|---|
prompt | string | Yes | — | max 5000 chars; The text prompt describing the video you want to generate. |
image | array | Yes | — | 1–1 URLs; URL of the image the video starts from (PNG, JPEG, or WebP).. |
aspect_ratio | string | No | — | 21:9, 2:1, 16:9, 4:3, 1:1, 3:4, 9:16; The aspect ratio of the generated media. |
resolution | string | No | "720p" | 720p, 1080p; Resolution of the generated video. |
duration | integer | No | 5 | 5–20; step 1; Video length in seconds (5-20). |
generate_audio | boolean | No | true | Whether to generate audio for the video. |
Image inputs use URL arrays in Nami, including single-image fields. Multi-image edit accepts 1–3 URLs.
Pricing
| Mode | USD / second | Credits / second | USD / 5 seconds |
|---|---|---|---|
| 720p | $0.17 | 17 | $0.85 |
| 1080p | $0.29 | 29 | $1.45 |
Price = rate × min(ceil(duration), 20). duration is an integer from 5 to 20; default 5. generate_audio does not change the price.
WaveSpeed standard list price; USD 1 = 100 credits. Account discounts are separate.
API
curl -X POST https://www.namifusion.com/api/v1/marketplace/run/black-forest-labs/flux-3/image-to-video \
-H "Authorization: Bearer $API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"input": {
"prompt": "A cinematic slow push-in on a confident astronaut standing on a rocky alien landscape at sunrise, dust drifting through the air and a distant ringed planet visible in the sky. The subject remains consistent with the reference image while the camera adds subtle motion, the suit fabric and flags gently flutter in the wind, and soft atmospheric lighting creates a dramatic sci-fi mood. High detail, smooth motion, realistic shadows, immersive ambience.",
"image": [
"https://d1s3annbwribom.cloudfront.net/marketplace/examples/2026/10/08/1e37b8c98464.jpeg"
],
"aspect_ratio": "16:9",
"resolution": "720p",
"duration": 5,
"generate_audio": true
}
}'
curl 'https://www.namifusion.com/api/v1/marketplace/run/tasks/TASK_UUID' \
-H "Authorization: Bearer $API_KEY"
Submit returns task_uuid. Poll until completed or failed. Successful output: output.videos (URL array). This API is asynchronous and returns URLs.
Related models
xAI Grok Imagine Video v1.5 Image to Video
Animate one input image with a text prompt into a 1-15 second video at 480p or 720p.
Vidu Q4 Preview Image to Video
Generate a 3–16 second video from a prompt and one image, with optional audio and prompt expansion. Supports 540p, 720p, 1080p, 2k and 4k.
vidu/q3/image-to-video-spicy
Vidu Q3 Image-to-Video Spicy generates unlimited high-quality videos from images with smooth animations and diverse motion, optimized for scalable content generation. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
Vidu Q3 Image To Video
Vidu Q3 Image-to-Video turns text prompts into high-quality videos with exceptional visual fidelity and diverse motion. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

MiniMax H3 Spicy Image to Video
Animate a first-frame image with optional prompt and last-frame guidance. Supports 480p, 540p, 768p and 1080p video, with durations from 3 to 15 seconds.
MiniMax H3 Image to Video
MiniMax H3 Image to Video animates a first-frame image into a coherent 2K video, with natural-language motion instructions and optional last-frame control for consistent motion, scene continuity, and cinematic video generation. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
ltx-2.5/image-to-video
LTX 2.5 Image-to-Video animates a first-frame image into high-fidelity synchronized audio-video content, with optional last-frame guidance and 720P / 1080P / 2K / 4K output for cinematic videos, social content, ads, and production workflows. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
ai/ltx-2.3-spicy/image-to-video-lora
LTX 2.3 Spicy LoRA Image to Video API turns a reference image and prompt into expressive AI videos using selectable LoRA presets, optional LoRA strength overrides, duration, and resolution controls. Run fast REST inference on MaaS with no cold starts and affordable pricing.