Skip to main content
POST
/
v1
/
ai
/
image-to-video
/
wan-2-5-i2v-720p
WAN 2.5 720p - Create video from image
curl --request POST \
  --url https://api.freepik.com/v1/ai/image-to-video/wan-2-5-i2v-720p \
  --header 'Content-Type: application/json' \
  --header 'x-freepik-api-key: <api-key>' \
  --data '
{
  "prompt": "A serene mountain landscape at golden hour with mist rising from the valley",
  "image": "https://example.com/image.jpg",
  "webhook_url": "https://www.example.com/webhook",
  "duration": "5",
  "negative_prompt": "blurry, low quality, watermark",
  "enable_prompt_expansion": true,
  "seed": 12345
}
'
{
  "data": {
    "task_id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
    "status": "CREATED"
  }
}

Authorizations

x-freepik-api-key
string
header
required

Your Freepik API key. Required for authentication. Learn how to obtain an API key

Body

application/json

Generate 720p video from image using WAN 2.5 model

prompt
string
required

Main description of the video - scene, characters, motion, camera moves, style.

Tips:

  • Be specific about scenes and visual details
  • Describe camera movements (zoom, pan, tilt)
  • Mention lighting and atmosphere

Examples:

  • Simple: "a cat sitting on a windowsill"
  • Detailed: "fluffy orange cat on wooden windowsill, looking at snow falling outside, soft warm lighting"
Maximum string length: 800
Example:

"A serene mountain landscape at golden hour with mist rising from the valley"

image
string
required

URL of the keyframe or base image to animate. Must be publicly accessible.

Supported formats: JPEG, PNG, WebP Recommended: High quality image with clear subject

Example:

"https://example.com/image.jpg"

webhook_url
string<uri>

Optional callback URL that will receive asynchronous notifications whenever the task changes status. The payload sent to this URL is the same as the corresponding GET endpoint response, but without the data field.

Example:

"https://www.example.com/webhook"

duration
enum<string>
default:5

Video duration in seconds:

  • 5: Short clip, faster generation
  • 10: Medium length, more developed action
Available options:
5,
10
Example:

"5"

negative_prompt
string

Things to avoid in the generated video. Use this to prevent unwanted elements.

Examples: "blurry, low quality, watermark, text, distortion, extra limbs"

Maximum string length: 500
Example:

"blurry, low quality, watermark"

enable_prompt_expansion
boolean
default:true

Enable AI prompt optimizer to expand shorter prompts into detailed scripts. Useful when you have a simple idea but want richer video output.

Example:

true

seed
integer

Random seed for reproducibility. Use the same seed with identical parameters to get similar results. Leave null for random seed.

Required range: 0 <= x <= 2147483647
Example:

12345

Response

OK - Task created successfully

data
object
required
Example:
{
  "task_id": "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
  "status": "CREATED"
}