POST/images/generations

Create images from a prompt

Creates one or more images from a text prompt using the specified image model. Provide model and prompt; n defaults to 1, and you can enable streaming with stream. Use size, quality, and output_format to control the generated images.

  • IdempotentThe SDK sends Idempotency-Key, so a retried request is only applied once.

15 body fields

Image generation request. model and prompt are required.

promptstringrequired
A text description of the desired image(s). The maximum length is 32000 characters.
modelstringrequired
The GPT image model to use for image generation. Specify a model explicitly. Supported models include `gpt-image-1`, `gpt-image-1-mini`, `gpt-image-1.5`, `gpt-image-2`, `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`, `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`, `gpt-image-2.5-flare-2026-09-08`, and `chatgpt-image-latest`.
nintegeroptional
The number of images to generate. Must be between 1 and 10.
Default:1
qualitystringoptional
The quality of the image that will be generated. - `auto` (default value) will automatically select the best quality for the given model. - `high`, `medium` and `low` are supported for the GPT image models. - `gpt-image-2.5-sunburst` and `gpt-image-2.5-flare`, including their `2026-09-08` snapshots, also support `xhigh` and `max`.
Allowed:lowmediumhighxhighmaxautostandardhdDefault:auto
response_formatstringdeprecatedoptional
Legacy response format parameter for retired image models. Unsupported for GPT image models, which always return base64-encoded images.
Allowed:urlb64_jsonnull
output_formatstringoptional
The format in which the generated images are returned. This parameter is only supported for the GPT image models. Must be one of `png`, `jpeg`, or `webp`.
Allowed:pngjpegwebpDefault:png
output_compressionintegeroptional
The compression level (0-100%) for the generated images. This parameter is only supported for the GPT image models with the `webp` or `jpeg` output formats, and defaults to 100.
Default:100
streambooleanoptional
Generate the image in streaming mode. Defaults to `false`. See the [Image generation guide](https://developers.openai.com/api/docs/guides/image-generation) for more information. This parameter is only supported for the GPT image models.
Default:false
partial_imagesintegeroptional
Number of partial images to emit in a streaming response, from 0 to 3. Defaults to 0 when omitted.
Default:0
sizestringoptional
The size of the generated images. For `gpt-image-2`, `gpt-image-2-2026-04-21`, `gpt-image-2.5-sunburst`, `gpt-image-2.5-sunburst-2026-09-08`, `gpt-image-2.5-flare`, and `gpt-image-2.5-flare-2026-09-08`, arbitrary resolutions are supported as `WIDTHxHEIGHT` strings, for example `1536x864`. Width and height must both be divisible by 16 and the requested aspect ratio must be between 1:3 and 3:1. Resolutions above `2560x1440` are experimental, and the maximum supported resolution is `3840x2160`. The requested size must also satisfy the model's current pixel and edge limits. The standard sizes `1024x1024`, `1536x1024`, and `1024x1536` are supported by the GPT image models; `auto` is supported for models that allow automatic sizing.
Default:auto
moderationstringoptional
Control the content-moderation level for images generated by the GPT image models. Must be either `low` for less restrictive filtering or `auto` (default value).
Allowed:lowautoDefault:auto
backgroundstringoptional
Set the background of the generated image(s). This parameter is only supported for the GPT image models. Must be one of `transparent`, `opaque`, or `auto` (default value). When `auto` is used, the model will automatically determine the best background for the image. `gpt-image-2.5-sunburst` and `gpt-image-2.5-flare`, including their `2026-09-08` snapshots, support `opaque` and `transparent` backgrounds. Transparent backgrounds are available for supported GPT Image models. For `gpt-image-2` and `gpt-image-2-2026-04-21`, this support is in preview. When using `transparent`, set the output format to `png` or `webp`.
Allowed:transparentopaqueautoDefault:auto
stylestringdeprecatedoptional
Legacy style parameter for retired image models. Unsupported for GPT image models; describe the desired style in the prompt instead.
Allowed:vividnaturalnull
safety_identifierstringoptional
A stable identifier for an end user in your organization, used for safety monitoring and abuse detection. Hash a username or email address to avoid sending identifying information. A non-empty value takes precedence over the deprecated `user` parameter. If omitted, null, or empty, the API uses `user` when available. [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).
userstringdeprecatedoptional
Deprecated: use `safety_identifier` instead. This parameter remains accepted for backward compatibility and is used when `safety_identifier` is omitted, null, or empty. [Learn more](https://developers.openai.com/api/docs/guides/safety-best-practices#implement-safety-identifiers).

7 status codes
200Returns generated image data and the creation timestamp. For streaming requests, emits events as partial images become available and a final event when generation is complete.
safety_identifierstringoptional
The effective safety identifier used for safety monitoring and abuse detection. This is the non-empty `safety_identifier` from the request, or the deprecated `user` value when `safety_identifier` is omitted, null, or empty.
createdintegerrequired
The Unix timestamp (in seconds) of when the image was created.
dataarray<object>optional
The list of generated images.
backgroundstringoptional
The background parameter used for the image generation. Either `transparent` or `opaque`.
Allowed:transparentopaque
output_formatstringoptional
The output format of the image generation. Either `png`, `webp`, or `jpeg`.
Allowed:pngwebpjpeg
sizestringoptional
The image dimensions as a `WIDTHxHEIGHT` string, for example `1536x864`.
qualitystringoptional
The quality of the image generated. One of `low`, `medium`, `high`, `xhigh`, or `max`.
Allowed:lowmediumhighxhighmax
usageobjectoptional
For `gpt-image-1` only, the token usage information for the image generation.
400Returned when the request contains invalid image-generation parameters or input.
errorobjectrequired
403Returned when the project does not have access to the requested model.
errorobjectrequired
410Returned when the requested DALL·E image endpoint has been retired.
errorobjectrequired
429Returned when the request exceeds a rate limit. For a `slow_down` error, reduce your request rate and increase it gradually.

One documented failure

  • slow_down

    Your request rate increased too quickly. Please reduce the request rate and gradually increase it again.

    Traffic increased too quickly

errorobjectrequired
500Returned when the image could not be generated or processed.
errorobjectrequired
503Returned when the service is temporarily unavailable. For a `server_is_overloaded` error, retry after a brief delay.

One documented failure

  • server_is_overloaded

    The model is temporarily overloaded. Please retry your request after a brief delay.

    The requested model is temporarily overloaded

errorobjectrequired

Error handling

A 400 is returned when the request has invalid parameters or input. A 403 is returned when the project cannot access the requested model, and a 410 is returned when you use the retired DALL·E image endpoint. A 429 indicates a rate limit, a 500 indicates the image could not be generated or processed, and a 503 indicates temporary service unavailability; reduce your request rate for slow_down errors and retry after a brief delay for server_is_overloaded errors. model and prompt are required; prompt must not exceed 32,000 characters, and n must be between 1 and 10.