Grok Imagine video ids: three at xAI, one on Sume

xAI lists grok-imagine-video, 1.5 and 1.5-lite; Sume's catalog has only grok-imagine-video-1.5. A quick map so you send the id that exists.

4 min readSume
All posts

xAI's video generation page names three model ids: grok-imagine-video, grok-imagine-video-1.5 and grok-imagine-video-1.5-lite. Sume's video router catalog has one Grok video id, grok-imagine-video-1.5, and rejects ids that are not in its catalog. So when a tutorial says to call the Lite model, do not paste that id into a Sume request; use the catalog id.

What are the three xAI ids?

The names look similar, and the differences are about quality tier and where the 1080p comes from.

xAI Grok video ids, from xAI docs, read 2026-10-11
xAI idWhat xAI saysList price per second
grok-imagine-video-1.5Full-featured, native 1080p$0.080
grok-imagine-video-1.5-liteLower cost, 1080p by upscaling$0.020
grok-imagine-videoLegacy, up to 720pNot on the pages read

What does Sume accept?

Sume's catalog row is grok-imagine-video-1.5 with 480p and 720p, 4 to 15 seconds, and an image required. Sume's generate route validates the request against the catalog row, so an unsupported resolution, duration or reference returns an error instead of a quiet fallback. If you want routing chosen for you, Sume's docs say to send model sume/auto rather than a fixed id.

How do you check before you build?

Ask the catalog, because it is the source of truth and can change. The video router exposes a models endpoint with capabilities for each row, and the same document describes a single-model lookup that returns a 404 for an unknown id. Run the lookup for the id in your code and fail the build if it is missing.

import os
import requests

key = os.environ["SUME_API_KEY"]
r = requests.get(
    "https://api.sume.com/v1/video-router/models/grok-imagine-video-1.5",
    headers={"Authorization": f"Bearer {key}"},
    timeout=30,
)
if r.status_code == 404:
    raise SystemExit("model id not in the Sume catalog")
r.raise_for_status()
print(r.json())

Which name should a script use?

Keep the provider id in one config value per provider and never share it between xAI and Sume code paths. A Sume request should always name a catalog id, and an xAI request should name an xAI id. That one habit prevents the most common failure with new releases: calling a name from a launch post that your catalog does not carry yet.

Sources

Related posts

More in Models

All Models posts

Written by Sume