REST API · v1

Errors and limits

Non-2xx responses use the same metadata envelope as successful requests. Log the error code and X-Request-ID response header when diagnosing failures.

Error shape

json
{
  "success": false,
  "error": {
    "code": "INVALID_EMAIL",
    "message": "Invalid email format"
  },
  "meta": {
    "requestId": "req_example",
    "duration": 2,
    "version": "v1"
  }
}

Common codes

HTTPCodeMeaning
400INVALID_JSONThe body is not valid JSON.
400INVALID_EMAILThe supplied email format is invalid.
400MISSING_EMAILSThe bulk emails array is missing.
400TOO_MANY_EMAILSA bulk request contains more than 1,000 values.
400MISSING_DOMAINFinder received neither domain nor companyName.
401UNAUTHORIZEDThe bearer token is missing or invalid.
429RATE_LIMITEDThe current key or IP exceeded its request window.
502BACKEND_ERRORThe Reacher verification service returned an error.
500INTERNAL_ERRORAn unexpected server error occurred.

Current limits

  • 100 requests per 60-second window for non-master keys or anonymous development traffic.
  • The configured master key bypasses the in-memory rate limiter.
  • Bulk verification accepts at most 1,000 input values per synchronous request.
  • Rate-limit state is process-local in this release and must be replaced before horizontal scaling.