ACTION_ID: person_work_email_waterfall NAME: Find Work Email CATEGORY: Person Enrichment CREDITS: 0.1-15 Find a person's work email from full_name + company_domain (best) or a LinkedIn URL. 1. INPUTS full_name (string, optional) — Full Name The prospect's full name. A single string, or composed inline from two upstream fields — e.g. "{{input.first_name}} {{input.last_name}}". company_domain (url, optional) — Company Domain The prospect's company domain (e.g. "acme.com"), usually from an upstream output. This is what pins the resolved email to the intended company. linkedin_url (url, optional) — LinkedIn URL LinkedIn URL of the prospect. email_providers (raw_array, optional) — Email Providers The ordered waterfall of email-finder providers, tried in sequence until one returns a hit. Providers differ by the input they accept: domain+name: hunter, leadmagic, datagma, snov, prospeo, apollo linkedin-only: blitz, findymail, wiza (prospeo and apollo accept either.) Default order is domain-first — the domain+name providers run before the linkedin-only ones: hunter, prospeo, leadmagic, datagma, apollo, snov, blitz, findymail, wiza Reorder or restrict to a subset via Configure Action (PATCH email_providers) or the Reorder Waterfall Providers endpoint (PATCH .../actions/{id}/waterfall/email_providers with {"providers": [...]}). Adding a provider outside this set is not supported. Required combinations — every input is optional, but at least one of these must be supplied or the action cannot run: - full_name AND company_domain together (recommended), OR - linkedin_url alone. Passing all three unlocks every provider (highest raw coverage); with the domain-first order the domain+name providers still resolve first. email_validation (string, optional) — Email Validation Optional validator run on the resolved email. Only ONE can be selected (they do not chain): - "ZeroBounce" (1 credit) - "MillionVerifier" (0.1 credits) - "NeverBounce" (1 credit) - "Allegrow" (0.1 credits) - "None" (default — no validation) 2. OUTPUTS work_email (type: email) — The resolved work email of the contact. 3. HOW TO CONFIGURE Configure Action body: { "inputs": { "full_name": "{{input.full_name}}", "company_domain": "{{input.company_domain}}", "linkedin_url": "{{input.linkedin_url}}", "email_validation": "MillionVerifier" } } Recommended: pass full_name + company_domain (add linkedin_url too for a little more coverage). Supply at least one of: full_name + company_domain together, OR linkedin_url alone. email_validation is optional and takes exactly one of "ZeroBounce", "MillionVerifier", "NeverBounce", "Allegrow", or "None" (default). 4. KEY NOTES - Recommended config: full_name + company_domain. Highest accuracy and highest coverage — the most providers accept this input, and the company_domain (usually an upstream output) pins the email to the intended company. Add linkedin_url on top for extra coverage; the domain-first order keeps the accurate providers ahead of it. - The linkedin-only providers (blitz, findymail, wiza) have no reference domain. They usually return the right email, but with a slight chance it is stale or from a different current role — so the result is not guaranteed to match company_domain. They run last by default and fire only when the domain+name providers miss. - The domain+name path is only as accurate as the company_domain you pass — a wrong upstream domain yields a wrong-company email. - Strict target-company match (ICP validation): omit linkedin_url so the linkedin-only providers cannot surface an off-domain email. For a hard guarantee, pair with an upstream enrich_person_linkedin_profile step and a downstream filter on current_company_domain == company_domain. - API metadata reports required: true for full_name, linkedin_url, and company_domain on POST /actions/add. That is stricter than the real rule — runtime accepts the at-least-one-of pattern in §1. Trust the §1 prose, not the schema metadata. 5. WHERE IT FITS IN A WORKFLOW Pattern: enrich_person_linkedin_profile -> person_work_email_waterfall -> person_work_email_verification_by_zerobounce (or another verifier) -> outreach. 6. WHEN TO USE Use to resolve a prospect's work email when you have their company domain + name (best), or their LinkedIn URL. See §4 for the recommended input set and provider order. 7. WHEN NOT TO USE Need a personal email -> action-detail/personal_email_by_linkedin_url_waterfall.txt Need a phone number -> action-detail/personal_phone_number_by_linkedin_url_waterfall.txt Last updated: 2026-07-01.