People Data
The people data API for teams shipping to production.
Structured B2B profiles with job title, work history, education, skills, and more. Verified, matched with a strict no-false-positives policy so your product does not inherit our uncertainty.
- profiles collected, 450M highly verified
- 1B+
- identity match rate
- 70%+
- verified work-email accuracy
- 99.3%
- profile refreshes per month
- 200M
Data points
What a person record contains
One request returns all eleven categories in the same JSON shape, so your integration never has to branch on which fields showed up. Anything we could not verify comes back null rather than a filled-in guess, and your product picks the fields it actually needs.
Identity
Full name, primary identifiers, and canonical profile references. The single anchor every other field hangs off.
Job & Company
Current title, seniority, department, and the company the person works at right now, with firmographic context attached.
Work Experience
Full career history in chronological order, including role, company, dates, and tenure per position.
Location
Current city, region, country, and time zone where available, plus prior locations attached to previous roles.
Email Addresses
Verified work emails with per-address validation status and a confidence score, not just a syntactic check.
Phone Numbers
Direct and switchboard numbers where sourced legitimately, each with validation status.
Education
Degrees, institutions, fields of study, and dates, so you can filter by academic background or credential.
Skills
Self-declared and inferred skills attached to the profile, useful for talent search and audience segmentation.
Languages
Spoken and written languages with proficiency where available.
Professional Profile
Bio, summary, and long-form professional context taken from public work-oriented sources.
Network Signals
Recent activity, role changes, and other movement signals that flag when a profile is due for a re-fetch.
{
"success": true,
"data": {
"id": "prs_01jbd5vewyenebxgaz869ffe5t",
"publicId": "satyanadella",
"linkedinUrl": "https://www.linkedin.com/in/satyanadella",
"firstName": "Satya",
"lastName": "Nadella",
"headline": "Chairman and CEO at Microsoft",
"location": {
"city": "Redmond",
"state": "Washington",
"country": "United States",
"countryCode": "US"
},
"currentPosition": {
"title": "Chairman and Chief Executive Officer",
"companyName": "Microsoft",
"companyUrl": "https://www.linkedin.com/company/microsoft",
"startEndDate": {
"start": "2014-02-01T00:00:00.000Z",
"end": null
}
},
"experience": [ … 8 roles ],
"education": [ … 3 schools ],
"skills": ["Cloud", "Leadership", …],
"followersCount": 11200000,
"isOpenToWork": false
},
"error": null,
"metadata": {
"requestId": "c2b7a1d0-5e4f-4a3b-8c9d-0e1f2a3b4c5d",
"executionTimeMs": 2340,
"updatedAt": "2026-08-30T14:02:11.000Z"
},
"quotas": { "creditsConsumed": 1, … }
}How to access it
Four ways to query it
Four endpoints, one response shape. Which one you reach for depends on the identifier you already hold, whether that is a work email, a name plus company, a social URL, or a set of filters describing the person you have not met yet.
Person Enrichment API
Match on email, name plus company, or a social URL. The full profile comes back in one call, with the null-return safeguard on every match so your CRM never inherits a wrong record.
People Search API
Filter by title, seniority, location, industry, and company size to build candidate lists or target audiences at scale, no prospecting seat licenses required.
Person Social Data API
Pass a social URL and get the structured profile behind it, useful when your product already captures the URL upstream and needs the rest of the record.
Email Finder API
Verified work email through a multi-provider waterfall, with per-address validation status and a confidence score returned with every result.
Quality
What runs on every record before we return it
Before a profile leaves our system, it clears identity resolution against a confidence threshold, is compared to its previous version for consistency, and passes bot and fake profile filters. Emails and phone numbers run through real-time validation on the same request, so the response you receive has already survived every check we apply.
- Freshness
- Every profile carries a last-updated timestamp in its payload. Your integration can read that field and decide, per record, whether the cached version is fresh enough or a live re-fetch is worth the extra latency.
- Resolution
- Choose cache or live retrieval on a per-request basis. The endpoint stays the same, and the response shape stays the same. You are only changing whether we return the last stored version or resolve the person again in real time.
- Filtering
- Duplicate records, dormant profiles, and known bot patterns are stripped upstream. You receive the current, active version of the person rather than a merge candidate you have to sort out later in your own pipeline.
- Billing
- If no verified match comes back, no credit is charged. The null-return safeguard runs at both the data layer and the invoice layer, so a strict precision setting does not carry a hidden cost.
Use cases
Where the people data API earns its keep
Four integration patterns that show up on almost every call with a data team building on the API. For each one, the endpoint they reach for, the fields they lean on, and what changes inside the product on the other side.
Convert a signup into a scored, contactable lead before your first outreach.
When a prospect drops a work email or a social URL into your product, one API call resolves them into a full profile your scoring logic can read. Only when the lead clears your threshold do you spend a credit on a verified contact detail, so verification cost tracks intent rather than volume.
- Job and company as the primary scoring inputs
- Email Addresses with per-address confidence
- Network Signals to detect buying committee membership
Build talent pipelines on structured career data your matching model can actually rank.
The Search endpoint returns a ranked list from the filters your product already exposes to recruiters. A follow-up Enrichment call pulls the full career record for anyone shortlisted, so your matching model reasons over real fields rather than parsed resume text.
Structured pipelines your model can score reliably.
- Work Experience tenure per role
- Skills and Languages exposed as filtered facets in your UI
- Education for credential-based matching
Push clean, current contact data into your CRM without a nightly batch job.
Subscribe to webhooks and your CRM receives an enrichment payload the moment a record needs it or a person changes roles. Your merge logic handles the incoming data against your own deduplication rules, and the pipeline stays current without anyone opening a spreadsheet after hours.
A pipeline that runs itself while your ops team sleeps.
- Identity fields to merge on a stable person's ID
- Job and company to fill the highest-value gaps
- Last-updated timestamp as your re-fetch retrigger
Ground your agent stack in verified person context before the model reasons over it.
Serve the API through an MCP endpoint and any assistant in your stack can request a person record on demand. Every response carries a confidence score, so your agent branches on precision instead of treating every returned answer as equally trustworthy.
Confidence-gated reasoning that stops before it hallucinates.
- Professional Profile as primary context payload
- Confidence score to match agents behaviour
- null return so the model knows when to stop reasoning
Reviews
Trusted by data-driven teams
“Our data team built an internal ops product with Reverse Contact. It improved identity resolution across systems and provided a reliable people & company layer.”
Ethan CarterData Team, Gitpod“We use Reverse Contact as a trusted data provider for our product inside our RevOps workflows. It helps our customers unify CRM records and enrich missing context...”
David BrombergCEO, Lantern“Reverse Contact provided a reliable identity resolution layer for our product. The API is straightforward, outputs are consistent, and match quality is strong.”
Lucas PerretHead of Product, lemlistCompliance
Compliant by design. Defensible on request.
Reverse Contact is built on B2B open-source intelligence, with GDPR- and CCPA-aligned data practices, clear sourcing principles, and full respect for data subject rights. Your legal team can review the full posture through the Trust Center.
- GDPR
- CCPA
FAQ
Frequently Asked Questions
Can't find the answers to your questions? Reach out to us by clicking here.
What counts as B2B people data?
Structured professional information about individuals in a work context: name, current title, company, work history, education, skills, seniority, industry, and location. Reverse Contact returns all of these through the people data API in a single verified profile.
Which fields does your people data API return?
Identity, professional history, education, skills, languages, location, industry, seniority, social signals, and metadata like last-updated timestamps and confidence scores. Full schema in the Documentation.
How do you handle uncertain matches?
We return null instead of a best guess. Every response includes a confidence score so your product decides what to do with borderline matches. You can also raise the precision threshold in your request.
How fresh is the data?
Retrieve profiles live on demand for maximum freshness, or pull from our database for lower latency. Every response includes a last-updated timestamp.
How is this different from a reverse email lookup tool?
Lookup tools return a name and maybe a title. Our people data API returns a full structured B2B profile per person: identity, professional history, education, skills, location, and more, built to be embedded in products and workflows.
Is Reverse Contact compliant with GDPR and CCPA?
Yes. Compliance is built into how we collect and process data. Full documentation in the Trust Center.
Ship people data your product can trust
Access verified B2B profiles through one API. Real-time, bulk, or async, at production scale.
- Profiles
- 1B+
- Refreshes / month
- 200M
- Response time (P95)
- 500ms