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.
It is recommended to monitor the usage and follow the specified rate limits. The API will respond with an HTTP status error code 429 when the limit is exceeded.
Learn more about common Storyblok Content Delivery API errors.
To ensure compliance with the 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.
The Storyblok JavaScript Client provides automatic API throttling and cache management, ensuring compliance with the rate limits of the Content Delivery API.