# Luma Ray 3.2 Image to Video API

> Agent Ray 3.2 by Luma - animate still images into dynamic videos with AI. Transform photos into cinematic clips with natural motion, camera movement, and optional audio generation.

Source: https://www.sandbase.ai/models/luma/ray/3.2/image-to-video
API reference: https://www.sandbase.ai/models/luma/ray/3.2/image-to-video/docs

## Facts

- Provider: Luma
- Type: Video model
- Model ID: `luma/ray/3.2/image-to-video`
- Price: From $1 per run
- Capabilities: image to video
- Billing: pay per use from one SandBase balance; no provider account or subscription needed

## Call it

- Unified Run API: `POST https://api.sandbase.ai/v1/run`

```bash
curl -X POST https://api.sandbase.ai/v1/run \
  -H "Authorization: Bearer $SANDBASE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "luma/ray/3.2/image-to-video",
  "hdr": false,
  "loop": false,
  "image": "https://storage.googleapis.com/falserverless/gallery/example_inputs_liuyifei.png",
  "prompt": "Low-angle shot of a majestic tiger prowling through a snowy landscape, leaving paw prints on the white blanket.",
  "duration": 5,
  "exr_export": false,
  "resolution": "720p",
  "aspect_ratio": "16:9"
}'
```

The response returns a run id; poll `GET https://api.sandbase.ai/v1/run/{id}` until the status is `completed` or `failed`.

## FAQ

### How do I call Luma Ray 3.2 Image to Video through SandBase?

Create a SandBase API key, then send requests with the model ID "luma/ray/3.2/image-to-video" to Unified Run API (/v1/run) at https://api.sandbase.ai. The request examples on this page show the exact payload.

### Do I need a separate Luma account?

No. One SandBase API key and balance gives you access to Luma Ray 3.2 Image to Video and the other models in the catalog; you do not need to sign up with Luma separately.

## README

### Luma Ray 3.2 Image to Video

Luma Ray 3.2 image-to-video: animate a first frame (optionally toward an end frame or keyframes) into a 5 or 10 second clip, with optional HDR.

#### Fields

| Field | Type | Default | Notes |
|---|---|---|---|
| `prompt` | string, required | — | Up to 6,000 characters. |
| `image` | image URL, required | — | First frame. JPEG, PNG, or WebP URL. |
| `end_image` | image URL | — | Optional last frame. |
| `resolution` | `540p` / `720p` / `1080p` | `720p` | Sets the per-second rate. |
| `duration` | 5 / 10 | 5 | Output length in seconds. |
| `loop` | boolean | false | Make the clip loop. |
| `keyframes` | string[] | — | Optional keyframe images. |
| `keyframe_indexes` | integer[] | — | Frame positions for `keyframes`. |
| `exr_export` | boolean | false | Also export EXR frames with HDR; triples the price. |
| `hdr` | boolean | false | 16-bit HDR output (720p and 1080p); doubles the price. |
| `aspect_ratio` | `21:9` / `16:9` / `4:3` / `1:1` / `3:4` / `9:16` | `16:9` | Output frame shape. |

#### Billing

$0.50 per 5-second clip at 540p, $1.00 at 720p, $2.00 at 1080p; 10 seconds costs double. HDR doubles and HDR with EXR export triples the 720p/1080p price.

| Output | 540p | 720p | 1080p |
|---|---|---|---|
| 5s (default) | $0.50 | $1.00 | $2.00 |
| 10s | $1.00 | $2.00 | $4.00 |
| 5s HDR | $0.50 | $2.00 | $4.00 |

Failed runs are not charged.

#### Prompting

- Describe what moves and how the camera behaves.

#### Limits

- Clips are 5 or 10 seconds.

#### Also on SandBase

Related: `luma/ray/3.2/text-to-video`.
