Nami Wan 2.7 I2V Spicy Prime

nami-wan2.7-i2v-spicy-prime

Create a 2–15 second video from a reference image and prompt, with 720p/1080p output and optional audio guidance.

Examples

Nami Wan 2.7 I2V Spicy Prime example 1

Parameters

NameTypeDefaultConstraintsDescription
image *Reference Imageimage_uploadimage/jpeg,image/png,image/bmp,image/webp,image/*JPEG, PNG, BMP, or WEBP image; 240–8000 px, aspect ratio 1:8 to 8:1, up to 20 MB.
prompt *Prompttextarea
negative_promptNegative Prompttextarea
audio_urlAudio Guideaudio_uploadaudio/wav,audio/mpeg,audio/*Optional HTTPS WAV or MP3, 2–30 seconds, up to 15 MB.
audioInclude AudiobooleantrueWhen disabled, the output is silent even when an audio guide is provided.
resolutionResolutionselect1080p720p | 1080p
durationDuration (seconds)slider52 ~ 15 · step 1
prompt_extendEnhance Promptbooleantrue
seedSeednumber0 ~ 2147483647 · step 1

Output fields

FieldTypeDescription
videosarray<string>Generated video URLs

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/nami-wan2.7-i2v-spicy-prime" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "input": {
    "image": "https://example.com/input.jpg",
    "prompt": "A cinematic portrait, dramatic rim light, shallow depth of field",
    "audio": true,
    "resolution": "1080p",
    "duration": 5,
    "prompt_extend": 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/nami-wan2.7-i2v-spicy-prime",
    headers=HEADERS,
    json={
        "input": {
            "image": "https://example.com/input.jpg",
            "prompt": "A cinematic portrait, dramatic rim light, shallow depth of field",
            "audio": True,
            "resolution": "1080p",
            "duration": 5,
            "prompt_extend": 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 600s server-side.
deadline = time.time() + 660
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/nami-wan2.7-i2v-spicy-prime", {
  method: "POST",
  headers: { ...HEADERS, "Content-Type": "application/json" },
  body: JSON.stringify({
    "input": {
      "image": "https://example.com/input.jpg",
      "prompt": "A cinematic portrait, dramatic rim light, shallow depth of field",
      "audio": true,
      "resolution": "1080p",
      "duration": 5,
      "prompt_extend": 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 600s server-side.
const deadline = Date.now() + 660 * 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

Nami Wan 2.7 I2V Spicy Prime

Create a video from one reference image and a text prompt. Output is returned in the videos array.

Parameters

  • image (required): JPEG, PNG, BMP, or WEBP; 240–8000 px; aspect ratio 1:8 to 8:1; up to 20 MB.
  • prompt (required): describe the scene and motion.
  • negative_prompt (optional): describe elements to avoid.
  • audio_url (optional): HTTPS WAV or MP3, 2–30 seconds, up to 15 MB.
  • audio (default true): include an audio track. When false, output is silent even if audio_url is set.
  • resolution (default 1080p): 720p or 1080p.
  • duration (default 5): 2–15 seconds.
  • prompt_extend (default true): enhance the prompt before generation.
  • seed (optional): integer from 0 to 2147483647.

Billing

720p costs 13 credits per second; 1080p costs 20 credits per second.

Related models

Wan 2.2 Animate
Image to VideoWaveSpeed

Wan 2.2 Animate

Wan 2.2 Animate is a unified character animation & replacement model that replicates movement and expression from a driving video. It turns a single character image into a full performance, copying body movement and facial expressions while keeping the output stable, realistic, and identity-consistent. Generates 720p videos up to 120s.

from $0.200 / per run
Vidu Q3 Image To Video
Image to VideoVidu

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.

from $0.750 / per run
Pixverse V6 Reference to Video
Image to VideoPixVerse

Pixverse V6 Reference to Video

PixVerse V6 Reference-to-Video (Fusion) mode supports 1–3 reference images (subjects, characters, or backgrounds), combining text prompts to deliver superior character consistency and storytelling continuity with native synced audio. Enterprise REST inference API, zero cold starts, high concurrency—perfect for anime, gaming, and multi-shot short films.

from $0.180 / per run
Pixverse V6 Image to Video
Image to VideoPixVerse

Pixverse V6 Image to Video

PixVerse V6 Image-to-Video (fully integrating single-image and first-last frame modes) transforms single or dual images into dynamic clips with cinematic ultra-HD quality, realistic physics, and seamless consistency—perfect for advanced storyboard control, seamless loops, and commercial clips. Enterprise REST inference API, high concurrency, zero cold starts, delivering peak performance at an affordable price.

from $0.180 / per run
Pixverse V5 T2V
Image to VideoPixVerse

Pixverse V5 T2V

PixVerse V5 Text-to-Video generates smooth, natural 5s videos from text prompts in seconds, with 720p output available ($0.20 per 5s). Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.230 / per run
Pixverse V5 I2V
Image to VideoPixVerse

Pixverse V5 I2V

PixVerse V5 converts images to short, smooth, natural-looking videos. 5s video: $0.15 (360p/540p), $0.20 (720p), $0.40 (1080p). Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.230 / per run
Pixverse V5.6 Text to Video
Image to VideoPixVerse

Pixverse V5.6 Text to Video

PixVerse V5.6 transforms text prompts into realistic videos with smooth motion and natural detail in seconds—ideal for stories, ads, and social clips. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.180 / per run
Pixverse V5.6 Image to Video
Image to VideoPixVerse

Pixverse V5.6 Image to Video

PixVerse V5.6 Image-to-Video turns a single image into cinematic clips with smooth motion, clean detail, and strong subject fidelity—ideal for logo stingers, character motion, and social posts. Ready-to-use REST inference API, best performance, no cold starts, affordable pricing.

from $0.180 / per run