Generate images with Ideogram 4.5, from a prompt or by transforming source images
Generate one or more images with Ideogram 4.5. Supplying source images turns the request into an image-to-image transform: the model conditions on the sources, the prompt becomes optional guidance, and size may be "source" to keep the first source's own size or "auto" to let the server pick the canvas from the sources and the prompt. Provide sources either as image_asset_identifiers references or as raw images bytes (multipart requests only); if both are supplied, the references win and the bytes are ignored. The prompt accepts either natural language or a structured Ideogram 4.0 JSON prompt; the server detects which was supplied.
magic_prompt controls automatic prompt rewriting: auto (the default) and on rewrite a natural-language prompt, a prompt that is already a valid structured JSON prompt is always consumed directly, and off disables rewriting entirely so the model receives your prompt verbatim.
Ideogram 4.5 renders a fixed set of output sizes. When size is omitted, the server picks a supported size automatically based on the prompt, and on the source images when there are any.
By default the request blocks until the images are ready and returns them in data. Set async to true to return immediately after the request is accepted, then poll for completion and results with GET /v1/generations/{generation_id} using the returned generation_id.
Supplying a webhook_url makes the request asynchronous whatever async says: the response returns as soon as the request is accepted, and the finished result is POSTed to that URL.
Query parameters
When true, the request is validated and priced but not run: nothing is generated, stored, or billed, and no safety review is performed. The response is a PriceQuote object instead of the usual response for this endpoint. Send exactly the request you would send to generate, so the quote reflects the same options.
Request body
Example request
{
"magic_prompt": "on",
"image_asset_identifiers": [
{
"asset_type": "RESPONSE",
"asset_id": "7uS_VESkRI6O3-sVgHQp_A"
}
],
"size": "2048x2048",
"seed": 12345,
"webhook_url": "https://api.example.com/webhooks/ideogram"
}Response
The generated images (synchronous requests), or an acknowledgement to poll with GET /v1/generations/{generation_id} (async requests).
Example response
{
"data": [
{
"seed": 12345,
"prompt": "prompt",
"resolution": "1024x1024",
"url": "https://openapi-generator.tech",
"is_image_safe": true
},
{
"seed": 12345,
"prompt": "prompt",
"resolution": "1024x1024",
"url": "https://openapi-generator.tech",
"is_image_safe": true
}
],
"seed": 12345,
"generation_id": "generation_id"
}Changes
Changed in 3 of the 33 revisions of this API.4213
- ○
added the new
very_highenum value to the request property(media type: multipart/form-data)request-property-enum-value-added
- ○
added the new
very_highenum value to the request property(media type: application/json)request-property-enum-value-added
- ○
added the optional property
to the response with the statusresponse-optional-property-added
- ○
added the optional property
to the response with the statusresponse-optional-property-added
- ○
added the optional property
to the response with the statusresponse-optional-property-added
- ○
added the optional property
to the response with the statusresponse-optional-property-added
- ○
- ▲
the request property
became required (media type: multipart/form-data)request-property-became-required
- ▲
the request property
became required (media type: application/json)request-property-became-required
- ▲
the
request property's minLength was increased from0to1(media type: multipart/form-data)request-property-min-length-increased
- ▲
the
request property's minLength was increased from0to1(media type: application/json)request-property-min-length-increased
- ●
removed the request property
(media type: multipart/form-data)request-property-removed
- ●
removed the request property
(media type: application/json)request-property-removed
- ○
added the new optional request property
(media type: multipart/form-data)new-optional-request-property
- ○
added the new optional request property
(media type: application/json)new-optional-request-property
- ○
added the new optional request property
(media type: multipart/form-data)new-optional-request-property
- ○
added the new optional request property
(media type: application/json)new-optional-request-property
- ○
the
request property default valueautowas added (media type: multipart/form-data)request-property-default-value-added
- ○
the
request property default valueautowas added (media type: application/json)request-property-default-value-added
- ▲
- ○
endpoint added
endpoint-added
This revision also has 13 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog
- ○