Errors

IdenticAPI returns structured error responses with a machine-readable code, a human-readable message, and a request ID for support and debugging.

Error response format

{
  "error": {
    "code": "rate_limit_exceeded",
    "message": "Rate limit exceeded. Please retry later.",
    "request_id": "req_abc123"
  }
}

Every error response includes an X-Request-Id header matching error.request_id. Include this ID when contacting support.

Error codes

CodeHTTP statusDescription
invalid_api_key401The API key is missing, malformed, or does not match any active key.
revoked_api_key401The API key has been revoked and can no longer be used.
invalid_request400The request body is invalid JSON or fails schema validation.
payload_too_large400The request payload exceeds the maximum allowed size.
rate_limit_exceeded429Too many requests in the current rate-limit window. Retry after a short delay.
quota_exceeded429Monthly usage quota for your plan has been exhausted.
feature_unavailable403The requested feature is not available on your current plan.
provider_processing_failure502An upstream processing provider failed. Retry the request.
internal_error500An unexpected server error occurred.
unauthorized401Authentication is required but was not provided.
not_found404The requested resource or endpoint was not found.

Common scenarios

Authentication failures (401)

Send your API key in the Authorization: Bearer YOUR_API_KEY header. Keys must use the idapi_test_ or idapi_live_ prefix. See Authentication for details.

Validation errors (400)

A invalid_request error usually means a required field is missing, a string exceeds the maximum length (32,000 characters for text fields), or the JSON body is malformed.

Rate limits and quotas (429)

  • rate_limit_exceeded — per-minute request limit for your plan. See Rate Limits.
  • quota_exceeded — monthly usage unit limit reached. See Usage & Billing.

Retry guidance

  • 429 (rate limit / quota) — wait and retry with exponential backoff for rate limits; upgrade your plan for quota exhaustion.
  • 502 (provider failure) — safe to retry; the detector may fall back to pattern matching if an AI provider is unavailable.
  • 500 (internal error) — retry once; contact support with the request ID if the error persists.