Errors
The Arcane Analytics API uses conventional HTTP status codes to indicate the success or failure of an API request. In general: Codes in the 2xx range indicate success. Codes in the 4xx range indicate an error that failed given the information provided (e.g., a required parameter was omitted, a charge failed, etc.). Codes in the 5xx range indicate an error with our servers (these are rare).
HTTP Status Code Summary
| Status Code | Meaning | Description |
|---|---|---|
| 200 - OK | Everything worked as expected. | The request was successful, and the response contains the requested data. |
| 400 - Bad Request | The request was unacceptable, often due to missing a required parameter. | Check the error field in the response body for details. |
| 401 - Unauthorized | No valid API key provided. | Ensure your API key is included in the X-API-Key header and is correct. |
| 403 - Forbidden | The API key does not have permissions to perform the request. | The key may have been revoked or does not have access to this resource. |
| 404 - Not Found | The requested resource doesn't exist. | The requested URL or resource ID could not be found. |
| 429 - Too Many Requests | You're requesting too much! | You have hit the rate limit for this endpoint. Please slow down your requests. |
| 500, 502, 503, 504 - Server Errors | Something went wrong on our end. | We have been notified of the issue. Please try again later. |
API Error Codes
In addition to standard HTTP status codes, our API provides more specific error codes in the response body to help you debug integration issues.
| Error Code | HTTP Status | Description |
|---|---|---|
| API_KEY_INVALID | 401 | The provided API key is invalid or has been revoked. |
| INVALID_SYMBOL | 400 | The stock symbol provided is not supported or does not exist. |
| MISSING_PARAMETER | 400 | A required parameter for the endpoint is missing. |
| BACKEND_UNAVAILABLE | 502 | The market data backend is temporarily unavailable. Please try again later. |
| INTERNAL_ERROR | 500 | An unexpected error occurred on our servers. |