API Free WeekHundreds of APIs are free to call this week.Browse free APIs

Grok Imagine Image 2.0

xai/grok-imagine-image/2.0/edit

Grok Imagine Image 2.0 Edit is xAI's intelligent image editing model. Transform, retouch, and reimagine existing images using text prompts - from background replacement to artistic style conversion.

Base price
$0.06USD / run
Execution
async
Model type
image
Input fields
6

Try the model

Playground

Open playground
Input
Text description of the desired image.

PNG, JPEG, WebP, or GIF · 20 MiB maximum each

List of URLs of the images to edit. A maximum of 3 images are supported.
Resolution of the generated image. `1k` for standard resolution, `2k` for high resolution. Allowed values: 1k, 2k.
The format of the generated image. Allowed values: jpeg, png.
Quality level of the edited image. Allowed values: low, medium.
The aspect ratio of the generated image. Allowed values: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16.
OutputReady

Your output will appear here

Complete the inputs, then click Run.

Specifications

Pricing

Base price
$0.06 / run
Billing formula
((params.resolution ?? "1k") == "2k" ? ((params.quality ?? "medium") == "low" ? 0.06 : 0.08) : ((params.quality ?? "medium") == "low" ? 0.04 : 0.06)) + len(params.images ?? []) * 0.01

Context & modalities

Input
Schema-defined
Output
image

Capabilities

Chat
Not supported
Vision
Not supported
Reasoning
Not supported
Structured output
Not supported
Function calling
Not supported
Audio input
Not supported

Access

Provider
xAI
Model ID
xai/grok-imagine-image/2.0/edit
Execution
async
API
Unified Run API
Endpoint
/v1/run

API README

Grok Imagine Image 2.0 Edit

Grok Imagine Image 2.0 Edit is a specialized SandBase endpoint built to revise up to three supplied images through natural-language direction. It is most useful when teams need controlled image revision and reference blending, with the route’s inputs defining a repeatable production contract instead of leaving critical delivery choices to an ad-hoc manual workflow.

Use this exact route when its input mode matches the creative asset already in hand: describe the visual or spoken result clearly, set only the controls that support the intended delivery, and keep the subject, action, environment, camera or performance direction internally consistent. The result is returned asynchronously as a downloadable media URL suitable for review, automation, or downstream finishing.

Highlights

  • Three-image revision context. Supply up to three source images so a single instruction can reconcile subject, style, product, or layout cues across the edit.
  • Explicit render quality. Low and medium modes create a deliberate cost-versus-finish choice instead of tying every revision to one fixed render tier.
  • 1K or 2K finishing. Select the resolution needed for review, publishing, or further compositing while keeping the same edit instruction.
  • Format-conscious delivery. JPEG and PNG outputs support compact publishing assets as well as lossless handoff requirements.

Pricing

Billed per output image at xAI list price; each supplied input image adds $0.01.

ResolutionQualityPrice per output
1KLow$0.04
1KMedium$0.06
2KLow$0.06
2KMedium$0.08

When to Use

ScenarioWhy this route fits
Concept developmentChoose Grok Imagine Image 2.0 Edit when its edit workflow matches the starting material and you need several clearly directed variations.
Production iterationUse explicit duration, resolution, ratio, seed, or quality controls to compare versions without changing the core creative brief.
Channel adaptationGenerate directly in the landscape, square, portrait, or vertical format required by the destination whenever that control is available.
Automated pipelinesIntegrate the asynchronous media URL into review queues, asset libraries, publishing tools, or a later finishing stage.
Alternative routePick a related text-, image-, reference-, edit-, or turbo route when the available source media or required degree of control is different.

Prompt Guide

Lead with the main subject or source asset, then describe the intended action or transformation, environment, composition, camera or vocal delivery, lighting and mood. Keep instructions concrete and compatible; use the route’s explicit fields for duration, resolution, ratio, quality, voice, or reproducibility instead of burying those settings in prose.

{
  "prompt": "A cinematic product reveal with deliberate subject motion, coherent lighting, and a slow camera push.",
  "resolution": "1k",
  "aspect_ratio": "21:9",
  "output_format": "jpeg",
  "quality": "medium",
  "images": [
    "https://example.com/reference-1.jpg"
  ]
}

Technical Specs

PropertyDetails
Model IDxai/grok-imagine-image/2.0/edit
Required inputsprompt
ExecutionAsynchronous; poll the returned generation ID
OutputDownloadable media URL
promptstring; required
imagesarray; optional
resolutionstring; optional; choices: 1k, 2k; default: 1k
output_formatstring; optional; choices: jpeg, png; default: jpeg
qualitystring; optional; choices: low, medium; default: medium
aspect_ratiostring; optional; choices: 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16

Related Models

ModelBest for
xai/grok-ttsAlternative grok tts workflow
xai/grok-imagine-video/text-to-videoAlternative text to video workflow
xai/grok-imagine-video/extendAlternative extend workflow
xai/grok-imagine-video/image-to-videoAlternative image to video workflow

Start building

Send your first request

OpenAI-compatible endpoint with unified authentication and usage tracking.

Production API
Unified Run API endpoint
https://api.sandbase.ai/v1/run
Model ID
xai/grok-imagine-image/2.0/edit
# The quoted heredoc keeps Unicode and shell metacharacters unchanged.
result=$(curl --fail-with-body --silent \
  -X POST "https://api.sandbase.ai/v1/run" \
  -H "Authorization: Bearer $SANDBASE_API_KEY" \
  -H "Content-Type: application/json" \
  --data-binary @- <<'SANDBASE_JSON'
{
  "model": "xai/grok-imagine-image/2.0/edit",
  "images": [
    "https://v3b.fal.media/files/b/0a8b911d/Abk8vStrvmSPlzUqI_NN3_image_043.png"
  ],
  "prompt": "Make this scene more realistic but still keep the game vibes",
  "quality": "medium",
  "resolution": "1k",
  "output_format": "jpeg"
}
SANDBASE_JSON
)
run_id=$(printf '%s' "$result" | jq -r .id)
for attempt in $(seq 1 120); do
  status=$(printf '%s' "$result" | jq -r .status)
  case "$status" in completed|failed|timeout) break ;; esac
  sleep 2
  result=$(curl --fail-with-body --silent \
    -H "Authorization: Bearer $SANDBASE_API_KEY" \
    "https://api.sandbase.ai/v1/run/$run_id")
done
status=$(printf '%s' "$result" | jq -r .status)
[ "$status" = completed ] || { echo "Generation ended: $status" >&2; exit 1; }
printf '%s\n' "$result"

Choose your model

Compare models

All language models
ModelContextInput / 1MOutput / 1MReleased
xAI———Aug 11, 2026
xAI———Aug 11, 2026
xAI———May 7, 2026
xAI———May 7, 2026
xAI———Jan 29, 2026