Skip to main content
AI

Grok Imagine Image Generation

Updated: 2026-05-29

This document explains how to call Grok Imagine image model. user requires using this sitestable model and OpenAI compatible image endpoint.

1. Model

ModelscenarioBilling basis
grok-imagine-imagestandard, image editingimage, Input image billing detail
grok-imagine-image-qualityquality, image editingquality, image billing detail

recommended generate and editing use grok-imagine-image. requires quality or resolution use grok-imagine-image-quality.

2. Endpoint Overview

POST /v1/images/tasks
GET /v1/images/tasks/{task_id}

async task Grok generation. supports, pass through this site supports Parameters, resolution, aspect_ratio, output_format, num_images.

2.2 compatibility: OpenAI imageEndpoint

POST /v1/images/generations
POST /v1/images/edits

Endpoint OpenAI image format. /v1/images/edits supports JSON image URL, supports multipart/form-data pass image file.

2.3 Details

Endpoint use Bearer Token:

Authorization: Bearer sk-***
Content-Type: application/json

3. fast

3.1 async

curl -X POST "{BASE_URL}/v1/images/tasks" \
-H "Authorization: Bearer sk-***" \
-H "Content-Type: application/json" \
-d '{"model": "grok-imagine-image",
"task_type": "text2image",
"prompt": ", and ",
"aspect_ratio": "1:1",
"resolution": "1k",
"output_format": "jpeg",
"num_images": 1,
"response_format": "url"}'

submitSuccess returntask ID:

{
"task_id": "task_xxx",
"status": "queued",
"progress": "0%",
"result_url": "",
"metadata": {
"task_type": "text2image"
},
"error": null
}

Query Task:

curl "{BASE_URL}/v1/images/tasks/task_xxx" \
-H "Authorization: Bearer sk-***"

completed responses:

{
"code": "success",
"message": "",
"data": {
"task_id": "task_xxx",
"status": "succeeded",
"progress": "100%",
"result_url": "https://example.com/result-1.jpeg",
"metadata": {
"task_type": "text2image",
"result_count": 1,
"result_urls": [
"https://example.com/result-1.jpeg"
]
},
"error": null
}
}

3.2 async image editing

curl -X POST "{BASE_URL}/v1/images/tasks" \
-H "Authorization: Bearer sk-***" \
-H "Content-Type: application/json" \
-d '{"model": "grok-imagine-image-quality",
"task_type": "image2image",
"prompt": " subject structure, to change into style, ",
"image": "https://example.com/source-watch.png",
"aspect_ratio": "auto",
"resolution": "2k",
"output_format": "webp",
"num_images": 2,
"response_format": "url"}'

3.3 multiple reference imagesediting

curl -X POST "{BASE_URL}/v1/images/tasks" \
-H "Authorization: Bearer sk-***" \
-H "Content-Type: application/json" \
-d '{"model": "grok-imagine-image-quality",
"task_type": "image2image",
"prompt": "to change one, Ratioand, style",
"images": ["https://example.com/product.png",
"https://example.com/stage.png"],
"aspect_ratio": "16:9",
"resolution": "2k",
"output_format": "png",
"num_images": 1,
"response_format": "url"}'

3.4 synchronous compatibilitycall

curl -X POST "{BASE_URL}/v1/images/generations" \
-H "Authorization: Bearer sk-***" \
-H "Content-Type: application/json" \
-d '{"model": "grok-imagine-image",
"prompt": "one, ",
"n": 1,
"response_format": "url"}'

responses:

{
"created": 1773980459,
"data": [
{
"url": "https://example.com/image.png",
"revised_prompt": ""
}
]
}

3.5 synchronousimage editingcompatibilitycall

JSON image URL:

curl -X POST "{BASE_URL}/v1/images/edits" \
-H "Authorization: Bearer sk-***" \
-H "Content-Type: application/json" \
-d '{"model": "grok-imagine-image",
"prompt": "reserved, to change, ",
"image": "https://example.com/person.png",
"n": 1,
"response_format": "url"}'

multipart file pass:

curl -X POST "{BASE_URL}/v1/images/edits" \
-H "Authorization: Bearer sk-***" \
-F "model=grok-imagine-image" \
-F "prompt=reserved subject, into " \
-F "n=1" \
-F "response_format=url" \
-F "image=@/path/to/source.png"

4. Parameter Reference

ParametersTypeRequiredNote
modelstringYesgrok-imagine-image or grok-imagine-image-quality
promptstringYesgeneration or editing prompt
task_typestringNoasync taskuse,text2image or image2image; pass the platform Whether image
imagestringRequiredInput image URL; synchronouseditingandasyncediting supports
imagesstring[]editingRequiredmultiple reference images URL; recommendedFor new integrations, use Field
image_urlstringNoURL compatibility field
image_urlsstring[]NoURL compatibility field
aspect_ratiostringNooutput aspect ratio;1:1, 16:9, 9:16, 4:3, 3:4, image editing auto
resolutionstringNoResolution tier,1k, 2k; recommended /v1/images/tasks use
output_formatstringNojpeg, png, webp
num_imagesintegerNoGenerate Images,1-4; async taskrecommended to use
nintegerNoOpenAI compatibility Field, default 1
response_formatstringNorecommended url

recommended:

  • use for single-image input image.
  • use for multi-image input images.
  • do not image, image_url, images, image_urls.

5. Billing Notes

Grok image this siteuse billing detail, publicpricing Model.

scenariobilling detail
image, Resolution tier, quality
image editingInput image, image, Resolution tier, quality

publicpricing Model, " image / ""Input image / "" image / ". submit, Yestask andbalance, public.

6. Common Errors

to changevideo model imageEndpoint

grok-imagine Yesvideo model, call /v1/videos orcompatibilityvideo task endpoint.

image editing do not pass image

/v1/images/edits and task_type=image2image pass image or images.

pass aspect_ratio=auto

auto image editing. recommended pass 1:1, 16:9, 9:16 Ratio.

synchronousEndpointandasyncEndpoint Field

If required resolution, num_images Grok Parameters, prefer using /v1/images/tasks. synchronouscompatibilityEndpoint OpenAI image.