Skip to main content
All public data API errors use a JSON envelope with a machine-readable code and a request id.
details is optional and depends on the error.

Public data API errors

Parameter validation

Public Address endpoints validate required and constrained query parameters before running a search. Invalid requests return 400 INVALID_PARAMETERS. For example, calling autocomplete without q returns the standard error envelope with field-level details:
details uses field names as keys. Each value is an array of validation messages for that field. The exact message text can change with validation library updates, so clients should branch on error.code, error.status, and the presence of a field key rather than matching message strings.

Private or forward-contract errors

These codes can appear on private console/account routes or are reserved for forward-compatible contracts. They are listed here so integrations can classify them if encountered, but they are not all public data API outcomes.

Retry guidance

  • Retry RATE_LIMITED after Retry-After when that header is present.
  • Do not automatically retry QUOTA_EXCEEDED; direct the user to account billing or support.
  • Retry SERVICE_UNAVAILABLE with exponential backoff and jitter.
  • Do not retry MISSING_API_KEY, INVALID_API_KEY, INVALID_PARAMETERS, or PRODUCT_NOT_ALLOWED without changing credentials, parameters, or account access.
  • Do not retry NOT_FOUND for the same resource id unless upstream data has changed or the id came from stale client state.
  • Treat INTERNAL_ERROR as retryable only with bounded retries.

Request-id tracing

Every response includes X-Request-Id. Error responses include the same value as error.request_id. When contacting support, include:
  • the request id;
  • endpoint path and method;
  • timestamp;
  • account or organization name;
  • sanitized client context.
Do not send API keys, request bodies containing sensitive user data, or raw customer data in support messages.