Skip to main content
The Chariow API implements rate limiting to ensure fair usage and maintain service quality for all users.

Default Limits

Each API key has its own counters, so one integration cannot slow down another behind the same IP address. Checkout has its own counter so that an integration syncing sales or products can never use up the key’s budget and stop buyers from paying. A key can therefore send up to 100 checkout requests and 100 other requests in the same minute. Every request counts towards the limit, including requests rejected with 401 or 403.
The MCP server has its own limits: 60 requests per minute per MCP connection. See MCP tools.

Rate Limit Headers

Every rate-limited response includes headers indicating your current status:
When you exceed the limit, the 429 response adds two more headers:

Rate Limit Exceeded

When you exceed the rate limit, you’ll receive a 429 Too Many Requests response:
Wait for the number of seconds given in the Retry-After header before sending the next request.

Handling Rate Limits

Exponential Backoff

Implement exponential backoff to gracefully handle rate limits, and never retry before Retry-After has elapsed:

Request Batching

Batch multiple operations to reduce request count:

Caching

Cache responses to avoid unnecessary requests:

Increasing Limits

If you need higher rate limits:
  1. Optimise Usage - Review your implementation: pagination, caching and webhooks remove most polling
  2. Contact Support - Explain your use case and expected volume
Contact support@chariow.com to discuss higher rate limits for your use case.

Best Practices

Track rate limit headers to understand your usage patterns and adjust accordingly.
Instead of polling for changes, use webhooks to receive real-time notifications.
Queue requests and process them at a controlled rate to avoid bursts.
Cache data that doesn’t change frequently to reduce API calls.