Publish or unpublish products
/v1/products/publishPublishes or unpublishes up to 100 products at once; a single product can also be toggled with PATCH /v1/products/{id}. Answers each id's outcome. 402 when the plan does not allow publishing, or publishing them would pass the plan's active-product limit.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
The products to publish or unpublish, up to 100.
Response Body
application/json
application/json
curl -X POST "https://example.com/v1/products/publish" \ -H "Content-Type: application/json" \ -d '{ "ids": [ "6e0346a3-e54d-40e3-9779-4ba1e707e35b" ], "published": true }'{ "affected": [ "4fa450be-f7f9-4947-9cd8-45f559412bd8" ], "not_found": [ "42d097e8-23d9-4b4b-9d40-4c593308d98f" ], "forbidden": [ "f09f22a4-960f-4de7-bfb1-fbb0befa8bdd" ]}{ "error": { "code": "string", "message": "string", "details": null }}Delete products DELETE
Deletes up to 100 products by `ids`. Answers `200` with each id's outcome: `affected`, `not_found`, or `forbidden`.
Export product images GET
Returns a ZIP of finished images - each composited onto its background with its shadow - selected by `ids` or by the list's filters, at most 200 products. `image_review_status` chooses which images go in (default `accepted` and `pending`). The archive's `manifest.json` names every entry and every image skipped. The 3D model is never included. - `200`: the ZIP. - `202`: more images need finishing than one request can do. They are finished in the background, a download link is emailed, and the same request then returns the ZIP. `400` past 200 products.