Skip to main content
POST
/
api
/
v3
/
alibaba
/
wan-2.5
/
image-to-video-fast
Image to Video
curl --request POST \
  --url https://gptproto.com/api/v3/alibaba/wan-2.5/image-to-video-fast \
  --header 'Authorization: <authorization>' \
  --header 'Content-Type: application/json' \
  --data '{
  "duration": 123,
  "enable_prompt_expansion": true,
  "seed": 123,
  "prompt": "<string>",
  "resolution": "<string>",
  "image": "<string>"
}'
{
  "error": {
    "message": "Invalid signature",
    "type": "401"
  }
}

Overview

This endpoint provides image to video functionality.

Authentication

This endpoint requires authentication using a Bearer token.
Authorization
string
default:"sk-***********"
required
Your API key in the format: Bearer YOUR_API_KEY

Request Body

duration
integer
default:"5"
Duration parameter
enable_prompt_expansion
boolean
default:"false"
Enable Prompt Expansion parameter
seed
integer
default:"-1"
Seed parameter
prompt
string
required
Prompt parameter
resolution
string
default:"720p"
Resolution parameter
image
string
Image parameter

Request Example

curl -X POST "gptproto/api/v3/alibaba/wan-2.5/image-to-video-fast" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "duration": 5,
  "enable_prompt_expansion": false,
  "seed": -1,
  "prompt": "A world-weary private investigator leans against a rain-streaked phone booth on a foggy 1940s New York street, steam rising from a manhole cover. A fedora casts a deep shadow over his eyes. Holding the classic receiver, he speaks in a low, gravelly voice: \"The recording was pure static, a dead end. Then I ran it through WaveSpeedAI. The new Wan2.5 algorithm filtered the noise... I heard everything. The whisper, the threat, the whole rotten deal.\" High-contrast black and white, dramatic chiaroscuro lighting, deep focus, 35mm film grain, moody and atmospheric.\n\n",
  "resolution": "720p",
  "image": "https://oss.heyoos.com/ai-draw/user/generator/2025/09/24/9f6947f8890f45bda58198cc5395f8ec/.png"
}'

Response

Success
200
Successful response
{
  "status": "success"
}

Error Responses

{
  "error": {
    "message": "Invalid signature",
    "type": "401"
  }
}