API reference
API access is an enterprise feature. Contact sales to request an API key.
Base URL
The IDLeakCheck API is served from the same host as the application:
All endpoints are versioned under /v1. The production hostname will change when we move out of beta; subscribe to the status page for migration notices.
Authentication
Every request must include an Authorization header with your API key as a Bearer token:
API keys are minted in Settings → API keys on an enterprise workspace where the can_use_api feature flag is enabled. Keys are opaque 41-character strings; they have no prefix and do not embed environment information. Treat them as secrets — never commit them to source control or ship them in client-side bundles.
There is no separate sandbox or test-key environment. Use a development workspace for integration testing.
Endpoints
The following endpoints are publicly documented. Additional internal endpoints exist for the web application but are not part of the stable v1 API.
/v1/searchRun a search against the identifier index.
Request body: the selector fields (first name, last name, email, phone, etc.) you want to match.
Response: ranked candidate list (≤ 30). Each candidate carries a stable profile_id (format XXXX-XXXX) that can be persisted in your CRM and re-queried later.
Other endpoints are in development. Please contact sales if you need access to specific functionality not listed here.
Rate limits
Per-key rate limits are controlled at the workspace level via the api_monthly_cap and api_rate_per_minute feature flags. Defaults vary by plan. When the limit is exceeded, the API returns 429 Too Many Requests; the response body includes {"detail": {"code": "rate_limited", "message": "..."}}.
Errors
Errors return a JSON body of the shape {"detail": {"code": "<machine_code>", "message": "<human readable>"}}. Common codes:
unauthorized(401) — missing or invalid API key.forbidden(403) — your workspace doesn’t have access to the requested feature.rate_limited(429) — request rate exceeded.invalid_request(400) — malformed body or parameters.not_found(404) — resource does not exist.internal_error(500) — server-side problem; safe to retry with exponential backoff.
Client libraries
We don’t currently publish first-party SDKs. The API is straightforward enough that any HTTP client (curl, Python requests, Node fetch, Go net/http) works directly. Example:
Support
For API access requests or implementation questions, contact us. Bug reports go to support@idleakcheck.com.