Video Smoke Matrix

This page records the live OAuth API verdicts progrok uses for the underdocumented Grok Imagine video surface. The canonical REST shape is preferred even when SDKs expose convenience fields.

SurfaceVerdictNotes
T2VPassedgrok-imagine-video prompt-only generation returned status: done.
I2V URL/data/local filePassedCLI local files are encoded as data URIs and sent as image: {url}.
R2V URL/data/local filePassedreference_images works on the base model; max 7 refs, max 10s.
Image file_idPassedUploaded image IDs worked for I2V and R2V.
Video file_idPassedUploaded MP4 IDs worked for edit and extend.
Edit by URLPassedvideo: {url} on /v1/videos/edits.
Extend by URLPassedvideo: {url} on /v1/videos/extensions.
secondsPassedOpenAI-compatible duration alias completed.
image_urlPassedREST accepted the alias, but progrok emits canonical image: {url | file_id}.
video_urlFailedREST edit returned 422 missing field video; use video: {url | file_id}.
output.upload_urlPassedA public PUT endpoint completed and the result video.url equaled the supplied upload URL.
mode body fieldIgnoredREST accepted a stray mode field and treated the request as ordinary T2V.
1080pFailedxAI returned 1080p video resolution is not available for your team.
1.5 preview I2VPassedgrok-imagine-video-1.5-preview works with --image.
1.5 preview T2V / R2VFailedPrompt-only T2V and reference_images returned xAI 400 errors.