Resolve identities in bulk

Resolve up to 1000 hashed emails (HEMs), plain email addresses, or LinkedIn profile URLs in one call. Each key is resolved exactly as GET /api/v1/lookup would resolve it: SHA-256 (64 hex) or MD5 (32 hex) hems, algorithm inferred from the digest length or set per key with hem_type; plain emails are normalized and hashed for you. Keys may mix algorithms in one request.

Results are in input order, one entry per key. record is the identity record, or null when the key did not resolve, when filter rejected the record, or when that key could not be processed. A key that could not be processed (malformed hem, hem_type that does not match the hem, an algorithm with no lookup available, a linkedin_url that is not a profile URL) carries an error string on its entry; the request itself still succeeds and partial is true. Only an outage of the lookup backends fails the whole request.

Filtering and projection. Optional filter and select (in the body or as query params) apply per record with the same grammar as GET /api/v1/lookup. A record the filter rejects is returned as null and is not billed.

Billing. Metered on egress as contact_record: one per entry that returns a record. Misses, filtered-out records, and per-key errors bill nothing.

Rate limit. Two requests per second per organization on this route, in addition to the per-client limit. At 1000 keys per request that is 2000 lookups per second; raise it with your Delivr contact if you need more.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Query Params
string

Same as the filter body field; the body value wins when both are set.

string

Same as the select body field; the body value wins when both are set.

Body Params
keys
array of objects
required
length between 1 and 1000

Keys to resolve. Each carries exactly one of hem, email, or linkedin_url.

keys*
string

Hashed email, SHA-256 (64 hex) or MD5 (32 hex).

string

Plain-text email, normalized and hashed for you.

string

LinkedIn personal profile URL, any pasted shape; reduced to the vanity slug. A non-profile URL is a per-key error.

string
enum

Optional; validated against hem when set.

Allowed:
string

Predicate applied to each resolved record, same grammar as GET /api/v1/lookup. A non-matching record is returned as null and not billed.

string

Comma-separated field list to project on each record.

Responses

400

Empty keys, more than 1000 keys, or a body that is not a JSON object with a keys array. Per-key problems do not produce a 400; they appear as error on that entry.

401

Missing or invalid authentication.

429

Rate limit exceeded.

501

Batch lookup is not available for test keys (X-Delivr-Environment: test).

502

The lookup backends are unavailable.

504

The lookup backends did not answer before the request deadline.

Language
Credentials
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json