Rate Limit
The Storyblok Content Delivery API is subject to rate limits to ensure fair usage and optimal performance. The following rate limits apply:
Type of request | Rate limit |
---|---|
Cached requests from the CDN | 1000 per second |
Single content entries | 50 per second |
Listings with less or equal to 25 entries | 50 per second |
Listings with 25 to 50 entries | 15 per second |
Listings with 50 to 75 entries | 10 per second |
Listings with 75 to 100 entries | 6 per second |
The rate limit per second will be proportionately reduced when opting for more than 25 entries per request via the pagination parameters.
To ensure compliance with the rate limits of the Content Delivery API and maintain a seamless experience, consider implementing the following practices:
- API Throttling and Rate Limit Handling: Consider implementing a comprehensive rate limit handling mechanism, including API throttling, if an HTTP status error code 429 is received. Throttling involves temporarily slowing down the API requests by introducing intermediate delays. This approach helps prevent further rate limit breaches and allows the application to recover gracefully.
- Cached Requests: Utilize cached requests whenever applicable. Cached requests enjoy higher rate limits compared to uncached requests. By incorporating cached content, the frequency of uncached requests can be reduced.
- Retrying Requests: Implement a retry strategy for failed requests, particularly when encountering rate limit errors. A sensible retry mechanism, along with exponential backoff, can be effective in resuming API requests without overwhelming the rate limits.
- Monitoring and Alerting: Set up robust monitoring and alerting systems to keep track of the API usage and detect potential rate limit breaches. Proactive monitoring allows for addressing issues promptly.
Related resources
Section titled “Related resources”Get in touch with the Storyblok community