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.