GET
/v1/schemas/grok/video/v1%2Fvideos%2Fgenerations
Accept:
Request body
10 properties · 0 required · 7 $defs| property | type | description | constraints |
|---|---|---|---|
| aspect_ratio | enum | Aspect ratio of the generated video. | 1:1 | 16:9 | 9:16 | 4:3 | 3:4 | 3:2 · +1 more · nullable |
| duration | any | Video duration in seconds. Range: [1, 15]. Default: 8. Also accepts `seconds` for OpenAI API compatibility. Accepts both number (8) and string ("8") values. | 1 ≤ n ≤ 15 · format: int32 · default: 8 |
| image | ImageUrl | Optional input image for image-to-video generation. If provided, generates video with this image as the first frame. Also accepts `input_reference` for compatibility (same semantics — first frame). | nullable |
| model | any | Model to be used. | |
| output | VideoOutput | Optional output destination for generated video. | nullable |
| prompt | string | Prompt for video generation. Required for text-to-video (T2V) and reference-to-video (R2V). Optional for image-to-video (I2V) — when omitted, the model generates a video from the image alone. | |
| reference_images | ImageUrl[] | Optional reference images for reference-to-video (R2V) generation. When provided generates video using these images as style/content references. | |
| resolution | enum | Resolution of the generated video. | 480p | 720p | 1080p · nullable |
| storage_options | StorageOptions | Optional output storage configuration. When present, the generated video is stored in the Files API and a `file_output` reference is returned in the response alongside the ephemeral URL. | nullable |
| user | any | A unique identifier representing your end-user. |
Validate a payload
before you spend tokensshell
$ curl -X POST https://modelschemas.com/v1/validate \
-d '{"provider":"grok","endpointId":"v1/videos/generations","payload":{…}}'
→ {"valid": false, "errors": [{"path": "#", "keyword": "required", …}]}