Alibaba WAN 2.6
alibaba/wan-2.6/reference-to-video
Alibaba WAN 2.6 Reference-to-Video seamlessly transforms character, prop, or scene references—supporting both single and multi-view inputs—into high-quality video sequences. It excels at preserving identity, style, and layout while delivering fluid, coherent motion. Experience peak performance via our production-ready REST API, featuring zero cold starts and cost-effective pricing.
Examples
Parameters
| Name | Type | Default | Constraints | Description |
|---|---|---|---|---|
| prompt *Prompt | textarea | — | ≤ 1500 chars | The positive prompt for the generation. |
| negative_promptNegative Prompt | textarea | — | ≤ 1500 chars | The negative prompt for the generation. |
| sizeSize | select | 1920*1080 | 1920*1080 | 1080*1920 | 1440*1440 | 1632*1248 | 1248*1632 | 1280*720 | 720*1280 | 960*960 | … | The size of the generated media in pixels (width*height). |
| durationDuration | slider | 5 | 2 ~ 10 · step 1 | The duration of the generated media in seconds. |
| shot_typeShot Type | select | single | single | multi | The type of shots to generate. |
| seedSeed | number | — | ≥ 0 | The random seed to use for the generation. |
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/alibaba/wan-2.6/reference-to-video" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": {
"prompt": "character1 turns gently toward the camera with natural movement and a subtle smile. Smooth cinematic lighting.",
"negative_prompt": "Avoid dark or gloomy scenes, and ensure no elements of destruction or chaos are present.",
"size": "1920*1080",
"duration": 5,
"shot_type": "single",
"seed": 12345
}
}'
# 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/alibaba/wan-2.6/reference-to-video",
headers=HEADERS,
json={
"input": {
"prompt": "character1 turns gently toward the camera with natural movement and a subtle smile. Smooth cinematic lighting.",
"negative_prompt": "Avoid dark or gloomy scenes, and ensure no elements of destruction or chaos are present.",
"size": "1920*1080",
"duration": 5,
"shot_type": "single",
"seed": 12345
}
},
)
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/alibaba/wan-2.6/reference-to-video", {
method: "POST",
headers: { ...HEADERS, "Content-Type": "application/json" },
body: JSON.stringify({
"input": {
"prompt": "character1 turns gently toward the camera with natural movement and a subtle smile. Smooth cinematic lighting.",
"negative_prompt": "Avoid dark or gloomy scenes, and ensure no elements of destruction or chaos are present.",
"size": "1920*1080",
"duration": 5,
"shot_type": "single",
"seed": 12345
}
}),
});
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
Alibaba WAN 2.6
alibaba/wan-2.6/reference-to-video
Alibaba WAN 2.6 Reference-to-Video seamlessly transforms character, prop, or scene references—supporting both single and multi-view inputs—into high-quality video sequences. It excels at preserving identity, style, and layout while delivering fluid, coherent motion. Experience peak performance via our production-ready REST API, featuring zero cold starts and cost-effective pricing.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
reference_urls | array | true | — | 1–5 reference files: up to 5 images and 3 videos. Array order maps to character1, character2, ... . Reference images are free; the full duration of each reference video is added to the output duration for billing.; 1–5 URLs |
prompt | string | true | — | The positive prompt for the generation.; max 1500 characters |
negative_prompt | string | false | — | The negative prompt for the generation.; max 1500 characters |
size | string | false | "1920*1080" | The size of the generated media in pixels (widthheight). 19201080, 10801920, 14401440, 16321248, 12481632, 1280720, 7201280, 960960, 8321088, 1088*832 |
duration | integer | false | 5 | The duration of the generated media in seconds. [2, 10]; integer |
shot_type | string | false | "single" | The type of shots to generate. single, multi |
seed | integer | false | — | The random seed to use for the generation. |
Pricing
Total price = unit rate × ceil(output duration + sum of full reference video durations). Round up once after adding all durations, not per video. Reference images add no duration or fee. This policy uses full reference durations; it does not use a fixed 5-second surcharge or Alibaba reference-duration truncation.
| Resolution | USD/s |
|---|---|
| 720P | $0.10 |
| 1080P | $0.15 |
Defaults: 1080P, 5 output seconds. With image-only references the price is $0.75 (75 credits).
Example: one 10-second reference video and a 5-second output are billed as 15 seconds. Reference order maps to character1, character2, ... . USD 1 = 100 credits; account discounts are applied separately.
720P: 1280*720, 720*1280, 960*960, 1088*832, 832*1088.
1080P: 1920*1080, 1080*1920, 1440*1440, 1632*1248, 1248*1632.
API
curl -X POST https://www.namifusion.com/api/v1/marketplace/run/alibaba/wan-2.6/reference-to-video \
-H "Authorization: Bearer $API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"input": {
"size": "1920*1080",
"duration": 5,
"shot_type": "single",
"reference_urls": [
"https://d1s3annbwribom.cloudfront.net/marketplace/examples/2026/08/31/0d2b8fc70ea0.jpeg"
],
"prompt": "character1 turns gently toward the camera with natural movement and a subtle smile. Smooth cinematic lighting.",
"seed": 12345
}
}'
curl 'https://www.namifusion.com/api/v1/marketplace/run/tasks/TASK_UUID' \
-H "Authorization: Bearer $API_KEY"
Poll task_uuid until completed or failed. Successful output.videos contains video URL strings.
Related models
VT Lip Sync
VT Lip Sync synchronizes mouth movements for a translated video by using the translated target video, translated audio, translated subtitle timing, and the original source video with its original subtitle timing.
Kling Omni Video O3
Kling Omni Video O3 Reference-to-Video generates creative videos using character, prop, or scene references from multiple viewpoints. Extracts subject features and creates new video content while maintaining identity consistency across frames. Supports audio generation. Ready-to-use REST API, best performance, no cold starts, affordable pricing.
Kling Omni Video O3
Kling Omni Video O3 Reference-to-Video generates creative videos using character, prop, or scene references from multiple viewpoints. Extracts subject features and creates new video content while maintaining identity consistency across frames. Supports audio generation. Ready-to-use REST API, best performance, no cold starts, affordable pricing.
Kling 3.0 Standard
Kling 3.0 Standard Motion Control transfers motion from reference videos to animate still images. Upload a character image and a motion clip (dance, action, gesture), and the model extracts the movement to generate smooth, realistic video. Ready-to-use REST inference API, best performance, no cold starts, affordable pricing.
seedance-2-0 reference-to-video
The "Reference-to-Video" feature of Seedance 2.0 is the ultimate solution for visual stylistic unity. It precisely extracts artistic styles, lighting tones, or compositional intents from reference materials and seamlessly integrates them into newly generated videos, ensuring a highly consistent visual language for your creative series.
black-forest-labs/flux-3/video-upscale
From $0.79 for 1 second at default creativity=1; $0.55/second at creativity=0. Billed by input duration, rounded up to whole seconds. FLUX Video Upscale enhances MP4 videos with source-faithful or creative detail reconstruction, configurable 1.5x to 3x scaling, and improved visual clarity for video restoration, social content, ads, and production workflows. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
black-forest-labs/flux-3/video-extend-draft
FLUX 3 Video Extend Draft quickly continues a required input video into a draft clip with prompt-guided next-scene motion, optional synchronized audio, and flexible 5-20 second duration for rapid iteration.
black-forest-labs/flux-3/video-extend
FLUX 3 Video Extend continues input videos into new 5-20 second clips, using prompt guidance to control the next action, camera movement, visual style, motion continuity, and optional synchronized audio at 720P / 1080P output. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.