Skip to content

Rate limits

Know every limit the API, the inbound endpoints and the webhooks apply, and what happens at each.

Updated 23 September 2026

On this page
Why
A limit you know about is a retry you can plan; one you discover is an outage.
What
Token bucket limits per key and per endpoint, plus caps on page sizes and batch sizes.
How
Read the tables, back off on 429 and page with cursor rather than asking for everything at once.

Request rates

SurfaceLimitOver it
REST API, /api/v1600 requests a minute per key. The whole minute's allowance may arrive as one burst; it refills evenly.429 Rate limited
Inbound endpoint, /api/in/Bursts of up to 120 posts per endpoint, refilling at two a second429 Rate limited

The REST limit is counted per key, so two integrations on two keys never slow each other. Every call counts, whichever route it hits.

Page sizes

ListDefaultMost per page
/api/v1/products100500
/api/v1/quotes50200
/api/v1/orders50200
/api/v1/stock/lines50200
/api/v1/stock/movements50200
/api/v1/deliveries50200
/api/v1/suppliers50200
/api/v1/purchase-orders50200
/api/v1/customers100500
/api/v1/requests50200

Batch and body sizes

CallMost
POST /api/v1/products/bulk10,000 products (413 above it)
POST /api/v1/customers500 customers
POST /api/v1/requests100,000 characters of text
Inbound endpointA 1MB body (413 above it); 500 customers or 1,000 products per post

Outbound webhooks

Each delivery waits 10 seconds for your answer. A failed delivery is tried again in the nightly run, up to five attempts in all.

Retrying well

  • On 429 or 5xx, wait and retry with a growing pause.
  • Never retry a 4xx unchanged: it fails the same way.
  • Products upsert by SKU and customers by external id or email domain, so a retried batch updates rather than duplicates. Give every customer an external_id to be sure.