Email Finder & Verifier API — Find Verified B2B Emails
Pricing
from $8.00 / 1,000 verified email founds
Email Finder & Verifier API — Find Verified B2B Emails
Email finder + verifier: give a name and company domain, get their verified, deliverable work email — live SMTP check, catch-all excluded, no bounces. Find and verify anyone's business email before you send. Pay only per verified email found. B2B leads, cold email, sales prospecting.
Pricing
from $8.00 / 1,000 verified email founds
Rating
0.0
(0)
Developer
QualifyOps
Maintained by CommunityActor stats
0
Bookmarked
88
Total users
38
Monthly active users
12 hours ago
Last modified
Categories
Share
Email Finder & Verifier API — Find Verified B2B Emails
You give: names + company domains directly, or a CSV/XLSX/Google Sheets file, or an Apify Dataset ID. You get: their verified, deliverable email address — one confirmed mailbox, with a confidence score, marked FOUND or NOT_FOUND. You pay: only per verified email found — $0.008. Not-found is free.
No LinkedIn, no scraping of protected sources. This is a deterministic pattern engine plus live deliverability verification — the two things that actually turn a name into an address you can send to.
Have LinkedIn profile URLs instead?
Use LinkedIn Email Finder — Verified Emails, No Cookies. Paste LinkedIn URLs/usernames and get profile + company context with a deliverability-checked email. $0.03 only when a verified email is found.
Need LinkedIn-based bulk prospecting?
Already have LinkedIn profile URLs? Use Bulk LinkedIn Email Finder — Verified Emails, No Cookies: https://apify.com/qualifyops/linkedin-email-finder-verified
Starting from target companies and need to discover employees or decision-makers first? Use LinkedIn Company Employees Scraper + Verified Email Finder: https://apify.com/qualifyops/linkedin-company-employees-email-finder
That gives you a simple QualifyOps ladder: name + domain → this Actor; profile URLs → Bulk LinkedIn Email Finder; companies → Company Employees + Email Finder.
Bulk input without JSON
You do not need to hand-format a JSON array. Paste a CSV or Excel file URL, a shareable Google Sheets link, or an Apify Dataset ID from another Actor. Common name and domain/website column names are detected automatically.
Lower-cost verification waterfall
Candidates are verified in rounds: the most-likely pattern for every unresolved person first, then the next pattern only for people still unresolved. That preserves the strict SMTP/catch-all gate while avoiding unnecessary paid verification calls.
Why "verified" is the whole point
Most email finders hand you first.last@company.com and call it a day. You send, it bounces, and your domain reputation takes the hit. Here, every FOUND address has been through:
pattern generation → syntax → MX record → live SMTP mailbox check → catch-all detection → confidence score
Only an address that a real mail server accepts, that is not catch-all, at confidence ≥ 0.80, is returned as FOUND. Everything else is NOT_FOUND with a reason and a clearly-labelled best_guess — never a silent, billed guess.
How it works
- Normalize the name (lowercase, strip accents/punctuation) and the domain (strip
https://,www., paths — full URLs are fine). - Generate candidates in priority order:
first.last,first,flast,firstlast,first_last,f.last,last.first,lastf,first-last,last— each@domain. - Optional site scan (
siteScan, on by default): fetch the company's homepage,/contactand/aboutand promote any published address that matches a candidate to the front — those are real, not guesses. - Local pre-filter (free): drop bad-syntax candidates and, if the domain has no MX record at all, return
NOT_FOUNDimmediately — with no charge. - One batched deliverability check: survivors go to a proven Apify Store validator with real SMTP egress, in a single call per run.
- Pick the winner: the first deliverable, non-catch-all, confident address becomes
FOUND. You are charged only for FOUND.
What each row gives you
| Column | Meaning |
|---|---|
action | FOUND (verified deliverable) or NOT_FOUND (with reason) |
firstName / lastName | The person you asked about |
domain | The normalized company domain |
verified_email | The deliverable address — only on FOUND |
pattern | Which pattern won (first.last, flast, published, …) |
confidence | 0–1 deliverability confidence |
source | pattern (generated) or published (found on the company site) |
candidates_checked | How many addresses were tested |
reason | On NOT_FOUND: catch_all_domain / all_rejected / no_mx / verifier_unavailable |
best_guess / best_guess_confidence | On NOT_FOUND: the most-likely address, clearly not verified |
Honest by design
- We never invent an address and label it verified.
FOUNDmeans a live mail server accepted that specific mailbox. - Catch-all domains — which accept everything and confirm nothing — are returned as
NOT_FOUND(catch_all_domain) and are not charged. We will not bill you for a domain that cannot actually confirm the person. - If the verifier is unavailable, we degrade to
NOT_FOUND(verifier_unavailable) — never a fabricated "deliverable" result, never a charge. - A
best_guessis always presented as a guess, never as a verified address.
For agents & automation
Call it via the Apify API or MCP. Pass an array of {firstName, lastName, domain} (or {fullName, domain}) and get back deduped, verified rows — ideal as a step in an enrichment pipeline. Schedule it for recurring enrichment of a lead list into your CRM or sequencer. You pay only for the addresses that are actually deliverable.
Input: people (array of name + domain). Optional: maxCandidatesPerPerson (cost cap), siteScan, verifierActorId, requestTimeoutSecs.