Skip to main content
Model logo

Grok Imagine Video API

    Upload images/videos above, then type @ in your prompt to reference them

    Click or drag & dropPNG, JPG, WEBP, GIF · Max 100MB
    Click or drag & dropPNG, JPG, WEBP, GIF · Max 100MB
    Output

    Your generated video will appear here

    Grok Imagine Video

    What is Grok Imagine Video?

    Grok Imagine Video is a speed-optimized build of Grok Imagine 1.5 Video, the same model as the 1.5 Video API route, tuned for faster results in exchange for a small amount of quality. xAI's own figure is a 6-second 720p video in about 25 seconds.

    It is also the more flexible build in every direction except resolution. Pass prompt alone for text-to-video, or supply either a single start_image_url or 1 to 7 image_urls for image-to-video, never both in the same request. Sound generates in the same pass. It is the only Grok Imagine route with style presets, with @ImageN referencing, and the only one whose videos can be extended or upscaled. On the Arena image-to-video board it still ranks ahead of every Veo 3.1 variant.

    Key features of Grok Imagine Video

    Referencing assets in the prompt

    Address each upload by position: "@Image1 does a dance in @Image2". Numbering follows the order of `image_urls`, so `@Image1` is the first image in the array. Only this build understands the syntax.

    Fast turnaround

    A 6-second 720p video comes back in about 25 seconds by xAI's figure, down from 40 or more on the previous model. Built for iterating on direction, not waiting on it.

    Ahead of Veo 3.1 on the Arena

    Even as the speed build, it ranks above every Veo 3.1 variant on the Arena image-to-video board as of June 2026. Boards move, so read it as a current snapshot.

    Text-to-video, which 1.5 Video cannot do

    A prompt alone is a complete request here. The official 1.5 Video API build requires a start image, so this is the only Grok route that generates from text.

    Up to 7 reference images

    Lock product, talent, and background separately while the prompt drives camera and action. Or pass a single `start_image_url` when you only need an opening frame.

    The only build that extends and upscales

    Grok Imagine Video Extend and Grok Imagine Upscale accept task IDs from this route only, which is how a Grok sequence runs past 10 seconds or reaches HD.

    Best for

    Text-to-video from a brief

    Generate a video from a prompt alone when there is no source image to work from.

    Choreographed two-subject shots

    Put a subject into a scene explicitly: "@Image1 walks through @Image2" beats describing both from scratch.

    Multi-reference brand spots

    Separate product, talent, and background across up to 7 references, then direct them by name.

    Fast iteration on direction

    Explore camera, pacing, and composition with quick turnarounds before committing.

    Sequences past 10 seconds

    Generate an opening here, then chain Extend in 6 or 10-second steps.

    Preset-driven styling

    Reach for Spicy, Fun, or Normal when the look matters more than a precisely worded prompt.

    Use cases

    Referencing assets is what sets this build apart. Upload a dancer and a stage, then prompt "@Image1 does a slow dance in @Image2", and the model knows which upload is the subject and which is the scene instead of guessing from a description. A brand team can lock a product, a presenter, and a backdrop across three references and direct them by name in one call, with a matching sound bed generated alongside.

    Because Extend and Upscale only accept task IDs from this route, it is also the entry point for anything longer or sharper than one pass: generate here, chain Extend for length, then Upscale the take you keep. The alternative path is to settle the opening frame here and re-animate it on 1.5 Video at 1080p.

    Limitations

    Output stops at 720p; 1080p is only on the 1.5 Video API build. Being speed-optimized, it trades a small amount of quality against that build at the same prompt. A single pass caps at 10 seconds, shorter than 1.5 Video's 15, so going longer means chaining Extend. Negative prompts are ignored, so describe what you want rather than what to avoid. A start image and reference images are mutually exclusive: send one field or the other, never both, and image_urls accepts a maximum of 7.

    Grok Imagine Video vs Grok Imagine 1.5 Video

    Grok Imagine VideoGrok Imagine 1.5 Video
    BuildSpeed-optimizedOfficial API
    Text-to-videoYesNo, start image required
    Duration1–10s1–15s
    Resolution480p, 720p480p, 720p, 1080p
    ImagesOne start_image_url or 1–7 image_urls, not bothOne start_image_url
    Referencing assets@Image1, @Image2 in the promptNone
    Style presetsCustom, Spicy, Fun, NormalNone
    Extend / UpscaleSupportedNot supported
    Billing keyxai/grok-imagine-videoxai/grok-imagine-1.5-video

    Pick this build when you need to generate from a prompt, use references, or extend and upscale the result. Pick 1.5 Video when you already have the opening frame and want 1080p.

    API examples

    Call Grok Imagine Video from any language by POSTing to /v1/tasks. Full parameter docs live at docs.unifically.com/models/video/xai/grok-imagine-video.

    Text-to-video with referencing assets. @Image1 and @Image2 point at the uploads by position:

    curl -X POST https://api.unifically.com/v1/tasks \
      -H "Content-Type: application/json" \
      -H "Authorization: Bearer YOUR_API_KEY" \
      -d '{
        "model": "xai/grok-imagine-video",
        "input": {
          "prompt": "@Image1 does a slow dance in @Image2. AUDIO: soft rain, distant thunder",
          "aspect_ratio": "9:16",
          "duration": 10,
          "resolution": "720p",
          "video_preset": "normal",
          "image_urls": [
            "https://files.unifically.com/your-dancer.png",
            "https://files.unifically.com/your-stage.png"
          ]
        }
      }'
    

    For a plain image-to-video request, send start_image_url instead, never alongside image_urls:

    curl -X POST https://api.unifically.com/v1/tasks \
      -H "Content-Type: application/json" \
      -H "Authorization: Bearer YOUR_API_KEY" \
      -d '{
        "model": "xai/grok-imagine-video",
        "input": {
          "prompt": "The camera pushes in as the city lights blur behind her.",
          "aspect_ratio": "16:9",
          "duration": 10,
          "resolution": "720p",
          "start_image_url": "https://files.unifically.com/your-opening-frame.png"
        }
      }'
    

    Successful submission returns a task_id. Poll GET /v1/tasks/<task_id> or set a callback_url on the request to receive the finished video URL. That same task_id is what Extend and Upscale take.

    FAQs

    People also ask

    It is a speed-optimized build of xAI's Grok Imagine 1.5 Video model, faster results in exchange for a small amount of quality. It is the only Grok Imagine route with text-to-video, reference images, style presets, and @ImageN referencing.

    xAI's own figure for the Fast build is a 6-second 720p video in about 25 seconds, down from 40 or more on the previous model. Actual times vary with duration, resolution, and load.

    Same 1.5 model, two builds. This one is speed-optimized and far more flexible: text-to-video, 1 to 7 reference images, presets, and it is the only build Extend and Upscale accept. Grok Imagine 1.5 Video is the official API build, higher quality up to 1080p and 15 seconds, but image-to-video only.

    Yes. Sound effects, ambience, and lip-synced dialogue generate in the same pass as the video. There is no audio parameter; direct the sound through the prompt alongside the motion.

    Yes. Reference your uploads by position with @Image1, @Image2, and so on, for example "@Image1 does a dance in @Image2". The numbering follows the order of image_urls, so @Image1 is the first image in the array.

    Either a single start_image_url or 1 to 7 image_urls, one or the other, never both in the same request. Both are optional; omit them for text-to-video.

    Custom, which is the default, plus Spicy, Fun, and Normal. Presets are only on this build; Grok Imagine 1.5 Video has none.

    From 1 to 10 seconds, with a default of 6. To go longer, chain Grok Imagine Video Extend onto the result in 6 or 10-second steps.

    Yes, and this is the only Grok Imagine build that can. Both Grok Imagine Video Extend and Grok Imagine Upscale accept task IDs from this route, and only from this route.

    Grok Imagine video models

    Two xAI video models share this page: Grok Imagine 1.5 Video for quality at up to 1080p, and the speed-optimized Grok Imagine Video for longer clips, reference images, and presets.