Kling V2.6 Image to Video API
kwaivgi/kling-v2.6/image-to-video
Kling 2.6 delivers top-tier image-to-video generation with smooth motion, cinematic visuals, accurate prompt adherence, and native audio for ready-to-share clips. Ready-to-use REST inference API, best performance, no cold starts, affordable pricing.
Examples
Parameters
| Name | Type | Default | Constraints | Description |
|---|---|---|---|---|
| image *Image | image_upload | — | 0–1 items | Supported image formats:.jpg /.jpeg /.png The size of the image file should not exceed 10MB, the width and height of the image should be no less than 300px, and the aspect ratio of the image should be between 1:2.5 and 2.5:1 |
| prompt *Prompt | textarea | — | ≤ 5000 chars | The positive prompt for the generation. |
| negative_promptNegative Prompt | textarea | — | ≤ 5000 chars | The negative prompt for the generation. |
| end_imageEnd Image | image_upload | — | 0–1 items | URL of the ending image. |
| resolutionGeneration Mode | select | 720P | 720P | 1080P | Selects the output resolution or provider generation mode. Higher settings may take longer to process. |
| durationDuration | slider | 5 | 3 ~ 15 · step 1 | The duration of the generated media in seconds. |
| soundSound | boolean | false | — | Whether sound is generated simultaneously when generating a video. When enabling sound, use 1080P resolution (sound is not supported at 720P standard mode). |
| cfg_scaleCfg Scale | number | 0.5 | — | Flexibility in video generation; The higher the value, the lower the model’s degree of flexibility, and the stronger the relevance to the user’s prompt. |
| multi_shotMulti Shot | boolean | — | — | Whether to generate multi-shot video When true: the prompt parameter is invalid. When false: the shot_type and multi_prompt parameters are invalid |
| shot_typeShot Type | select | — | customize | intelligence | Shot type for the generation. |
| multi_promptMulti Prompt | array<object> | — | — | List of multi-prompt elements for the generation. |
| ↳durationDuration | number | 5 | — | The duration of this shot in seconds. |
| ↳promptPrompt | text | — | — | The prompt for this shot. |
Output fields
| Field | Type | Description |
|---|---|---|
| videos | array<string> | Generated video URL(s). |
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/kwaivgi/kling-v2.6/image-to-video" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": {
"image": [
"https://assets-public.namifusion.com/uploads/images/2026-05-13/d9b25e55e48d.png"
],
"prompt": "A cinematic video of a serene mountain lake at sunrise with soft golden light, gentle water ripples, and a tranquil atmosphere.",
"negative_prompt": "Avoid low resolution, harsh lighting, or overly dark scenes.",
"end_image": [
"https://assets-public.namifusion.com/uploads/images/2026-05-13/93acbbe3763a.png"
],
"resolution": "1080P",
"duration": 10,
"sound": true,
"cfg_scale": 0.7,
"shot_type": "intelligence"
}
}'
# 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/kwaivgi/kling-v2.6/image-to-video",
headers=HEADERS,
json={
"input": {
"image": [
"https://assets-public.namifusion.com/uploads/images/2026-05-13/d9b25e55e48d.png"
],
"prompt": "A cinematic video of a serene mountain lake at sunrise with soft golden light, gentle water ripples, and a tranquil atmosphere.",
"negative_prompt": "Avoid low resolution, harsh lighting, or overly dark scenes.",
"end_image": [
"https://assets-public.namifusion.com/uploads/images/2026-05-13/93acbbe3763a.png"
],
"resolution": "1080P",
"duration": 10,
"sound": True,
"cfg_scale": 0.7,
"shot_type": "intelligence"
}
},
)
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 300s server-side.
deadline = time.time() + 360
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/kwaivgi/kling-v2.6/image-to-video", {
method: "POST",
headers: { ...HEADERS, "Content-Type": "application/json" },
body: JSON.stringify({
"input": {
"image": [
"https://assets-public.namifusion.com/uploads/images/2026-05-13/d9b25e55e48d.png"
],
"prompt": "A cinematic video of a serene mountain lake at sunrise with soft golden light, gentle water ripples, and a tranquil atmosphere.",
"negative_prompt": "Avoid low resolution, harsh lighting, or overly dark scenes.",
"end_image": [
"https://assets-public.namifusion.com/uploads/images/2026-05-13/93acbbe3763a.png"
],
"resolution": "1080P",
"duration": 10,
"sound": true,
"cfg_scale": 0.7,
"shot_type": "intelligence"
}
}),
});
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 300s server-side.
const deadline = Date.now() + 360 * 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
Kling V2.6 Image-to-Video
High-quality image-to-video generation with synchronized audio and cinematic visuals
Kling V2.6 is a cutting-edge model designed for seamless image-to-video generation. It combines smooth motion, cinematic visuals, accurate prompt adherence, and synchronized audio to produce ready-to-share clips. With no cold starts and affordable pricing, this model is ideal for developers and creators looking for efficient and high-quality video generation.
🚀 Key Features
- Audio-Video Co-Generation: Simultaneously generates visuals and soundtracks, eliminating the need for post-production audio syncing.
- Prompt Accuracy: Adheres closely to user-defined prompts for precise scene motion, camera moves, and audio integration.
- Start and End Frame Support: Allows users to define both starting and optional ending frames for controlled animation.
- Voice Customization: Supports custom voices via
voice_listfor character-specific audio. - Physics-Aware Motion: Generates smooth and natural motion that feels coherent and realistic.
- Built-in Prompt Enhancer: Automatically refines prompts for improved video generation results.
🛠️ Technical Specifications
| Parameter | Type | Default | Range/Options | Description |
|---|---|---|---|---|
| image | string | - | .jpg, .jpeg, .png | Starting frame for animation. Max size: 10MB; Min dimensions: 300px; Aspect ratio: 1:2.5 to 2.5:1. |
| prompt | string | - | - | Positive prompt describing scene motion, camera moves, and audio. |
| negative_prompt | string | - | - | Elements to avoid in visuals and audio. |
| end_image | string | - | - | Optional ending frame to guide animation. |
| cfg_scale | number | 0.5 | 0.00 ~ 1.00 | Guidance strength. Higher values result in stricter adherence to prompts. |
| sound | boolean | true | true, false | Enable audio-video co-generation. |
| voice_list | array | - | - | List of tones for custom character audio. |
| duration | integer | 5 | 5, 10 | Duration of the generated video in seconds. |
💰 Pricing
| Attribute | 720P | 1080P |
|---|---|---|
| Silent | 0.0420 | 0.0700 |
| With Sound | 0.1400 |
💡 Best Use Cases
- Promo Videos: Create launch videos with native-sounding, character-synced voiceovers.
- Storytelling: Generate short clips with perfectly integrated visuals, motion, and sound.
- Product Explainers: Deliver clear visuals with natural narration for marketing or tutorials.
- Social Content: Produce cinematic posts with immersive ambience and sound effects.
- Animated Scenes: Bring still images to life with coherent motion and audio.
🔗 Related Models
- Kling 2.6 Pro Text-to-Video: Generate videos directly from text prompts.
- Vidu Q2 Pro Image-to-Video: Alternative model with background music support.
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.