Error Reference
Every error response includes a machine-readable code field. Use this page to diagnose and fix issues.
Error Response Format
{
"error": "Human-readable error message",
"code": "MACHINE_READABLE_CODE",
"details": "Actionable hint to fix the issue"
}MISSING_KEYAPI key required
Cause: No API key was provided in the request.
Fix: Add your key via `X-API-Key` header, `Authorization: Bearer` header, or `?api_key=` query parameter.
INVALID_KEY_FORMATInvalid API key format
Cause: The key doesn't match the expected `gr_` prefix and length.
Fix: Ensure your key starts with `gr_` followed by 48 hex characters. Get a valid key from the dashboard.
INVALID_KEYInvalid or revoked API key
Cause: The API key doesn't exist or has been deactivated.
Fix: Check that the key is correct and active. Generate a new key from the dashboard if needed.
FORBIDDENInsufficient permissions
Cause: Your API key doesn't have the required permission for this endpoint.
Fix: Create a new key with the needed permission (e.g., `routing`, `geocoding`) or use an `all` access key.
ORIGIN_RESTRICTEDOrigin not allowed
Cause: The request's origin/referer doesn't match the key's allowed origins.
Fix: Update your key's allowed origins in the dashboard or remove origin restrictions.
KEY_LIMIT_REACHEDMaximum keys reached
Cause: You've reached the maximum of 5 API keys per account.
Fix: Revoke unused keys to free up a slot, then create a new one.
RATE_LIMITEDRate limit exceeded
Cause: Too many requests in the current time window.
Fix: Wait for the `Retry-After` header duration. Consider upgrading your plan for higher rate limits.
QUOTA_EXCEEDEDMonthly quota exceeded
Cause: Your monthly request quota has been exhausted.
Fix: Upgrade your plan for more requests. Quota resets on the 1st of each month. Check `X-Quota-Reset` header.
INVALID_JSONInvalid request body
Cause: The request body is not valid JSON.
Fix: Ensure your request body is properly formatted JSON with `Content-Type: application/json`.
INVALID_PERMISSIONInvalid permission
Cause: An unrecognized permission was specified when creating an API key.
Fix: Use valid permissions: `all`, `routing`, `geocoding`, or `tiles`.
UPSTREAM_ERRORService unavailable
Cause: The upstream routing or geocoding engine is temporarily unreachable.
Fix: Retry the request after a few seconds. Check `status.georavity.com` for outage information.
INTERNAL_ERRORInternal server error
Cause: An unexpected error occurred on the server.
Fix: Retry the request. If the issue persists, contact support with the `X-Request-ID` header value.
Still stuck? Include the X-Request-ID header from the response when contacting support.