Skip to main content
POST
/
vendors
/
alibaba
/
v1
/
wan2.6-i2v
/
generation
Create Generation Task
curl --request POST \
  --url https://api.mulerouter.ai/vendors/alibaba/v1/wan2.6-i2v/generation \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "prompt": "<string>",
  "image": "<string>",
  "negative_prompt": "<string>",
  "resolution": "720P",
  "duration": 5,
  "prompt_extend": true,
  "shot_type": "single",
  "audio": true,
  "audio_url": "<string>",
  "seed": 1073741823,
  "safety_filter": true
}
'
{
  "task_info": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "status": "pending",
    "created_at": "2023-11-07T05:31:56Z",
    "updated_at": "2023-11-07T05:31:56Z"
  }
}

Documentation Index

Fetch the complete documentation index at: https://mulerouter.ai/docs/llms.txt

Use this file to discover all available pages before exploring further.

This API supports Alibaba Tongyi Wanxiang (Wan2) video generation models. Please refer to Alibaba Cloud’s official documentation for more details.

Overview

Generate videos from images using the wan2.6-i2v model with support for longer durations, multi-shot generation, and optional last frame specification.

Key Features

  • Image-to-video generation with audio support
  • Multiple resolution options (720P/1080P)
  • 5s, 10s, or 15s duration
  • Single or multi-shot generation
  • Optional first and last frame specification

Image Requirements

PropertyRequirement
FormatsJPEG, JPG, PNG (no transparency), BMP, WEBP
Dimensions[360, 2000] pixels for both width and height
File SizeMax 10MB
InputPublic URL or Base64 encoded data

Example Requests

Basic Image-to-Video

{
  "prompt": "A black cat looks curiously at the sky, camera gradually rises from eye-level to overhead",
  "image": "https://example.com/first_frame.jpg",
  "resolution": "720P",
  "duration": 5
}

With Last Frame (Interpolation)

{
  "prompt": "Character starts walking, expression changes naturally",
  "image": "https://example.com/person.jpg",
  "last_frame": "https://example.com/person_end.jpg",
  "resolution": "1080P",
  "duration": 10,
  "audio": true
}

Multi-shot Video

{
  "prompt": "Scene transition with smooth camera movement",
  "image": "https://example.com/scene.jpg",
  "resolution": "1080P",
  "duration": 15,
  "prompt_extend": true,
  "multi_shots": "multi"
}

Parameters

last_frame

  • Optional: Yes
  • Description: End frame image for video interpolation between first and last frame
  • Use case: Create smooth transitions between two specific frames

multi_shots

  • Default: single
  • Effect: When prompt rewriting is enabled, controls whether the output is single-shot or multi-shot
  • Only effective when: prompt_extend is enabled

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
prompt
string
required

Motion/story description for the video (max 2000 characters).

Maximum string length: 2000
image
string
required

First-frame image (URL or Base64). Supported formats: JPEG/JPG/PNG/BMP/WEBP, 360-2000px, ≤10MB.

negative_prompt
string

Negative prompt describing unwanted content (max 500 characters).

Maximum string length: 500
resolution
enum<string>
default:720P

Output resolution tier:

  • 720P
  • 1080P
Available options:
720P,
1080P
duration
enum<integer>

Video duration in seconds. Supported values 5, 10, or 15.

Available options:
5,
10,
15
prompt_extend
boolean
default:true

Enable intelligent prompt rewriting (slightly longer latency, better detail).

shot_type
enum<string> | null
default:single

Specifies the shot type for video generation.

Only takes effect when prompt_extend is enabled.

  • single: Default value, outputs single-shot video
  • multi: Outputs multi-shot video
Available options:
single,
multi
audio
boolean | null
default:true

Enable automatic audio generation. Set to false to force a silent output.

audio_url
string<uri> | null

Custom audio file URL (wav/mp3, 3-30s, ≤15MB). Overrides the audio flag.

seed
integer

Random seed [0, 2147483647].

Required range: 0 <= x <= 2147483647
safety_filter
boolean | null
default:true

Enable content safety filter. Defaults to true. Set to false to disable content safety inspection.

Response

202 - application/json

Accepted - Task created successfully

task_info
object