Documentation/Error Reference

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"
}
401MISSING_KEY

API 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.

401INVALID_KEY_FORMAT

Invalid 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.

401INVALID_KEY

Invalid 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.

403FORBIDDEN

Insufficient 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.

403ORIGIN_RESTRICTED

Origin 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.

403KEY_LIMIT_REACHED

Maximum 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.

429RATE_LIMITED

Rate 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.

429QUOTA_EXCEEDED

Monthly 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.

400INVALID_JSON

Invalid request body

Cause: The request body is not valid JSON.

Fix: Ensure your request body is properly formatted JSON with `Content-Type: application/json`.

400INVALID_PERMISSION

Invalid permission

Cause: An unrecognized permission was specified when creating an API key.

Fix: Use valid permissions: `all`, `routing`, `geocoding`, or `tiles`.

502UPSTREAM_ERROR

Service 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.

500INTERNAL_ERROR

Internal 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.

401UNAUTHORIZED

Master key required

Cause: The admin endpoint requires a master key.

Fix: This endpoint is for internal administration only.

Still stuck? Include the X-Request-ID header from the response when contacting support.

📧 Contact Support