xAI: Grok Imagine Video
xAI Grok Imagine Video API pricing
Grok Imagine Video costs from $0.020 per second of video on Oxyy, depending on the resolution (480p $0.020, 720p $0.028). That is the pay-as-you-go price after the current 60% discount (Launch Promo; standard price $0.050). It takes text, images and video as input and returns video. It is the lowest-priced xAI video model on Oxyy; for every model and rate, see Grok API pricing.
Providers
Where this model runs, and what each route costs. Requests are sent to a healthy provider automatically; if one errors, the gateway retries against another serving the same model.
| Provider | Price | Unit |
|---|---|---|
| xAI | From $0.020 | per second of video |
Capabilities (4)
Pricing
What this model costs on Oxyy, pay as you go. "Charged" is the rate a request is billed at; the standard price is shown beside it for reference.
| Rate | Standard price | Charged | Unit |
|---|---|---|---|
| 480p | $0.050 | $0.020 | per second of video at 480p |
| 720p | $0.070 | $0.028 | per second of video at 720p |
Discount. Charged rates include the current "Launch Promo" discount of 60% on every rate.
Specifications
- Model ID
grok-imagine-video- Developer
- xAI
- Type
- Text to video
- Input
- Text, images and video
- Output
- Video
- Tokenizer
- Grok
- Series
- Grok Imagine
- Image input
- Up to 20 MB each
- Video input
- Up to 100 MB each
- Endpoint
/v1/videos/generations
Best for
Quickstart
Call grok-imagine-video with a POST to /v1/videos/generations on https://api.oxyy.ai, using your Oxyy API key from the OXYY_API_KEY environment variable. Video is generated as a job: submit it, then poll the job id until it completes.
import os, time, requests
headers = {"Authorization": f"Bearer {os.environ['OXYY_API_KEY']}"}
# Video is a job: the POST answers 202 with an id, then you poll it.
job = requests.post("https://api.oxyy.ai/v1/videos/generations", headers=headers, json={"model":"grok-imagine-video","prompt":"A serene lake at dawn, slow dolly in","duration":5}).json()
while job["status"] not in ("completed", "failed", "cancelled"):
time.sleep(5)
job = requests.get(f"https://api.oxyy.ai/v1/videos/generations/{job['id']}", headers=headers).json()
print(job["status"], job.get("result", {}).get("data", [{}])[0].get("url"))Availability
The share of requests to this model that completed successfully over the last 30 days. Requests the caller cancelled, and requests still in flight, are not counted. When an upstream provider errors, the gateway retries against another provider serving the same model, so a single provider incident does not necessarily show up here.
Frequently asked questions
What is Grok Imagine Video?
How much does Grok Imagine Video cost?
How do I generate video with Grok Imagine Video?
What inputs and outputs does Grok Imagine Video support?
What other models does xAI have?
Alternatives to Grok Imagine Video
Models of the same kind from other vendors, closest in price first. Prices are pay-as-you-go on Oxyy, through the same API key.


