Rate Limits & Quotas
AudioSpliter enforces rate limits and usage quotas to ensure fair usage and platform stability.
Rate Limits
Rate limits are applied per API key:
| Plan | Requests/min | Concurrent Jobs |
|---|---|---|
| Free | 10 | 2 |
| Starter | 60 | 5 |
| Pro | 300 | 20 |
| Enterprise | Custom | Custom |
Rate Limit Headers
Every API response includes rate limit headers:
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 58
X-RateLimit-Reset: 1711700460
| Header | Description |
|---|---|
X-RateLimit-Limit | Maximum requests per window |
X-RateLimit-Remaining | Requests remaining in current window |
X-RateLimit-Reset | Unix timestamp when the window resets |
Exceeding Rate Limits
When you exceed the rate limit, the API returns 429 Too Many Requests:
{
"error": {
"code": "RATE_LIMITED",
"message": "Rate limit exceeded. Retry after 32 seconds.",
"status": 429,
"retryAfter": 32
}
}
The Retry-After header is also set.
Monthly Quotas
Each plan has a monthly processing quota measured in minutes of audio processed:
| Plan | Monthly Minutes | Overage Rate |
|---|---|---|
| Free | 60 | Not available |
| Starter | 500 | $0.02/min |
| Pro | 5,000 | $0.01/min |
| Enterprise | Custom | Custom |
Checking Your Usage
Query the Get Usage endpoint to check current consumption:
curl https://api.audiospliter.com/api/v1/billing/usage \
-H "Authorization: Bearer your_jwt_token"
Best Practices
- Implement exponential backoff when you receive
429responses. - Cache job results instead of polling repeatedly.
- Use webhooks instead of polling to reduce API calls.
- Monitor usage in the dashboard to avoid hitting quotas unexpectedly.