Business Insights API Rate Limits
The Business Insights API endpoints are subjected to different rate limits based on the endpoint tier:
Rate Limit Tiers
| Tier | Requests/Second | Requests/Hour | Applies To |
|---|---|---|---|
| Heavy | 1 | 400 | Custom Applications: Create, Get, Update, Delete; Report Configurations: Create, Get, Update, Delete |
| Light | 2 | 1,000 | Reports: List All Reports, Download a Report |
Rate Limit Error Response
When a rate limit is exceeded, the API returns a 429 status code with the following response:
{
"errorCode": "RATE_LIMIT_EXCEEDED",
"errorDetails": "Rate limit exceeded. Maximum 2 requests per second and 1000 requests per hour is allowed.",
"timestamp": 1772573283919
}
All rate limits start as soon as the first call is executed. Calls can occur more than once per second, but no more than the limits for the API type.
Clients who are subject to rate limiting need to back off exponentially to proceed further.
Best Practices
-
Implement Exponential Backoff: When receiving a 429 response, wait for the suggested retry period and use exponential backoff for subsequent retries.
-
Monitor Usage: Track your API usage to stay within the limits. The Light tier allows burst requests up to 2 per second, while the Heavy tier is more restrictive at 1 per second.
-
Batch Operations: For Custom Applications and Report Configurations, plan your operations efficiently to minimize API calls.
-
Cache Results: Cache report listings and configuration data when possible to reduce redundant API calls.