Skip to main content
POST

Authorizations

Authorization
string
header
required

API key passed as a Bearer token in the Authorization header.

Headers

x-api-version
enum<string>
default:2025-11-01
required

API version to use. This endpoint currently requires 2025-11-01.

Available options:
2025-11-01
Example:

"2025-11-01"

Body

application/json

Person identifier (profile URL or business email) and optional contact-field selection.

Request body for /person/contact/enrich. Submit exactly one identifier type per request — professional_network_profile_urls or business_emails — and optionally restrict which contact tiers are enriched.

professional_network_profile_urls
string[]
required

Array of professional-network profile URLs to enrich (max 25).

Example:
business_emails
string<email>[]

Array of business emails to look up (max 25).

Example:
fields
string[]

Contact tiers to enrich. Only contact fields are accepted: contact.business_emails, contact.personal_emails, contact.phone_numbers, contact.phone_numbers_info, and contact.websites. contact.phone_numbers_info belongs to the phone tier, so either phone field bills the tier once. contact.phone_numbers returns both phone lists. contact.phone_numbers_info, or one of its sub-fields, returns only phone_numbers_info. When omitted, the three contact tiers (business emails, personal emails, phone numbers) are enriched; contact.websites must be requested explicitly. Requesting any non-contact field returns a 400 error.

Example:
verified
boolean
default:false

Return only business emails that pass a deliverability check at request time. Cached addresses marked deliverable or unknown are re-checked before they are served, and only deliverable and catch_all entries are returned. When no address survives, contact.business_emails is empty and contact.business_emails_message is set. Only affects contact.business_emails. Adds 0.5 credits per matched person who receives at least one verified business email.

Example:

true

Response

Enriched person contact data. Returns a top-level array with one entry per submitted identifier; unmatched identifiers return an empty matches array.

matched_on
string

The specific input value this entry corresponds to (a profile URL or a business email).

Example:

"https://www.linkedin.com/in/dvdhsu/"

match_type
enum<string>

Which identifier type the input was matched on.

Available options:
professional_network_profile_url,
business_email
match_status
enum<string>

Outcome for this identifier. matched: at least one match. not_found: no profile in Crustdata yet; the identifier is queued for enrichment, so retry later or use live enrich. redacted: the person asked Crustdata to remove their data and the request was approved. A redacted entry always has empty matches, is never billed, and does not change on retry or with live enrich.

Available options:
matched,
not_found,
redacted
matches
object[]

Matching contact records. Empty when no contact data was found for the identifier.

Example: