Rate limits
Requests are rate-limited per shop, using the same token bucket as AI / Agent access — REST calls and agent calls draw from one shared budget:
- Bucket capacity: 60 (burst ceiling)
- Refill: 1 token per second (sustained ~1 request/second)
- Each REST request consumes 1 token
When the bucket is empty, the API returns 429 RATE_LIMITED with a Retry-After header (seconds) and retryAfterMs in the error body.
Staying within the limit
Section titled “Staying within the limit”- Don’t parallelise against one shop. The data store is single-threaded per shop — concurrent requests don’t complete faster and burn tokens. Issue calls sequentially.
- Page efficiently. Use a large
pageSizeand step throughpagerather than many small pages. - Batch inventory writes. One
PATCH …/inventorycall can update many locations in one request — one token, not one per location. - Back off on 429. Wait the
Retry-Afterinterval and retry the same request.