Understand API rate limits, usage tracking, and best practices for efficient API consumption.
All API requests are subject to rate limiting to ensure fair usage and system stability. Rate limits are enforced per API key and are configurable when creating API keys.
Every API response includes rate limit information in the headers:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 87
X-RateLimit-Reset: 1640995200
Maximum requests allowed in the time window
Number of requests remaining in current window
Unix timestamp when the window resets
When rate limits are exceeded, the API returns a 429 Too Many Requests
status:
{
"error": "Rate limit exceeded",
"message": "Too many requests. Try again later."
}
Always check rate limit headers and implement exponential backoff when approaching limits.
You can configure custom rate limits when creating API keys:
POST /api/v1/api-keys
{
"name": "High Volume Key",
"permissions": ["qrcode:create", "qrcode:read"],
"rateLimit": {
"maxRequests": 500,
"windowMs": 900000
}
}
Parameter | Description | Default |
---|---|---|
maxRequests | Maximum requests allowed in window | 100 |
windowMs | Time window in milliseconds | 900000 (15 min) |
All API requests are logged for usage analysis and billing purposes:
Usage data is retained for 90 days and can be accessed via the usage tracking endpoints.
Track your API usage with the usage endpoints:
GET /api/v1/api-usage?period=day
Returns aggregated usage statistics for the specified period.
GET /api/v1/api-usage/details?limit=100
Returns detailed request logs with pagination.
Need higher rate limits? Contact support or upgrade your plan:
For enterprise usage requiring higher limits, please contact our support team. We can configure custom rate limits based on your specific needs.