Identity lookup API reference

Every lookup, whether it's an email, a phone number, or a username, goes through the same endpoint, the same auth, and comes back in the same shape. No per-platform quirks leak into the contract.

Quickstart

Create a key in the dashboard, then send a query. New accounts get 15 free lookups, no card required.

POST /v2/lookup?wait=true
curl -X POST "https://api.digifootprint.dev/v2/lookup?wait=true" \
  -H "Authorization: Bearer dfp_your_key" \
  -H "Content-Type: application/json" \
  -d '{"query": "someone@example.com"}'

What you get back

A per-platform verdict, plus breach history and public web mentions for email queries. The most important thing to understand about the response is what it does not contain: a platform we could not get a confident answer for is left out entirely, rather than reported as “not registered”. See running a lookup.

Choosing a depth

Every lookup runs at one of three depths. Standard is the default and needs no flag; ?instant=true returns a latency-bounded answer in around 900ms from a high-signal subset; ?deep=true sweeps the full platform set including the long tail. See running a lookup for the parameters and instant vs deep lookups for when each one is the right trade.

Checking specific platforms

A lookup sweeps the whole band by default. Send platforms to name the ones you want instead - a single-platform lookup answers in tens of milliseconds rather than seconds. GET /v2/platforms lists every slug you can name and which inputs reach it. See running a lookup.

Machine-readable spec

The OpenAPI spec and a ready-to-run Postman collection are both generated from the API itself, so they never drift from what the server actually does. You can also browse the API in Swagger UI and send a request without leaving the page.