Rate limits
The API is throttled per API key using a fixed window.
| Setting | Value |
|---|---|
| Default limit | 100 requests/minute per key |
| Window | 60 seconds (fixed) |
| Scope | Per API key |
| Configurable | Yes — the per-key rate_limit can be raised on request |
When you exceed the limit
Section titled “When you exceed the limit”The API responds with 429 Too Many Requests and a Retry-After header:
HTTP/1.1 429 Too Many RequestsRetry-After: 60Wait Retry-After seconds (the window length) before retrying.
Staying under the limit
Section titled “Staying under the limit”- Cache bundle data.
/bundlesand/bundles/:idchange infrequently — cache them in your app or at the edge. - Price locally. Use the SDK’s
calculatePrice/useBundlePriceinstead of calling/priceon every selection change — pricing is computed client-side with no request. - Configure once. Call
/configureonly when the customer actually adds to cart, not on every interaction.