List export profiles
GET /api/v1/pim/exports/profiles?schemaId=... returns the profiles that apply to a schema:
key (used in the export calls below), a displayName, the contentType and fileExtension it produces, and the languages it supports (available plus a default).
Export one product
GET /api/v1/pim/exports/products/{productId}?profileKey=...&language=... returns the file directly — the Content-Type matches the profile, and the body is the export:
Export a selection
POST /api/v1/pim/exports/selection bundles up to 200 products into a ZIP synchronously:
Python
Export the whole catalog
A full-schema export runs as a background job. Start it, poll status, then download:1
Start the job
POST /api/v1/pim/exports/catalog with { "schemaId": "...", "profileKey": "...", "language": "..." } returns 202 with a jobId.2
Poll status
GET /api/v1/pim/exports/{jobId}/status returns status (Queued / Processing / Success / Failed), progress, and ready — poll until ready is true.3
Download
GET /api/v1/pim/exports/{jobId}/download streams the artifact once the job succeeded.Only one catalog export runs per (schema, profile) at a time — starting a duplicate returns
409. Downloading before the job succeeds returns 409; the artifact is retained for a limited time after completion.