Create collections export
Use this endpoint to kick off a background export job for all products in a single collection. Returns exportId to poll.
Required fields:
collectionId- the collection to export.catalog- product catalog. One ofmarketplace,swag,giftCards, ordonations.locations- array of ISO 3166-1 alpha-2 country codes for price localisation.
Optional fields:
format- output file format. Currentlyndjsononly; defaults tondjson.
Optional response shaping:
include- related entities to include, as a JSON array. One or more ofbrand,tags.fields- computed / expanded fields, as a JSON array. One or more ofranking,priceRange,variantsCount.rankingis export-only (not accepted on GET product endpoints). When included, each exported product includes arankingmap keyed by requested location, withmerchandisingScoreper country.
Optional headers:
Snappy-Account-Id- optional account scoping.
Behavior notes:
- Returns 200 OK immediately with
exportId. The job runs in the background. - Poll
GET /v3/products/exports/{exportId}until the job reaches a terminal state (completedorfailed). On completion, the status response includes adownloadUrlsmap of signed URLs (keyed by file identifier or location code). - The export record expires 48 hours after creation. Download the file(s) before that - expired records cannot be re-issued; you’ll need to create a new export job.
- The exported NDJSON file contains one product per line, each with its full variant list and per-country
availability.fieldsdoes not control which variants are included - all variants are always exported. - Returns
404if the suppliedcollectionIddoes not exist.
Permissions
- Requires:
products:read
Required fields:
collectionId- the collection to export.catalog- product catalog to export from. One ofmarketplace,swag,giftCards, ordonations.locations- array of ISO 3166-1 alpha-2 country codes for price localisation. We recommend up to 50 locations per job.
Optional fields:
format- output file format. Currentlyndjsononly; defaults tondjson.
Optional response shaping:
include- related entities to include. One or more ofbrand,tags.fields- computed / expanded fields. One or more ofpriceRange,variantsCount,ranking. Includerankingto add Snappy’s per-country catalog-ranking score (merchandisingScore,0-100, higher is stronger) to each product in the exported file. The score represents the product’s general standing within each country’s catalog and is independent of your collection context. Does not represent search relevance or position in the response.
Optional headers:
Snappy-Account-Id- optional account scoping.
Behavior notes:
- Returns 200 OK immediately with an
exportId. The job runs in the background. - Poll
GET /v3/products/exports/{exportId}until the job reaches a terminal state (completedorfailed). On completion, the status response includes adownloadUrlsmap of signed URLs (keyed by file identifier or location code). - The exported NDJSON file contains one product per line, each with its full variant list and per-country
availability.fieldsdoes not control which variants are included - all variants are always exported. See NDJSON export format for the full shape. - The export record expires 48 hours after creation. Download the file(s) before that - expired records cannot be re-issued; you’ll need to create a new export job.
- Returns
404if the suppliedcollectionIddoes not exist.
Recommended usage:
- Run each export at most once a day. Use Webhooks for changes between exports.
- Keep
locationsto 50 country codes or fewer per job. To cover more countries, split them across multiple export jobs.
Permissions
Requires:products:readAuthorizations
Company Level Authentication
Include your API key in the X-Api-Key header for every request:
Headers
Must be provided to retrieve swag products.
1"acc123456"
Body
Request body for an async collection export job.
Collection identifier.
^[A-Za-z0-9]{8,}$"abcdef12"
Product catalog to export from (marketplace | swag | giftCards | donations).
marketplace, swag, giftCards, donations "marketplace"
ISO 3166-1 alpha-2 country codes used for price localisation.
1^[A-Z]{2}$Output file format. Async export is NDJSON-only.
ndjson "ndjson"
Related entities to include.
1Related entities to include.
brand, tags Computed or expanded product fields. One or more of priceRange, variantsCount, ranking. ranking is export-only and is not accepted on GET product endpoints.
Computed or expanded fields for product export jobs. Same values as list fields, plus export-only ranking. Not accepted on GET product endpoints.
priceRange, variantsCount, ranking Response
Export job accepted (200 OK). Poll the returned exportId via GET /v3/products/exports/{exportId}.
Export job accepted. The job runs in the background; poll GET /v3/products/exports/{exportId} for status.