Skip to main content
POST
/
api
/
v3
/
google
/
veo3.1-pro
/
image-to-video
veo3.1-pro (image to video)
curl --request POST \
  --url https://api.example.com/api/v3/google/veo3.1-pro/image-to-video
Google Veo3.1-pro’s GPTProto format for the image to video API.
curl --location 'https://gptproto.com/api/v3/google/veo3.1-pro/image-to-video' \
--header 'Authorization: Bearer sk-xxxxxx' \
--header 'Content-Type: application/json' \
--data '{
  "prompt": "A young woman walks alone under a transparent umbrella in a quiet alley during light rain, soft city lights reflecting on the wet pavement. Her pace is calm and thoughtful. The camera follows slowly behind her, occasional droplets hitting the lens. Subtle piano music plays, evoking a melancholic but peaceful mood. Dreamy, cinematic, slightly slow motion.",
  "aspect_ratio": "16:9",
  "image": "https://oss.heyoos.com/2025/11/12/d5c2f08479b9452aacbcf9963631ce21.jpeg",
  "enhance_prompt": true
}'
{
  "error": {
    "message": "Invalid signature",
    "type": "401"
  }
}

Parameters

ParameterTypeRequiredDefaultDescription
promptstring✅ Yes-The positive prompt for the generation. A detailed description of how the image should animate into a video.
aspect_ratiostring❌ No16:9The aspect ratio of the generated media. Options: 16:9, 9:16
imagestring✅ Yes-The URL of the starting image for the video generation. The image will be animated based on the prompt.
last_imagestring❌ No-The URL of the ending image for the video generation. If provided, the video will transition from the starting image to this end image.
enhance_promptboolean❌ NotrueWhether to enhance the prompt automatically. Options: true, false

Usage Notes

  • The image URL must be publicly accessible
  • The starting image will be the first frame of the generated video
  • If last_image is provided, the video will smoothly transition from start to end image
  • Video generation is asynchronous - use the task ID returned to query status
  • Use the Query Task endpoint to check generation status