Check that a personal email belongs to the expected person
Add an identity-match check to an email-validation product: confirm a personal email resolves to the person it is stored against, and report outcomes back.
- Free API key
- No credit card
- Run your sample
- Tools named
LinkedIn
Uses POST /person_detail_reverse_lookup/by_email/, POST /person_contacts_lookup/personal_emails/, POST /feedback/personal_emails/ · Reverse email lookup API reference
What it costs: 5 credits per email found. A mobile or email lookup that returns nothing costs 0 credits. Enrichment and search are charged per request: credit pricing.
- Reverse email lookup
- Personal emails
- API
- Data reseller
- B2B data providers
How the data flows
POST /person_detail_reverse_lookup/by_email/ - matched person
- true
- replacement email
- sam@example.com
- name
- Sam Specimen
- title
- VP Revenue Operations
- mobile
- +1 (512) 555-0133
- company
- Example Inc.
Steps
- Resolve each personal email with
POST /person_detail_reverse_lookup/by_email/ - Compare
full_nameandlinkedin_info.public_identifierwith the stored contact and flag mismatches - For mismatches with a LinkedIn URL, fetch the right address with
POST /person_contacts_lookup/personal_emails/and readvalidation_status - Send confirmed results back with
POST /feedback/personal_emails/(email,contact_status,is_correct_person)
import json, os, requests BASE = "https://api-v2.forager.ai/api/{account_id}/datastorage" HEADERS = {"X-API-KEY": os.environ["FORAGER_KEY"]} body = json.load(open("request.json")) # request fields: see the API reference # 1. Resolve each personal email with POST # /person_detail_reverse_lookup/by_email/ r1 = requests.post(f"{BASE}/person_detail_reverse_lookup/by_email/", headers=HEADERS, json=body) # 2. Compare full_name and linkedin_info.public_identifier with the stored # contact and flag mismatches # 3. For mismatches with a LinkedIn URL, fetch the right address with POST # /person_contacts_lookup/personal_emails/ and read validation_status r2 = requests.post(f"{BASE}/person_contacts_lookup/personal_emails/", headers=HEADERS, json=body) # 4. Send confirmed results back with POST /feedback/personal_emails/ # (email, contact_status, is_correct_person) r3 = requests.post(f"{BASE}/feedback/personal_emails/", headers=HEADERS, json=body)
# 1. POST /person_detail_reverse_lookup/by_email/ curl -X POST \ https://api-v2.forager.ai/api/{account_id}/datastorage/person_detail_reverse_lookup/by_email/ \ -H "X-API-KEY: $FORAGER_KEY" \ -H "Content-Type: application/json" \ -d @request.json # 2. POST /person_contacts_lookup/personal_emails/ curl -X POST \ https://api-v2.forager.ai/api/{account_id}/datastorage/person_contacts_lookup/personal_emails/ \ -H "X-API-KEY: $FORAGER_KEY" \ -H "Content-Type: application/json" \ -d @request.json # 3. POST /feedback/personal_emails/ curl -X POST \ https://api-v2.forager.ai/api/{account_id}/datastorage/feedback/personal_emails/ \ -H "X-API-KEY: $FORAGER_KEY" \ -H "Content-Type: application/json" \ -d @request.json
Run it yourself: Reverse email lookup API reference
- Free API key
- No credit card
- Run your sample
Inputs and outputs
| Inputs | Outputs |
|---|---|
| personal email | matched person |
| stored name or LinkedIn URL | right-person flag |
replacement email | |
validation_status |
Questions about this recipe
How do I check that an email address belongs to the right person?
For mismatches with a LinkedIn URL, fetch the right address with POST /person_contacts_lookup/personal_emails/ and read validation_status. Send confirmed results back with POST /feedback/personal_emails/ (email, contact_status, is_correct_person).
What does it cost to check that a personal email belongs to the expected person?
Reverse email lookup: 5 credits per request, charged whether or not data comes back. Personal emails: 5 credits per personal email found, and a personal email lookup that finds nothing costs 0 credits. Growth's 8,250 monthly credits cover 1,650 emails, or a mix. Self-serve plans are Starter, Growth, Pro and Scale. See plans and prices
What do I need to run this recipe, and what comes back?
You send personal email and stored name or LinkedIn URL. You get back matched person, replacement email, right-person flag and validation_status, as JSON. You also need a Forager API key, which comes with a free account.
Can an email validation tool confirm who owns an address?
This recipe uses Forager Reverse email lookup and Personal emails. Reverse email lookup: Turn an email address into a full person profile: name, title, company, location and social links. Add an identity-match check to an email-validation product: confirm a personal email resolves to the person it is stored against, and report outcomes back.
Can I test reverse email lookup for free?
Yes. Create a free account at app.forager.ai: it comes with $5 in free credits and an API key, and there is no credit card to sign up. Run it on records you already know, or book a demo and send us a list: we run it and show you what we find.
When should I run this workflow?
When a customer submits a contact list where personal emails are stored against named people, or a validation job runs on a vendor's own records. Customers stop sending to addresses that belong to someone else, and the validation product reports right-person accuracy, not only deliverability.
Which Forager products does this recipe use?
Reverse email lookup and personal emails. Reverse email lookup: turn an email address into a full person profile: name, title, company, location and social links. Personal emails: personal email addresses for reaching people outside their work inbox, such as passive candidates and founders.
How do you check data quality?
The test that counts is your own: send a list of profiles you care about. We run it and show you what we find, number by number, so you can measure hit rate and connect rate yourself.
Which tools can run this workflow?
Native in Clay and Zapier, partner-built in Deepline and called through the API from Make, n8n and your own code. Or call the endpoints in the steps above from your own code with one API key.
How many steps is this workflow?
4 steps: resolve each personal email with POST /person_detail_reverse_lookup/by_email/, compare full_name and linkedin_info.public_identifier with the stored contact and flag mismatches, for mismatches with a LinkedIn URL, fetch the right address with POST /person_contacts_lookup/personal_emails/ and read validation_status and send confirmed results back with POST /feedback/personal_emails/ (email, contact_status, is_correct_person).
Do I need a subscription?
Not to test: a free account comes with $5 in credits. To keep using Forager, choose a monthly or yearly plan. Monthly plans cancel anytime and unused credits roll over; yearly plans grant all credits upfront and cost 10% less. Larger volumes are agreed with our team.
Can our users see Forager data in our product?
Yes, under platform terms. Self-serve plans cover internal use by your own team. Showing Forager contacts to your users, or passing records on, is licensed separately: talk to sales about volume and which fields your users need to see.
Written answers are not available right now. The matching pages above still help, or book a demo and ask the team.
- $5 free credits
- No credit card
- Run your sample
More recipes for data validation
-
Add a phone-validation layer to a contact-data product
-
Score a contact database's freshness by checking each person's current employer
-
Offer mobile and email enrichment as native actions in a GTM workflow builder
-
Convert personal-email sign-ups into work identities
-
Refresh stale ATS candidate records so past applicants resurface
-
Show verified contact details on every AI-sourced candidate card