Skip to content
English

Luma Ray 3.2 Image to Video API

POST Base URL: https://api.hiapi.ai /v1/tasks

Image, video, and audio models are called through theUnified Async API POST /v1/tasks endpoint; only the input fields differ (see input parameters below).

Model summary

Model name ray-3.2/image-to-video
Type Video generation (image-to-video)
Endpoint POST /v1/tasks
Pricing See HiAPI Pricing

Luma Ray 3.2 image-to-video turns a first frame, with an optional last frame, into a 5-second cinematic clip at 540p, 720p, or 1080p, matched to the closest supported aspect ratio of the first frame.

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

Cinematic camera motion

Use an existing image as the first frame and describe camera moves and scene changes in the prompt.

image_urlprompt
First-to-last-frame transitions

Provide both a first and a last frame to generate a transition from the starting shot to the target shot.

image_urlend_image_url
Three resolution tiers

Choose 540p, 720p, or 1080p output.

resolution

Request parameters

model string required

Fixed value ray-3.2/image-to-video.

example ray-3.2/image-to-video
input object required

Business parameters. Put Luma Ray 3.2 Image to Video-specific configuration here.

prompt string required

Describes the motion, camera movement, and scene changes to create from the image. 1–6000 characters.

image_url string required

Public image URL used as the first frame. The output is matched to the closest supported aspect ratio (16:9, 9:16, 1:1, 4:3, 3:4, 21:9), so the image may be cropped.

end_image_url string optional

Public image URL used as the last frame. When set, the video transitions from the first frame to this frame.

resolution enum optional

Output video resolution: 540p, 720p, or 1080p. Every video is 5 seconds long.

default 540p enum: 540p720p1080p
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

Desert starlight camp

First-frame image-to-video example: a 5-second clip at 720p.

Request body
{
  "model": "ray-3.2/image-to-video",
  "input": {
    "prompt": "The shooting star streaks across the Milky Way as the camera slowly cranes down toward the glowing tent, desert sand ripples shimmer in the lantern light, cinematic night timelapse feel",
    "image_url": "https://static.hiapi.ai/previews/nano-banana-2-lite/2026/07/03/1783076316176-b9c9c7b278a01155-nano-lite-g2-desert.webp",
    "resolution": "720p"
  }
}

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

Can I set the duration or aspect ratio?

No. Every video is 5 seconds long. The aspect ratio is derived from the image_url first frame and matched to the closest supported ratio (16:9, 9:16, 1:1, 4:3, 3:4, 21:9), so the image may be cropped when the ratios differ; there are no duration or aspect_ratio parameters.

How do first and last frames work?

Pass the first frame in image_url and an optional last frame in end_image_url; the video transitions from the first frame to the last. Without end_image_url, generation starts from the first frame only.

How is it billed?

See the live prices on the HiAPI pricing page. View pricing

Next steps