> ## Documentation Index
> Fetch the complete documentation index at: https://openrouter-d02e98a0-dev-127-conversation-state-store.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# VideoGenerationRequest

## Example Usage

```typescript theme={null}
import { VideoGenerationRequest } from "@openrouter/sdk/models";

let value: VideoGenerationRequest = {
  model: "google/veo-3.1",
  prompt: "A serene mountain landscape at sunset",
};
```

## Fields

| Field | Type | Required | Description | Example |
| - | - | - | - | - |
| `aspectRatio` | [models.VideoGenerationRequestAspectRatio](../models/videogenerationrequestaspectratio.mdx) | :heavy\_minus\_sign: | Aspect ratio of the generated video | 16:9 |
| `callbackUrl` | *string* | :heavy\_minus\_sign: | URL to receive a webhook notification when the video generation job completes. Overrides the workspace-level default callback URL if set. Must be HTTPS. | [https://example.com/webhook](https://example.com/webhook) |
| `duration` | *number* | :heavy\_minus\_sign: | Duration of the generated video in seconds | 8 |
| `frameImages` | [models.FrameImage](../models/frameimage.mdx)\[] | :heavy\_minus\_sign: | Images to use as the first and/or last frame of the generated video. Each image must specify a frame\_type of first\_frame or last\_frame. | |
| `generateAudio` | *boolean* | :heavy\_minus\_sign: | Whether to generate audio alongside the video. Defaults to the endpoint's generate\_audio capability flag, false if not set. | true |
| `inputReferences` | *models.InputReference*\[] | :heavy\_minus\_sign: | Reference assets to guide video generation. Accepts image, audio, and video references. Audio and video references are only honored by providers that support them (currently BytePlus Seedance 2.0); other providers use image references and ignore the rest. | |
| `model` | *string* | :heavy\_check\_mark: | N/A | |
| `prompt` | *string* | :heavy\_check\_mark: | N/A | |
| `provider` | [models.VideoGenerationRequestProvider](../models/videogenerationrequestprovider.mdx) | :heavy\_minus\_sign: | Provider-specific passthrough configuration | |
| `resolution` | [models.VideoGenerationRequestResolution](../models/videogenerationrequestresolution.mdx) | :heavy\_minus\_sign: | Resolution of the generated video | 720p |
| `seed` | *number* | :heavy\_minus\_sign: | If specified, the generation will sample deterministically, such that repeated requests with the same seed and parameters should return the same result. Determinism is not guaranteed for all providers. | |
| `size` | *string* | :heavy\_minus\_sign: | Exact pixel dimensions of the generated video in "WIDTHxHEIGHT" format (e.g. "1280x720"). Interchangeable with resolution + aspect\_ratio. | 1280x720 |
