REST API Request Limits
General REST API Limits
REST API requests of all types and to all endpoints are limited in the following ways:
- IP address
- 500,000 requests per hour
- 8,300 requests per minute
- Account (this is also known as Profile within the ChannelAdvisor Platform)
- 2,000 requests per minute
- 5 concurrent requests
- The maximum data payload size for requests to this endpoint is 128 mb.
- The maximum rate limit is 60 files per hour per account (aka profile).
- Accounts are limited to a maximum of 10,000,000 products exported per day and a maximum of 10 requests per minute.
- Additional export requests will be rejected with HTTP status 429 Too Many Requests.
Note: Ignoring the violation of request limits may lead to the offender being blocked from submitting further requests.
Illustrating the General REST API Limits
Multiple client integrations and multiple profiles illustrate different integration approaches to accommodate the 3 different limits.
Building Efficient Integrations
The Developer Network has a lot of content to aid in building efficient integrations. Some of these will help avoid violating the request limits, and some are just good practice:
- Product Uploads - this section outlines delivery of product files through the API.
- We recommend this endpoint for updating products in large catalogs.
- This is the most helpful method to avoid hitting the request limits, as it utilizes file format upload (delivered via API) to update product data instead of individual requests to the API.
- Product Exports - this section defines a method to export data via API.
- Product ID Integrations - this section focuses on ensuring efficient handling of Product IDs.
- This may help avoid request limits depending on need, catalog size, and system design.
- Batch Requests - this section defines how requests can be batched together (doesn't help with avoiding request limits)