Per-api-key limits
You are limited to 2 requests per second per API key.Per-account limits
You are limited to your planβs associated rate limit, broken up into hourly buckets. As of August 2024:- Basic - 1000/day in buckets of 41/hour
- Premium - 100β000/day in buckets of 4β166/hour
- Enterprise - 300β000/day in buckets of 12β500/hour
- Enterprise 2X (Paid) in buckets of 25β000/hour
- Enterprise 4X (Paid) in buckets of 50β000/hour
Endpoint limits
It is rare, but certain endpoints have custom rate limits, you may need to dynamically wait in these cases.Endpoint locks
Some endpoints have locks that prevent multiple requests from being processed simultaneously by API for the entire account. These are typically actions like bulk_reconcile, bulk_delete, or bulk_receive. You should queue and wait for each request to finish or implement an exponential fallback algorithm and resubmit your requests until you receive a 200, 202, or 203 status code.Dynamically waiting for rate limit resets.
If your 429 error contains an error object, you can waiterror.data.wait_seconds seconds for your rate limit bucket to reset.
This number can be up to an hour or longer. Do not arbitrarily sleep your program in response to this error.