Rate Limiting
TrueEntropy enforces rate limits per API key to ensure fair usage and system stability. Limits are based on your subscription tier and measured per minute.
Rate Limits by Tier
| Tier | Requests/Min | Requests/Month | Burst (150%) |
|---|---|---|---|
| Free | 10 | 1,000 | 15 |
| Developer | 100 | 50,000 | 150 |
| Pro | 500 | 500,000 | 750 |
| Business | 2,000 | 5,000,000 | 3,000 |
| Enterprise | Custom | Unlimited | Custom |
Rate Limit Headers
Every API response includes rate limit information in the headers:
| Header | Description | Example |
|---|---|---|
| X-RateLimit-Limit | Maximum requests per minute for your tier | 500 |
| X-RateLimit-Remaining | Requests remaining in current window | 47 |
| X-RateLimit-Reset | Unix timestamp when the window resets | 1741536180 |
| Retry-After | Seconds to wait (only on 429 responses) | 12 |
Burst Allowance
Each tier includes a 150% burst allowance to handle traffic spikes. If your Pro plan allows 500 req/min, you can briefly burst to 750 req/min. Sustained usage above your base limit will trigger rate limiting.
429 Response
429 Too Many Requests
{
"error": {
"code": "rate_limited",
"message": "Rate limit exceeded. Retry after 12 seconds.",
"retry_after": 12,
"limit": 500,
"remaining": 0,
"reset": 1741536180
}
}
Best Practices
- Use the batch endpoint -
POST /v1/batchcounts as 1 request regardless of value count - Implement exponential backoff - On 429, wait
retry_afterseconds before retrying - Cache when appropriate - If you need random values infrequently, fetch and cache a batch
- Monitor via dashboard - Set up usage alerts at 80% and 90% thresholds
- Use SDKs - All official SDKs handle rate limiting automatically with exponential backoff
Monthly Quota Exceeded
When your monthly allocation is exhausted, requests continue to work but are billed at the overage rate of £0.004 per 1,000 requests. Set a hard spending limit in your dashboard billing settings to prevent unexpected charges.