Most E-Commerce Platforms have rate limits for their APIs. As you integrate with Violet you will need to be aware of these as they will affect your system. When you make a request to Violet, often times Violet will make a background call to an E-Commerce platform to process your request, this is especially true during the checkout flow.

In the event that Violet receives a 429 Too Many Requests HTTP Status code from an E-Commerce Platform, you will receive the same status code in Violet’s response. We recommend that you handle this status code at a top level since it is a possibility for most endpoints.

It is also important to note that because each merchant has their own store in any one of our supported platforms, rate limits are separate on a per-merchant basis. This means that given randomized traffic to your site or app, you are unlikely to hit any one merchant’s rate limit unless they are extremely popular or are having a sale.

However, automated calls to the Violet API, say for example a batch process that periodically deletes all abandoned carts, will very easily surpass a Merchant’s rate limits. Hence Violet’s recommendation to have a top level handler for 429’s that allows for backoff retries or possibly re-queueing.

Quick Checkout

Since rate limits are most likely during checkout, we have built capabilities to allow you to minimize the chance of hitting said limits when in high volume scenarios, such as a flash sale. We recommend using quick checkout as much as possible in your system. However, it is not a binary choice, and we encourage you to find the right balance for your implementation. See Quick Checkout for more details.

Shopify

Shopify tends to have the strictest rate limits against their REST API, you can read about their rate limits and algorithm here. Note the REST API is the one applicable in our case.