Grok Video 1.5

Grok Video 1.5 is a video model for text-to-video, single-image animation, and reference-driven generation using one to seven images, with durations from 1 to 15 seconds. It is suited to creative prototyping, advertising assets, social media production, and automated video workflows that need repeatable API access. Use the playground below to test representative prompts, input media, duration, resolution, aspect ratio, and other controls that are available for this model. Before production rollout, compare motion quality, subject consistency, processing time, failure handling, and estimated cost with your actual workload. The controls shown on this page describe the currently supported integration options.

A graphite electric rally car taking a fast turn across a salt desert beneath storm clouds
Model ID
grok-video-1.5
Provider
xAI
API endpoint
/v1/videos
Pricing
0.01
Last updated
2026-08-13

Capabilities

  • Video generation through the current public task endpoint
  • Image, reference, duration, or resolution controls when exposed by the live schema
  • Current parameters including prompt, duration, resolution

Limitations

  • Capabilities and parameter ranges can change; pin and validate the parameter set used in production
  • Do not assume support for parameters absent from the live request schema
  • Asynchronous jobs require explicit polling, failure, timeout, and safety-status handling

Use cases

  • Product prototypes and automated content workflows
  • Batch media generation and programmatic creative tooling
  • Multi-model applications that need unified authentication, billing, and usage records

Pricing and billing examples

  • video_input_image | 0.01 | input_images | {"operation":["video.image_to_video","video.reference_to_video"]}
  • 1080p video output with audio | 0.25 | output_video_seconds | {"operation":["video.generate","video.image_to_video","video.reference_to_video"],"resolution_tier":"1080p"}
  • video_output_480p | 0.08 | output_video_seconds | {"operation":["video.generate","video.image_to_video","video.reference_to_video"],"resolution_tier":["480p","default","auto"]}
  • 720p video output with audio | 0.14 | output_video_seconds | {"operation":["video.generate","video.image_to_video","video.reference_to_video"],"resolution_tier":"720p"}

Request parameters

ParameterTypeRequiredDefaultOptions
modelstringYes
prompttextareaYes
durationintegerYes5
resolutionselectYes480p480p, 720p, 1080p
aspect_ratioselectNoautoauto, 16:9, 9:16, 1:1, 4:3, 3:4, 3:2, 2:3, 21:9
image_urlasset_listNo
reference_image_urlsasset_listNo

API examples

cURL

curl -X POST 'https://api.uniall.ai/v1/videos' \
  -H 'Authorization: Bearer $UNIALL_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"aspect_ratio":"auto","duration":5,"model":"grok-video-1.5","prompt":"Describe the output you want","resolution":"480p"}'

Python

import json
import requests

payload = json.loads(r'''{"aspect_ratio":"auto","duration":5,"model":"grok-video-1.5","prompt":"Describe the output you want","resolution":"480p"}''')
response = requests.post(
    "https://api.uniall.ai/v1/videos",
    headers={"Authorization": "Bearer " + UNIALL_API_KEY},
    json=payload,
)
response.raise_for_status()
result = response.json()

JavaScript

const response = await fetch("https://api.uniall.ai/v1/videos", {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.UNIALL_API_KEY}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({"aspect_ratio":"auto","duration":5,"model":"grok-video-1.5","prompt":"Describe the output you want","resolution":"480p"}),
});

if (!response.ok) throw new Error(`HTTP ${response.status}`);
const result = await response.json();

Frequently asked questions

What API endpoint does grok-video-1.5 use?

The endpoint is resolved from the current model capabilities and request schema and shown on this page.

How is grok-video-1.5 priced?

The pricing section reads the current structured billing configuration, so editorial text does not need a rewrite after a price change.

Can I use Python?

Yes. The example uses the current endpoint and exact model identifier.

Are JavaScript and cURL examples included?

Yes. All examples share the same live request structure.

Which resolution, duration, or reference-image controls are supported?

Supported controls come from the current request schema. Do not assume fields that are not listed.

What should I validate before production use?

Validate parameters, timeouts, error handling, and asynchronous video task status behavior after model updates.