Rate limits
Limits are applied per API key.| API Endpoints | Limit | Default | Resets |
|---|---|---|---|
| General Availability | Requests per minute | 60 | Rolling 60-second window |
| Requests per day | 10,000 | Midnight UTC | |
| Research Preview | Requests per second | 5 | Rolling window |
429 Too Many Requests. Use exponential backoff before retrying:
Track usage with response headers
Every response includes rate limit headers:| Header | Description |
|---|---|
X-RateLimit-Limit | Max requests allowed in the current window |
X-RateLimit-Remaining | Requests remaining in the current window |
X-RateLimit-Reset | Unix timestamp when the window resets |
X-RateLimit-Reset before retrying to avoid sending requests that will immediately fail.
Error codes
| Status | Cause | Fix |
|---|---|---|
400 Bad Request | Malformed request body or missing required parameters | Check required fields and data types |
401 Unauthorized | Missing or invalid API key | Verify the x-key header is present and the key is correct |
403 Forbidden | Key is valid but not authorized for this endpoint | Check your account tier and key permissions |
404 Not Found | Endpoint or resource doesn’t exist | Check the URL and endpoint version (/v1/ vs /v2/) |
422 Validation Error | Request parsed correctly but failed field validation | Fix the fields listed in the detail array (see below) |
429 Too Many Requests | Rate limit exceeded | Wait for the window to reset; use exponential backoff |
500 Server Error | Unexpected error on our end | Retry with backoff; contact support@revenuebase.ai if it persists |
Parse a 422 Validation Error
Validation errors return adetail array identifying each failing field:
loc identifies where the problem is (e.g. ["body", "email"]), and msg tells you what’s wrong. Fix each entry in the array and retry.
