ChannelEngine: rate limiting
About this article
This article describes the rate-limiting guidelines that apply to ChannelEngine's APIs.
Table of contents
Introduction
To ensure that ChannelEngine can continue serving its customers and partners efficiently and reliably, it is necessary to make use of rate limiting in the Merchant, Channel, and Channel Management APIs. The rate limits defined allow ChannelEngine's customers and partners to perform all calls required to conduct their business in a timely manner.
It is recommended that you make use of dynamic throttling and consider the limits and intervals communicated in the response headers.
Request rate limits
To request the rate limit for each endpoint:
- Identify the API reference you need.
- Go to the API reference for your environment. If you do not know its URL, replace the term 'demo' in the URL with the first part of the URL of your ChannelEngine environment. E.g.: if your ChannelEngine environment is Sustainable Suits, its API reference URL should be https://sustainable-suits.channelengine.net/api/docs/#merchant-api for Merchant API.
- In the Authentication section, enter your API key.
- To find your Merchant API key, log in to ChannelEngine and click Settings, Merchant API keys.
- To find your Channel API key, open a given channel, and go to Setup, General, API key.
- Select the endpoint for which you would like to know the limit.
- Click Test request. If the selected endpoint requires parameters, make sure to provide them before clicking Send.
- In the Response headers section, check the values provided by the headers:
-
x-rate-limit-limit- the rate limit interval, in minutes. -
x-rate-limit-remaining- the number of remaining calls within the current interval. -
retry-after- the number of seconds to wait before making another call.
View rate limits
The table below lists the endpoints and their corresponding rate limits and intervals. E.g.: if a rate limit is 5 and its corresponding interval is 15, you can make 5 calls within 15 minutes.
Merchant API
| Endpoint | Rate limit | Interval |
POST /v2/cancellations |
25 | 15 min |
GET /v2/cancellations/merchant |
5 | 15 min |
GET /v2/channels |
10 | 15 min |
GET /v2/competitionprices/buyboxprices |
50 | 15 min |
GET /v2/channels/{channelId}/products |
15 | 15 min |
GET /v2/notifications |
15 | 15 min |
PUT /v2/offer |
10 | 15 min |
PUT /v2/offer/stock |
10 | 15 min |
GET /v2/offer/stock |
1000 | 1 min |
GET /v2/orders |
100 | 15 min |
GET /v2/orders/new |
15 | 15 min |
POST /v2/orders/acknowledge |
150 | 15 min |
PUT /v2/orders/comment |
250 | 15 min |
POST /v2/products |
15 | 15 min |
GET /v2/products |
15 | 15 min |
PATCH /v2/products |
15 | 15 min |
DELETE /v2/products/{merchantProductNo} |
100 | 15 min |
GET /v2/products/{merchantProductNo} |
100 | 15 min |
PATCH /v2/products/{merchantProductNo} |
100 | 15 min |
POST /v2/products/bulkdelete |
15 | 15 min |
GET /v2/productbundles |
30 | 15 min |
GET /v2/returns/merchant |
15 | 15 min |
POST /v2/returns/merchant |
100 | 15 min |
GET /v2/returns |
15 | 15 min |
PUT /v2/returns |
50 | 15 min |
GET /v2/returns/merchant/new |
3 | 15 min |
GET /v2/returns/merchant/{merchantOrderNo} |
30 | 15 min |
POST /v2/returns/merchant/acknowledge |
150 | 15 min |
GET /v2/settings |
3 | 15 min |
GET /v2/shipments/merchant |
5 | 15 min |
POST /v2/shipments |
900 | 15 min |
PUT /v2/shipments/{merchantShipmentNo} |
900 | 15 min |
POST /v2/carriers/{merchantOrderNo} |
15 | 15 min |
POST /v2/shipments/channelmethod |
250 | 15 min |
GET /v2/stocklocations |
5 | 15 min |
GET /v2/webhooks |
15 | 15 min |
POST /v2/webhooks |
15 | 15 min |
PUT /v2/webhooks |
15 | 15 min |
DELETE /v2/webhooks/{webhookName} |
15 | 15 min |
POST /v2/stocklocations |
32 | 15 min |
POST /v2/orders/{merchantOrderNo}/invoice |
50 | 1 min |
POST /v2/orders/{merchantOrderNo}/invoice-base64 |
50 | 1 min |
POST /v2/orders/mark-export-as-failed |
500 | 1 min |
POST /v2/listings-activation |
20 | 60 min |
POST /v2/product-attribute-group |
100 | 15 min |
DELETE /v2/product-attribute-group/{groupName} |
100 | 15 min |
PUT /v2/product-attribute-group/{groupName}/add |
15 | 15 min |
PUT /v2/product-attribute-group/{groupName}/remove |
15 | 15 min |
GET /v2/product-attribute-group |
5 | 15 min |
GET /v2/product-attribute-group/linked-channels |
15 | 15 min |
POST /v2/product-attribute-group/rename |
10 | 60 min |
POST /v2/reports/settlements |
10 | 10 min |
GET /v2/reports/{reportId}/status |
15 | 15 min |
GET /v2/reports/{reportId} |
15 | 15 min |
GET /v2/settlements |
15 | 15 min |
POST /v2/settlements/upload |
1 | 60 min |
GET /v2/custom-fields |
100 | 1 min |
DELETE /v2/custom-fields |
15 | 15 min |
POST /v2/purchase-orders/invoice |
5 | 60 min |
POST /v2/purchase-orders/invoice/bulk |
5 | 60 min |
GET /v2/purchase-orders/shipments/merchant |
10 | 15 min |
POST /v2/purchase-orders/shipments |
700 | 1 min |
PUT /v2/purchase-orders/shipments |
1,000 | 1 min |
GET /v2/purchase-orders |
3 | 1 min |
POST /v2/purchase-orders/lines/acknowledge |
15 | 60 min |
POST /v2/supportorder |
3 | 1 min |
POST /v2/testshippinglabel |
3 | 1 min |
POST /v2/testorderdocument |
3 | 1 min |
Channel API
| Endpoint | Rate limit | Interval |
GET /v2/cancellations |
15 | 15 min |
POST /v2/cancellations/channel |
5 | 15 min |
POST /v2/cancellations/channel/bulk |
5 | 15 min |
POST /v2/orders |
150 | 15 min |
POST /v2/products/data |
3 | 15 min |
GET /v2/products/data |
3 | 15 min |
POST /v2/products/offers |
15 | 15 min |
GET /v2/products/offers |
15 | 15 min |
GET /v2/products/data/full |
15 | 15 min |
GET /v2/returns/channel |
3 | 15 min |
POST /v2/returns/channel |
100 | 15 min |
GET /v2/shipments |
15 | 15 min |
Merchant and Channel API
| Endpoint | Rate limit | Interval |
GET /v2/orders/{merchantOrderNo}/invoice |
100 | 15 min |
GET /v2/orders/{merchantOrderNo}/packingslip |
100 | 15 min |
GET /v2/orders/{merchantShipmentNo/shippinglabel |
50 | 15 min |
GET /v2/excludedOrders |
30 | 1 min |
POST /v2/excludedOrders |
30 | 1 min |
DELETE /v2/excludedOrders |
30 | 1 min |
Comments
0 comments
Article is closed for comments.