Rate Limits
The Admin API limits the number of calls to its endpoints to keep the system load under the manageable level.
Rate Limit Scopes
Most Admin API endpoints belong to a rate limit scope such as stockWrite
, productRead
, etc. Each scope defines its own rate limit, meaning that there might be no more than X requests within Y minutes to an endpoint of the particular scope.
Every rate limit scope is isolated.
There are usually dedicated scopes for read and write operations. For example, if you have reached the limit by adding new stocks in the system, you can still retrieve stocks for a specific variant.
You can find the actual scope limits and the relation between an endpoint and a scope in the API Reference. If the scope is not given, there are no rate limits.
Rate limits vary from tenant to tenant.
Rate Limit Headers
Every API response includes the following rate limit related headers:
Header Parameter | |
---|---|
X-RateLimit-Scope | The scope to which the endpoint belongs. |
X-RateLimit-Limit | The total amount of requests that can be made to the endpoint. |
X-RateLimit-Remaining | The remaining amount of requests, which can be made to the endpoint. |
X-RateLimit-Reset | The number of seconds until the quota resets. |
Rate Limits
Scope | Max attempts / min. |
---|---|
customDataRead | 2000 |
customDataWrite | 1000 |
customersRead | 300 |
customersWrite | 300 |
fulfillmentWrite | 300 |
globalRead | 1000 |
globalWrite | 300 |
ordersRead | 1000 |
ordersWrite | 300 |
pricesRead | 2500 |
pricesWrite | 300 |
productRead | 1000 |
productWrite | 300 |
productSortingWrite | 2500 |
redirectsRead | 1000 |
redirectsWrite | 300 |
reservationsWrite | 2500 |
shopCategoriesRead | 1000 |
shopCategoriesWrite | 300 |
stocksRead | 2500 |
stocksWrite | 2500 |
vouchersRead | 300 |
vouchersWrite | 300 |
Response Example
The response for an exceeded rate limit is as follows:
{
"errors": [
{
"errorKey": "RATE_LIMIT_EXCEED",
"message": "The request rate limit exceeded. Please try again later.",
"context": {}
}
]
}