Create image
Last updated September 9, 2026
Generate images with x-ai/grok-imagine-image-quality through the OpenAI-compatible endpoint; official SDKs work as-is.
Text-to-image with x-ai/grok-imagine-image-quality. It uses the OpenAI Images compatible endpoint, so
pointing an official SDK at our base_url is enough.
This model does not support streaming.
https://gateway.amux.ai/v1/images/generationsAuthorization
headerAuthorizationstringRequiredBearer <your Amux key> Your Amux API key.
Request
application/jsonmodelstringRequiredAmux model ID. Append :provider to pin a specific provider.
promptstringRequiredThe prompt.
nintegerDefault 1How many images to produce (1–10, default 1). Billed per image; the hold scales with it too.
aspect_ratio"1:1" | "4:3" | "3:4" | "3:2" | "2:3" | "16:9" | "9:16" | "2:1" | "1:2" | "21:9" | "5:2" | "19.5:9" | "9:19.5" | "20:9" | "9:20" | "auto"Default "1:1"Output aspect ratio, 1:1 by default. Identical to what the upstream model accepts — sixteen values:
1:1 4:3 3:4 3:2 2:3 16:9 9:16 2:1 1:2 21:9 5:2 19.5:9 9:19.5 20:9 9:20 auto
The ratio changes the shape of the output only and does not change the pricing tier — all sixteen were measured at the same price.
A ratio outside this set is dropped and explained in amux.notes.
image_size"1K" | "2K"Default "1K"Resolution tier. 1K (default) or 2K. 4K is not supported.
It also determines the output format: 1K produces JPEG, 2K produces PNG.
Treat the extension of the returned URL as authoritative.
When omitted, 1K is sent explicitly — the tier is always written into the upstream
request rather than left to the upstream default.
moderation"auto" | "low" | "high"Default "auto"Moderation strength. auto (default), low or high.
userstringEnd-user identifier for abuse tracking. Omit the field entirely if you do not need it.
Response
200responseGeneration succeeded.
400responseInvalid request, or a capability this model does not support (such as streaming).
402responseAvailable balance cannot cover the upper-bound hold for this request.
503responseNo available provider, or the in-flight queue is full.
Dimensions and format
Dimensions are expressed with two parameters: aspect_ratio and image_size.
This model does not accept size (an exact pixel string); it is dropped and explained
in amux.notes.
image_size | Pixels at 1:1 | Output format |
|---|---|---|
1K (default) | 1024 × 1024 | JPEG |
2K | 2048 × 2048 | PNG |
Other ratios scale within the same tier; the full list is in the next section.
4K is not supported.
The ratio changes the shape of the output only and does not change the pricing tier; the resolution tier does.
⚠️ The output format follows image_size and cannot be chosen — neither
output_format nor output_compression has any effect on this model. Treat the
extension of the returned URL as authoritative.
quality is not supported
The upstream model accepts this parameter, but on this model it changes neither the
output resolution nor the pricing tier. It is therefore marked unsupported here: it is
dropped and explained in amux.notes.
The pricing tier for this model depends on image_size alone.
Aspect ratio
Output aspect ratio, 1:1 by default. Identical to what the upstream model accepts —
sixteen values:
| Ratio | Pixels at 1K | Ratio | Pixels at 1K | |
|---|---|---|---|---|
1:1 | 1024 × 1024 | 2:1 | 1408 × 704 | |
4:3 | 1152 × 864 | 1:2 | 704 × 1408 | |
3:4 | 864 × 1152 | 21:9 | 1568 × 672 | |
3:2 | 1248 × 832 | 5:2 | 1600 × 640 | |
2:3 | 832 × 1248 | 19.5:9 | 1248 × 576 | |
16:9 | 1280 × 720 | 9:19.5 | 576 × 1248 | |
9:16 | 720 × 1280 | 20:9 | 1280 × 576 | |
auto | chosen upstream | 9:20 | 576 × 1280 |
The ratio changes the shape of the output only and does not change the pricing tier — all sixteen were measured at the same price.
A ratio outside this set is dropped and explained in amux.notes; we will not guess one
for you.
Output files
Both data[].url and amux.images[].url point at our stored copy, not at an
upstream temporary URL.
Stored files are cleaned up — download anything you need to keep, or the URL will return 404.
Unsupported parameters
Passing them is not an error: they are dropped and explained in amux.notes. If the
result is not what you expected, check notes first.
| Parameter | Why |
|---|---|
size | Exact pixel strings are rejected upstream. Use aspect_ratio and image_size |
mask | The upstream edit endpoint has no concept of a mask |
quality | Accepted upstream, but affects neither the output nor billing |
background | Not accepted upstream; transparent backgrounds cannot be requested |
output_format / output_compression | The output format follows image_size and cannot be chosen |
input_fidelity | Not accepted upstream |
stream / partial_images | This model does not support streaming image generation |
seed | The OpenAI Images protocol has no such parameter |
style | The upstream model has this parameter; it is not exposed on Amux yet. ⚠️ It is the only one in this table dropped silently — see below |
⚠️ style is the exception: dropping it produces no amux.notes entry.
Every other parameter above is marked unsupported in this model's parameter matrix, so
there is something to report; style is not a parameter Amux models at all, so it is
discarded while the request is parsed. In other words, sending style gives you no
feedback whatsoever — write your code as if it did not exist.
Errors
The error body matches OpenAI's shape. See Errors and retries
for the type values and retry semantics.
curl https://gateway.amux.ai/v1/images/generations \
-H "Authorization: Bearer $AMUX_API_KEY" \
-d '{
"model": "x-ai/grok-imagine-image-quality",
"prompt": "A red fox sitting in snow, photorealistic",
"aspect_ratio": "16:9",
"image_size": "1K"
}'{
"created": 1786000000,
"data": [
{
"url": "<string>"
}
],
"usage": {
"output_images": 0,
"input_images": 0
},
"amux": {
"task_id": "<string>",
"generation_id": "<string>",
"provider": "<string>",
"cost_nano": "<string>",
"images": [
{
"index": 0,
"url": "<string>"
}
],
"notes": [
"<string>"
]
}
}