Skip to content
English

Veo 3.1 Fast Image to Video API

POST /v1/tasks

All models are called through the Unified Async API POST /v1/tasks endpoint; only the input fields differ (see input parameters below).

Model summary

Model name veo-3.1-fast/image-to-video
Type Video generation (image-to-video)
Endpoint POST /v1/tasks
Pricing See HiAPI Pricing

Google Veo 3.1 Fast image-to-video API: fast, cost-efficient image animation with native audio, up to 4K, and 4 / 6 / 8-second clips — built for high-volume production and quick iteration.

Production guidance

Production guidance
  • For production, pass callback.url at the top level of the request body so HiAPI can notify your service when the task reaches a terminal state.
  • GET /v1/tasks/:id is better for local debugging, low-volume jobs, or fallback reconciliation if a callback is missed.
  • Use callback.when=final. Both success and fail are terminal states, so your service should deduplicate by taskId.

Best suited for

Batch image-to-video

Fast generation at a low price — ideal for animating e-commerce product shots and stock stills in bulk.

image_urlprompt
Cost-sensitive production

720p without audio is the entry price. Use Fast for volume, then switch key assets to flagship veo-3.1.

resolutiongenerate_audio
Rapid motion iteration

4 / 6 / 8-second clips return quickly for motion direction checks and A/B drafts.

duration
Aspect ratio control

aspect_ratio defaults to auto (follows the input); force 16:9 / 9:16 for placements.

aspect_ratio

Request parameters

model string required

Fixed value veo-3.1-fast/image-to-video.

example veo-3.1-fast/image-to-video
input object required

Business parameters. Put Veo 3.1 Fast Image to Video-specific configuration here.

prompt string required

Text prompt describing how the image should be animated.

image_url string required

URL of the input image to animate. Should be 720p or higher resolution in 16:9 or 9:16 aspect ratio; other aspect ratios are cropped to fit. SVG is not supported.

aspect_ratio enum optional

Output video aspect ratio. auto follows the input image.

default auto enum: auto16:99:16
resolution enum required

Output video resolution. Higher resolution costs more.

default 720p enum: 720p1080p4k
duration enum required

Clip length in seconds. Cost scales with duration.

default 8 enum: 468
generate_audio boolean optional

Generate a native audio track. Pricing is higher when enabled.

default true
negative_prompt string optional

Describe what to avoid in the generated video.

seed integer optional

Random seed for reproducible generation.

callback object optional

Optional callback configuration. When set, HiAPI notifies your service when the task reaches a terminal state.

url string required

Required when callback is set; HTTPS URL that receives terminal task notifications.

example https://your-domain.com/hiapi/callback
when enum optional

Callback trigger timing. Use final.

default final enum: final

Example requests

Animate a food shot (4K with audio)

A ramen still comes to life: rising steam, chopsticks lifting noodles, izakaya ambience — 4K / 8s.

Request body
{
  "model": "veo-3.1-fast/image-to-video",
  "input": {
    "prompt": "Steam rises from the hot ramen broth, chopsticks lift glistening noodles in slow motion, cozy izakaya ambience",
    "image_url": "https://static.hiapi.ai/example/2026/07/02/1782991317440-de8da2297e385e22-veo-3-1-fast-image-to-video.webp",
    "resolution": "4k",
    "duration": 8,
    "generate_audio": true
  }
}
1080p standard tier

1080p / 8s with audio — the cost-effective tier for most placements.

Request body
{
  "model": "veo-3.1-fast/image-to-video",
  "input": {
    "prompt": "The lighthouse beam sweeps in a steady rhythm across the darkening sea, waves rolling, seabirds gliding through the beam",
    "image_url": "https://static.hiapi.ai/example/2026/07/02/1782991315981-ea706258e68806d3-veo-3-1-image-to-video.webp",
    "resolution": "1080p",
    "duration": 8,
    "generate_audio": true
  }
}

Getting the result

  1. The response returns a taskId immediately without waiting for generation to finish.
  2. In production, prefer waiting for callback.url to receive the terminal notification. For local debugging, poll GET /v1/tasks/:id.
  3. When status=success, download the generated video from output[].url.
  4. When status=fail, fix the request based on the returned error instead of retrying the same invalid payload.

FAQ

Fast vs. flagship veo-3.1 image-to-video — which one?

veo-3.1-fast is faster and cheaper, ideal for volume and iteration. veo-3.1 offers better visual and audio quality for final delivery. Parameters are identical, so switching is easy.

What are the input image requirements?

720p or higher resolution in 16:9 or 9:16 aspect ratio is recommended; other ratios are cropped to fit. image_url must be publicly accessible. SVG is not supported.

Which resolutions and durations are supported, and how is it priced?

Resolutions 720p / 1080p / 4K, durations 4 / 6 / 8 seconds. Billed by resolution, audio, and duration (per second) — same rates as veo-3.1-fast text-to-video. See the live pricing page. View pricing

How do I get the generated video?

The response returns a taskId immediately. When the task reaches a terminal state, download the video from output[].url. In production, pass callback.url for terminal notifications.

Next steps