Layerize the text in an image
Decompose a flat image into an editable design: the text in the image is detected, erased from the image, and returned as positioned text blocks with matched fonts, sizes, and colors, alongside a text-free base image.
Supply the source either as an image_asset_identifier reference (an image already stored with Ideogram) or as raw image bytes (multipart requests only). Provide exactly one of the two forms; supplying both, or neither, is rejected with a 400.
A prompt describing the image can guide text detection; when omitted, detection runs on the image alone.
By default the request blocks until layerization is complete and returns the result 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
{
"image_asset_identifier": {
"asset_type": "RESPONSE",
"asset_id": "7uS_VESkRI6O3-sVgHQp_A"
},
"seed": 12345,
"webhook_url": "https://api.example.com/webhooks/ideogram"
}Response
The layerized design (synchronous requests), or an acknowledgement to poll with GET /v1/generations/{generation_id} (async requests).
Example response
{
"data": [
{
"seed": 12345,
"object_type": "layerized_image",
"resolution": "1024x1024",
"url": "https://openapi-generator.tech",
"base_image_url": "https://openapi-generator.tech",
"is_image_safe": true,
"text_blocks": [
{
"role": "heading",
"color": "#212121",
"font_alternatives": [
"font_alternatives",
"font_alternatives"
],
"font_size": 2,
"font_name": "font_name",
"line_height": 7.0614014,
"x": 0,
"width": 1,
"y": 6,
"angle": 5.637377,
"text": "Hello World",
"alignment": "left",
"formatting": [
"bold",
"bold"
],
"height": 5
},
{
"role": "heading",
"color": "#212121",
"font_alternatives": [
"font_alternatives",
"font_alternatives"
],
"font_size": 2,
"font_name": "font_name",
"line_height": 7.0614014,
"x": 0,
"width": 1,
"y": 6,
"angle": 5.637377,
"text": "Hello World",
"alignment": "left",
"formatting": [
"bold",
"bold"
],
"height": 5
}
]
},
{
"seed": 12345,
"object_type": "layerized_image",
"resolution": "1024x1024",
"url": "https://openapi-generator.tech",
"base_image_url": "https://openapi-generator.tech",
"is_image_safe": true,
"text_blocks": [
{
"role": "heading",
"color": "#212121",
"font_alternatives": [
"font_alternatives",
"font_alternatives"
],
"font_size": 2,
"font_name": "font_name",
"line_height": 7.0614014,
"x": 0,
"width": 1,
"y": 6,
"angle": 5.637377,
"text": "Hello World",
"alignment": "left",
"formatting": [
"bold",
"bold"
],
"height": 5
},
{
"role": "heading",
"color": "#212121",
"font_alternatives": [
"font_alternatives",
"font_alternatives"
],
"font_size": 2,
"font_name": "font_name",
"line_height": 7.0614014,
"x": 0,
"width": 1,
"y": 6,
"angle": 5.637377,
"text": "Hello World",
"alignment": "left",
"formatting": [
"bold",
"bold"
],
"height": 5
}
]
}
],
"seed": 12345,
"generation_id": "generation_id"
}Changes
Changed in 1 of the 33 revisions of this API.1
- ○
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
- ○