Skip to main content
Model logo

Grok Imagine Upscale API

    Output

    Your generated video will appear here

    Grok Imagine Upscale

    What is Grok Imagine Upscale?

    Grok Imagine Upscale takes a video Grok Imagine already generated and returns a higher-definition version of it. You pass the task_id of the source generation — there are no other parameters, no quality dial, and no file upload.

    It is the finishing step for the speed-optimized Grok Imagine Video route: generate quickly at 480p or 720p, then upscale the video you decide to keep.

    Key features of Grok Imagine Upscale

    One parameter

    Send `task_id` and nothing else. The endpoint resolves the source video and returns an HD result, so there is no settings surface to get wrong.

    Works from a task ID, not an upload

    The source must be a video Grok Imagine generated. Nothing to re-upload, and no re-encode of your own file.

    Pairs with the speed-optimized build

    Draft fast on Grok Imagine Video, then upscale only the take worth keeping rather than paying for quality on every attempt.

    Best for

    Finishing a chosen draft

    Generate several options quickly at 720p, then upscale only the one you ship.

    Cheap iteration, sharp delivery

    Keep exploration at low resolution and spend on definition once, at the end.

    Batch cleanup

    Upscale a set of approved videos by task ID without re-uploading any media.

    Limitations

    Upscale only accepts task IDs from Grok Imagine Video (xai/grok-imagine-video, the speed-optimized 1.5 build). Task IDs from Grok Imagine 1.5 Video are not supported — that route is the separate API build, and it already reaches 1080p on its own. You cannot upscale a video you uploaded yourself; for arbitrary video files use Topaz Video Upscale. There is no scale factor or target resolution to choose.

    API examples

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

    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-upscale",
        "input": {
          "task_id": "abc123def456"
        }
      }'
    

    Successful submission returns a task_id of its own. Poll GET /v1/tasks/<task_id> or set a callback_url on the request to receive the finished video URL.

    FAQs

    People also ask

    It takes the task_id of a completed Grok Imagine video generation and returns an HD-upscaled version of that video. There is nothing else to configure — one parameter in, a higher-definition result out.

    Only videos generated with Grok Imagine Video (xai/grok-imagine-video, the speed-optimized 1.5 build). Task IDs from Grok Imagine 1.5 Video (xai/grok-imagine-1.5-video) are not supported — that model is the separate API build.

    No. This endpoint works from a task ID, so the source has to be a video Grok Imagine generated. To upscale an arbitrary video file, use Topaz Video Upscale instead.

    It is returned when you submit a generation, and it is listed against every run in your task log. Paste it into the Task ID field above, or send it as task_id on the API call.

    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.