Advertisement Resizer
Reframes the source creative to the exact requested ad resolution, regenerating the layout so text and key elements stay legible at the target size.
Supply platform to keep the whole advertisement clear of that platform's own interface. The advertisement is generated at the largest rectangle that fits inside the platform's published safe zone for the requested aspect ratio, placed at that rectangle's position, and the space around it is filled in so the returned image is still exactly the requested resolution. Omit platform and the advertisement fills the whole frame.
Safe zones are published per aspect ratio, and not every platform publishes one for every ratio. google and tiktok publish 16:9, 1:1, and 9:16; meta and snapchat publish 9:16 only. A platform combined with a resolution that platform has no safe zone for is rejected with a 400.
The request is processed asynchronously. Poll GET /v1/generations/{generation_id} with the returned generation_id until the generation is completed or failed. The completed generation reports the exact amount billed for the request in usage_cost_usd_micros.
Supply the source creative as either an AssetIdentifier reference (image_asset_identifier) or the raw image bytes directly (image, multipart requests only). Provide exactly one of the two forms; supplying both, or neither, is rejected with a 400.
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"
},
"webhook_url": "https://api.example.com/webhooks/ideogram"
}Response
Ad resize accepted for asynchronous processing.
Example response
{
"generation_id": "generation_id"
}