# Integrate products into a scene Integrate and embed one or more products into a predefined scene at precise user-defined coordinates. This endpoint ensures the product matches the scene's lighting, perspective, and aesthetics. Note: Products are automaticlly being cutout from their background as part of the pipeline. Endpoint: POST /image/edit/product/integrate ## Header parameters: - `api_token` (string, required) API token associated with the organization. ## Request fields (application/json): - `scene` (string, required) Publicly available URL or Base64-encoded image of the scene where the product will be embedded. Accepted formats are jpeg, jpg, png, webp. - `products` (array, required) An array where each object defines a product to be embedded and its specific placement within the scene. Supports 1 to N products. - `products.image` (string, required) Publicly available URL or Base64-encoded image of the product. Accepted formats are jpeg, jpg, png, webp. Note: - If the image contains an alpha channel, no cutout is applied. - If the image does not contain an alpha channel, automatic product cutout is applied. - `products.coordinates` (object, required) An object specifying the exact placement and scaling of this specific product within the scene. - `products.coordinates.x` (integer, required) X-coordinate of the product's top-left corner in pixels relative to the scene image. - `products.coordinates.y` (integer, required) Y-coordinate of the product's top-left corner in pixels relative to the scene image. - `products.coordinates.width` (integer, required) Desired width of the product in pixels. Must not exceed the scene's dimensions. - `products.coordinates.height` (integer, required) Desired height of the product in pixels. Must not exceed the scene's dimensions. - `seed` (integer) Seed for deterministic generation. Uses a random seed if omitted. - `visual_input_content_moderation` (boolean) If true, returns 422 on visual input moderation failure for scene or product. - `visual_output_content_moderation` (boolean) If true, returns 422 on visual output moderation failure. ## Response 200 fields (application/json): - `result` (object, required) - `result.image_url` (string, required) - `request_id` (string, required) ## Response 202 fields (application/json): - `request_id` (string, required) - `status_url` (string, required) ## Response 400 fields (application/json): - `error` (object, required) - `error.code` (integer, required) Example: 123 - `error.message` (string, required) - `error.details` (string, required) - `request_id` (string, required) ## Response 401 fields (application/json): - `error` (object, required) - `error.code` (integer, required) Example: 123 - `error.message` (string, required) - `error.details` (string, required) - `request_id` (string, required) ## Response 403 fields (application/json): - `error` (object, required) - `error.code` (integer, required) Example: 123 - `error.message` (string, required) - `error.details` (string, required) - `request_id` (string, required) ## Response 404 fields (application/json): - `error` (object, required) - `error.code` (integer, required) Example: 123 - `error.message` (string, required) - `error.details` (string, required) - `request_id` (string, required) ## Response 415 fields (application/json): - `error` (object, required) - `error.code` (integer, required) Example: 123 - `error.message` (string, required) - `error.details` (string, required) - `request_id` (string, required) ## Response 422 fields (application/json): - `error` (object, required) - `error.code` (integer, required) Example: 123 - `error.message` (string, required) - `error.details` (string, required) - `request_id` (string, required) ## Response 429 fields (application/json): - `error` (object, required) - `error.code` (integer, required) Example: 123 - `error.message` (string, required) - `error.details` (string, required) - `request_id` (string, required) ## Response 460 fields (application/json): - `error` (object, required) - `error.code` (integer, required) Example: 123 - `error.message` (string, required) - `error.details` (string, required) - `request_id` (string, required) ## Response 5XX fields (application/json): - `error` (object, required) - `error.code` (integer, required) Example: 123 - `error.message` (string, required) - `error.details` (string, required) - `request_id` (string, required)