The PIM API for developers
The PIM API lets your system (ERP, store, warehouse) read and write product data.
Full, live documentation โ with your company's property dictionary, limits and examples โ is in PIM: Help in the sidebar
(https://data.ecomcart.store/api-doc).
Basics
- Base URL: https://data.ecomcart.store/api/v1
- Authentication: header Authorization: Bearer <key> (or X-Api-Key: <key>)
- Format: JSON
Create the key under Settings โ API keys with the PIM API service โ see API keys.
curl -H "Authorization: Bearer $PIM_KEY" \
https://data.ecomcart.store/api/v1/meta
Main endpoints
| Endpoint | What it does | |---|---| | /products | List, create, change products; also /resolve, /locks, /media | |
/suppliers/{code}/products | Submitting supplier offers | | /jobs/{id} | Background job status | | /categories,
/manufacturers, /suppliers | Reference data | | /attributes, /attribute-families, /attribute-groups, /options | The
property dictionary | | /media/{id}/file | Downloading an image or file | | /meta | Your account's limits and settings
(machine-readable) | | /events | Log of all events (a reliable alternative to webhooks) |
Limits
Limits are per company (not per key) and depend on your plan:
- requests per minute โ headers X-RateLimit-Limit / X-RateLimit-Remaining;
- items per minute on batch endpoints โ X-RateLimit-Items-Limit / X-RateLimit-Items-Remaining;
- a separate limit for ?sync=1 requests.
When you exceed a limit the response is 429 with a Retry-After header โ wait that many seconds.
Common errors
| Code | Meaning | |---|---| | 401 | No key, or the key isn't valid | | 403 | The key lacks the needed permission
(key_scope) or the company is suspended | | 404 | Object not found (or not in your assortment) | | 422 | Invalid data โ
see errors in the response | | 429 | Limit exceeded โ see Retry-After |
Events
Follow changes with webhooks or by reading /events periodically.