Elastic Path Commerce Cloud rate limiter limits the number of requests received by the Elastic Path Commerce Cloud from a web browser or client. Each Elastic Path Commerce Cloud store has its own rate limit. The purpose of a rate limit is to ensure consistent performance and stability of the Elastic Path Commerce Cloud platform, and a quality experience for all of our customers.
By default, Elastic Path Commerce Cloud API enforces a rate limit of 100 requests per second for a production store and 25 requests per second for development stores. Higher rate limits may apply depending on your current plan. Stores that exceed the rate limits get error responses with a status code
429. For more information about error responses, see the Errors section.
In addition, if you send multiple requests to multiple API endpoints simultaneously, it is easy to exceed API rate limits, which may cause unexpected results. You must ensure that the code invoking the endpoints complies with its rate limits.
When the store receives an error response with a status code
429, the web browser automatically retries the request after some time if you use JS-SDK. Although the JS-SDK automatically retries the requests, you must be careful not to send too many requests, to prevent the JS-SDK from being overwhelmed. You must ensure the code invoking the JS-SDK complies with its rate limits. If you do not use JS-SDK, you might have to manually retry the request.
The rate limit for your store depends on your current plan. In case of a sudden rise in the number of rate-limited requests or to request a change in the limit, contact Elastic Path Support. Elastic Path may reduce the limit to prevent abuse or increase the limit to enable high-traffic applications. To increase the limit, you must contact Elastic Path Support a minimum of four weeks in advance before you need the changes to apply.
With the introduction of Organizations, see Rate Limits for Organization.
Rate Limits for Scripted Import
When importing large datasets using the
Import Products endpoint, it is easy for a script on a moderately powerful machine to exceed API rate limits. It is important that you are aware of this. If the API returns a
429 Too Many Requests HTTP response, you should wait a few seconds and try the failed request again.
The JS-SDK handles retries for occasional failed requests. However, you must not use the JS-SDK to handle rate limits for bulk imports. You must ensure the code invoking the JS-SDK complies with its rate limits.