Wan 2.2 Image to Video Fast Serverless API
Transforms simple text prompts into breathtaking cinematic-quality videos in minutes.
POST /v2/wan-2.2-i2v-fast · submit + poll 1# pip install "segmind>=1.1.0"
2# export SEGMIND_API_KEY="YOUR_API_KEY"
3from segmind import SegmindClient, InferenceFailed, InferenceTimeout
4
5# Async (v2) — recommended for long-running / video models.
6# run() blocks up to 600s; submit_async + job.wait(timeout=...) sets a longer
7# deadline and keeps the request_id so you can re-poll later.
8client = SegmindClient() # reads SEGMIND_API_KEY
9payload = {
10 "prompt": "4K cinematic close-up of a bloodied, battle-worn Viking warrior kneeling in a snowy sacred cave, eyes wide and glassy with intensity.His long braided blonde beard is frosted with snow, blood streaks run down his face and shoulders.The background is dimly lit by a flickering flame behind him — ancient carvings and symbols glow faintly on the icy stone wall.Camera slowly pushes in on his face as snow swirls in slow motion, and he breathes heavily, lips slightly parted.Suddenly, subtle glitch effects ripple across his face — like time distorting — as if a divine force is entering his mind.In the distance, an echo of a woman’s voice is heard whispering prophecy.As his eyes narrow, a faint blue rune glow reflects in his iris, foreshadowing something ancient and powerful.The camera holds as his expression changes — from fear… to understanding… to resolve.",
11 "resolution": "480p",
12 "image": "https://segmind-resources.s3.amazonaws.com/output/310df0db-0c5e-4c5a-8c78-5db73fbc7c91-bcd49a2d-a0a9-465e-aefd-ca9b5ebb11a7.jpeg",
13}
14job = client.submit_async("wan-2.2-i2v-fast", **payload)
15print(job.request_id) # available immediately
16try:
17 result = job.wait(timeout=900, interval=2.0)
18 print(result["status"]) # COMPLETED
19 print(result.get("output")) # model output (e.g. video URL)
20except InferenceTimeout as e:
21 print("still running:", e.request_id) # re-poll later with this id
22except InferenceFailed as e:
23 print("failed:", e.detail)
24
25# Fast models (<=600s) can use the one-liner instead:
26# result = segmind.run("wan-2.2-i2v-fast", **payload) 1# pip install "segmind>=1.1.0"
2# export SEGMIND_API_KEY="YOUR_API_KEY"
3from segmind import SegmindClient, InferenceFailed, InferenceTimeout
4
5# Async (v2) — recommended for long-running / video models.
6# run() blocks up to 600s; submit_async + job.wait(timeout=...) sets a longer
7# deadline and keeps the request_id so you can re-poll later.
8client = SegmindClient() # reads SEGMIND_API_KEY
9payload = {
10 "prompt": "4K cinematic close-up of a bloodied, battle-worn Viking warrior kneeling in a snowy sacred cave, eyes wide and glassy with intensity.His long braided blonde beard is frosted with snow, blood streaks run down his face and shoulders.The background is dimly lit by a flickering flame behind him — ancient carvings and symbols glow faintly on the icy stone wall.Camera slowly pushes in on his face as snow swirls in slow motion, and he breathes heavily, lips slightly parted.Suddenly, subtle glitch effects ripple across his face — like time distorting — as if a divine force is entering his mind.In the distance, an echo of a woman’s voice is heard whispering prophecy.As his eyes narrow, a faint blue rune glow reflects in his iris, foreshadowing something ancient and powerful.The camera holds as his expression changes — from fear… to understanding… to resolve.",
11 "resolution": "480p",
12 "image": "https://segmind-resources.s3.amazonaws.com/output/310df0db-0c5e-4c5a-8c78-5db73fbc7c91-bcd49a2d-a0a9-465e-aefd-ca9b5ebb11a7.jpeg",
13}
14job = client.submit_async("wan-2.2-i2v-fast", **payload)
15print(job.request_id) # available immediately
16try:
17 result = job.wait(timeout=900, interval=2.0)
18 print(result["status"]) # COMPLETED
19 print(result.get("output")) # model output (e.g. video URL)
20except InferenceTimeout as e:
21 print("still running:", e.request_id) # re-poll later with this id
22except InferenceFailed as e:
23 print("failed:", e.detail)
24
25# Fast models (<=600s) can use the one-liner instead:
26# result = segmind.run("wan-2.2-i2v-fast", **payload)API Endpoint
https://api.segmind.com/v1/wan-2.2-i2v-fastParameters
imagerequiredstring (uri)Input image URL used as the video base.
"https://segmind-resources.s3.amazonaws.com/output/310df0db-0c5e-4c5a-8c78-5db73fbc7c91-bcd49a2d-a0a9-465e-aefd-ca9b5ebb11a7.jpeg"promptrequiredstringDescriptive prompt for the video content.
"4K cinematic close-up of a bloodied, battle-worn Viking warrior kneeling in a snowy sacred cave, eyes wide and glassy with intensity.His long braided blonde beard is frosted with snow, blood streaks run down his face and shoulders.The background is dimly lit by a flickering flame behind him — ancient carvings and symbols glow faintly on the icy stone wall.Camera slowly pushes in on his face as snow swirls in slow motion, and he breathes heavily, lips slightly parted.Suddenly, subtle glitch effects ripple across his face — like time distorting — as if a divine force is entering his mind.In the distance, an echo of a woman’s voice is heard whispering prophecy.As his eyes narrow, a faint blue rune glow reflects in his iris, foreshadowing something ancient and powerful.The camera holds as his expression changes — from fear… to understanding… to resolve."aspect_ratiooptionalstringFrame aspect ratio.
"16:9""16:9""9:16"frames_per_secondoptionalintegerPlayback smoothness. 16 fps is a good balance.
16Range: 5 - 24go_fastoptionalbooleanUse a faster generation mode. Disable for quality over speed.
truehigh_noise_loraoptionalstringURL to a high-noise LoRA model (.safetensors) for style customization.
high_noise_lora_2optionalstringSecond high-noise LoRA model URL for blending multiple LoRAs.
high_noise_lora_3optionalstringThird high-noise LoRA model URL for blending multiple LoRAs.
high_noise_lora_scaleoptionalnumberInfluence strength of the high-noise LoRA. 0 disabled, 1 full strength, 2 maximum.
1Range: 0 - 2high_noise_lora_scale_2optionalnumberInfluence strength of the second high-noise LoRA.
1Range: 0 - 2high_noise_lora_scale_3optionalnumberInfluence strength of the third high-noise LoRA.
1Range: 0 - 2last_imageoptionalstring (uri)Optional end image to guide the video toward a specific final frame.
low_noise_loraoptionalstringURL to a low-noise LoRA model (.safetensors) for style customization.
low_noise_lora_2optionalstringSecond low-noise LoRA model URL for blending multiple LoRAs.
low_noise_lora_3optionalstringThird low-noise LoRA model URL for blending multiple LoRAs.
low_noise_lora_scaleoptionalnumberInfluence strength of the low-noise LoRA. 0 disabled, 1 full strength, 2 maximum.
1Range: 0 - 2low_noise_lora_scale_2optionalnumberInfluence strength of the second low-noise LoRA.
1Range: 0 - 2low_noise_lora_scale_3optionalnumberInfluence strength of the third low-noise LoRA.
1Range: 0 - 2negative_promptoptionalstringElements to exclude from the video, to help improve quality.
""num_framesoptionalintegerVideo frame count. 81 gives optimal detail; increase for smoother motion.
81Range: 81 - 100resolutionoptionalstringVideo resolution. Also determines price (720p = $0.27, 480p = $0.125).
"480p""480p""720p"sample_shiftoptionalnumberAdjusts the image sampling shift. Lower values give subtler changes.
12Range: 1 - 20seedoptionalintegerControls generation randomness. Set for consistency, or leave the default for variation.
123456789Range: 0 - 999999999999999Response Type
Returns: Video
Asynchronous requests (v2)
Use Async for video, long-running (>~60s), or high-concurrency workloads; Sync is simplest for fast image & LLM calls. Async submits a request and you poll it to completion.
- 1
POST /v2/wan-2.2-i2v-fastSubmit — returns request_id, status_url, response_url
- 2
GET /v2/requests/{id}/statusPoll — until COMPLETED or FAILED
- 3
GET /v2/requests/{id}Result — final response body
Status states
- A FAILED request is served as HTTP 422 — the body still carries the error detail.
- An unknown or expired request_id returns HTTP 404.
- Results are retained for 1 hour, then expire.
- Content / RAI blocks surface as FAILED, not a separate state.
- Track completion by polling the status endpoint.
Common Error Codes
The API returns standard HTTP status codes. Detailed error messages are provided in the response body.
Bad Request
Invalid parameters or request format
Unauthorized
Missing or invalid API key
Forbidden
Insufficient permissions
Not Found
Model or endpoint not found
Insufficient Credits
Not enough credits to process request
Rate Limited
Too many requests
Server Error
Internal server error
Bad Gateway
Service temporarily unavailable
Timeout
Request timed out