# Google Veo 3.1 Image to Video API

> Veo 3.1 by Google - 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/google/veo3.1/image-to-video
API reference: https://www.sandbase.ai/models/google/veo3.1/image-to-video/docs

## Facts

- Provider: Google
- Type: Video model
- Model ID: `google/veo3.1/image-to-video`
- Price: From $3.20 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": "google/veo3.1/image-to-video",
  "prompt": "A monkey and polar bear host a casual podcast about AI inference, bringing their unique perspectives from different environments (tropical vs. arctic) to discuss how AI systems make decisions and process information.\nSample Dialogue:\nMonkey (Banana): \"Welcome back to Bananas & Ice! I am Banana\"\nPolar Bear (Ice): \"And I'"'"'m Ice!\"",
  "duration": 8,
  "resolution": "720p",
  "generate_audio": true
}'
```

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 Google Veo 3.1 Image to Video through SandBase?

Create a SandBase API key, then send requests with the model ID "google/veo3.1/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 Google account?

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

## README

### Veo 3.1 Image to Video

Veo 3.1 image-to-video, Google's highest-quality video model. `image` becomes the first frame and the prompt directs motion, camera, and sound for a 4–8 second clip.

#### Fields

| Field | Type | Default | Notes |
|---|---|---|---|
| `prompt` | string, required | — | Up to 20,000 characters. |
| `image` | image URL, required | — | First frame. JPEG, PNG, or WebP URL. |
| `duration` | 4 / 6 / 8 | 8 | Output length in seconds. |
| `resolution` | `720p` / `1080p` / `4k` | `720p` | Sets the per-second rate. |
| `aspect_ratio` | `16:9` / `9:16` | — | Output frame shape. |
| `generate_audio` | boolean | true | Native dialogue, music, and effects; turning it off lowers the rate. |
| `negative_prompt` | string | — | What to avoid. |
| `seed` | integer 0–4294967295 | random | Fix it to compare prompt changes. |

#### Billing

You pay for output seconds, Google's list price. With audio: $0.40 at 720p, $0.40 at 1080p, $0.60 at 4k. Without audio: $0.20 / $0.20 / $0.40 respectively.

| Output | 720p | 1080p | 4k |
|---|---|---|---|
| 4s with audio | $1.60 | $1.60 | $2.40 |
| 6s with audio | $2.40 | $2.40 | $3.60 |
| 8s with audio (default) | $3.20 | $3.20 | $4.80 |
| 8s without audio | $1.60 | $1.60 | $3.20 |

Failed runs are not charged.

#### Prompting

- Describe what moves and what the audio should be, not what is already visible.
- Match `aspect_ratio` to the input image.

#### Limits

- One input image; use first-last-frame-to-video to control the ending.
- Use Veo 3.1 Fast for cheaper drafts.

#### Also on SandBase

Other Veo 3.1 endpoints: `google/veo3.1/text-to-video`, `google/veo3.1/first-last-frame-to-video`, `google/veo3.1/reference-to-video`, `google/veo3.1/video-extend`, `google/veo3.1/fast/text-to-video`, `google/veo3.1/lite/text-to-video`.
