Material Swap
Re-renders masked regions of a product photo in the materials shown in
reference images, preserving the product’s construction and everything
outside the masks. Upload the image, up to 4 masks, and the
materials using multipart/form-data.
Returns a generation_id; poll GET /v2/generations/{generation_id} or
supply a webhook_url.
Authentication
API key for access control. Use in the header with the name “Api-Key”
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
The product photo to edit (max size 25MB). JPEG, PNG, and WEBP formats are supported.
Masks marking the regions to change (max 4, max size 25MB each). JPEG, PNG, and WEBP formats are supported. Every mask must have the same pixel dimensions as the product photo. White pixels mark the region to change and black pixels are preserved; alpha-only masks also work (opaque = change, transparent = preserve).
Material reference images (max size 25MB each). JPEG, PNG, and WEBP formats are supported. Only their material (color, texture, pattern scale, and orientation) is applied to the masked regions. Send one material for every mask, or exactly one per mask, paired by position.
Output aspect ratio. Defaults to the product photo’s aspect ratio,
which keeps the original framing. A different ratio extends the
scene to fill the new shape rather than cropping, so part of the
frame is newly generated. Supported values are 1:1, 3:4,
4:3, 16:9, and 9:16.
HTTPS URL that Ideogram delivers the generated result to. Ideogram sends a
JSON POST to this URL once all images for the request have finished
generating. The body mirrors the synchronous generate response:
request_id, created, and a data array
containing every generated image (url, prompt, resolution, seed,
is_image_safe). Each delivery is signed with Ed25519 and verifiable
against the public keys at https://api.ideogram.ai/v1/.well-known/jwks.json. Must be HTTPS;
private and loopback hosts and the cloud metadata service are rejected.
Response
URL-safe base64 ID accepted by the generation polling endpoint.