When a call fails, the service returns the following error structure, where request_id matches the x-request-id response header:
{
"type": "error",
"error": {
"code": "405",
"message": "Method not allowed"
},
"request_id": "82a2ff07-d30f-9905-b9d3-fa2d1c122e01"
}
Common error codes
| code | HTTP status | Description |
|---|
| 405 | 405 | Method not allowed |
| 400 | 400 | Parameter validation failed; message gives the reason (for example, an invalid parameter type) |
| InvalidApiKey | 401 | API Key missing or invalid (gateway layer) |
| Endpoint.AccessDenied | 403 | Workspace does not exist or is not accessible (gateway layer) |
| BadRequest.IllegalEndpoint | 400 | Workspace route is invalid (gateway layer) |
Authentication and workspace-routing errors are returned directly by the gateway in a flat {"request_id", "code", "message"} structure; business errors are returned by the service, with the error code in error.code.
Service-level error codes
| Error Code | HTTP Status | Description | Suggestion |
|---|
| 12000093 | 503 | Cloud security service error | The affected capability is temporarily unavailable, retry later |
| 12000094 | 503 | Alert query failed | Retry later |
When troubleshooting, use request_id to locate the specific request. After resolving errors, continue with the endpoint documentation in the Overview.