Reference · Tools

Hunter

Find and verify professional email addresses using the Hunter.io API.

Action Sales v1

The Hunter node finds and verifies professional email addresses: search a domain for the addresses it hosts, find one person's address from their name and company domain, or verify whether an address is deliverable. A typical build is verifying every address on an imported list before a campaign, so bounces never reach the send.

Node type
Action
Parameters
11
Outputs
Output, Error
Credentials
Hunter API

Hunter

Find and verify professional email addresses for lead generation and sales outreach.

Overview

Hunter.io is an email intelligence platform. This tool supports three operations: (1) Domain Search — find all email addresses associated with a domain, with filtering by type, seniority, and department, (2) Email Finder — generate or retrieve the most likely email for a person given domain, first name, and last name, and (3) Email Verifier — check the deliverability of an email address.

Category: Sales
Tool Name: hunter
Version: 1

Appearance: Icon: lucide-Search | Color: #FF7A59

Node Type

Action — processes input items and produces output

Input / Output

DirectionPort(s)
InputInput
OutputOutput, Error

Credentials

This tool requires Hunter API credentials. See the Credentials Guide for setup instructions.

Operations

OperationValueDescription
Domain SearchdomainSearchGet every email address found on the internet using a given domain name, with sources.
Email FinderemailFinderGenerate or retrieve the most likely email address from a domain name, a first name and a last name.
Email VerifieremailVerifierVerify the deliverability of an email address.

Parameters

Domain Search (domainSearch)

ParameterTypeRequiredDefaultDescription
DomainstringYesDomain name from which you want to find the email addresses. For example, “stripe.com”.
Only EmailsbooleanNotrueWhether to return only the found emails.
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo100Max number of results to return. (shown when Return All is false)
FilterscollectionNo{}Narrow the search before results are returned.
— TypeoptionsNoRestrict results to personal or generic addresses.
Options: personal, generic
— SenioritymultiOptionsNo[]Restrict results to the selected seniority levels.
Options: junior, senior, executive
— DepartmentmultiOptionsNo[]Restrict results to the selected departments.
Options: communication, executive, finance, hr, it, legal, management, marketing, sales, support

Email Finder (emailFinder)

ParameterTypeRequiredDefaultDescription
DomainstringYesDomain name from which you want to find the email addresses. For example, “stripe.com”.
First NamestringYesThe person’s first name. It doesn’t need to be in lowercase.
Last NamestringYesThe person’s last name. It doesn’t need to be in lowercase.

Email Verifier (emailVerifier)

ParameterTypeRequiredDefaultDescription
EmailstringYesThe email address you want to verify.

All Operations

ParameterTypeRequiredDefaultDescription
Max ConcurrencynumberNo10Maximum number of items to process concurrently.

Output Data

Hunter’s response is merged onto the input item’s JSON in every operation — your existing fields survive and Hunter’s fields are added alongside them, overwriting any key of the same name. Binary data on the input item is forwarded.

How many items come out depends on the operation, and on Only Emails:

OperationOutput items per input item
domainSearch with Only Emails on (the default)One per email address found — a single input item fans out into many, each carrying one address record.
domainSearch with Only Emails offOne — the whole domain record, addresses included as a nested array.
emailFinderOne — the single best-guess address record.
emailVerifierOne — the verification record for that address.

Return All changes how much is fetched, not the shape: on, Hunter is paged through until every result is collected; off, one page of up to Limit results is fetched. With Return All on and Only Emails off, the addresses from every page are concatenated into the single output item.

A Domain Search in fan-out mode that found nothing still produces one item, carrying your original JSON plus a marker:

{
  "_noResults": true
}

Test for {{ $json._noResults }} before treating that branch as results. The other operations have no such marker — an unmatched lookup simply adds no fields, so check for a field you expect instead.

The fields themselves are whatever Hunter returns for the lookup; the node does not rename, nest or filter them. Reference them downstream by expression, e.g. {{ $json.value }}.

Usage Examples

  • Find all email addresses for a company domain
  • Look up the email address for a specific person at a company
  • Verify whether an email address is deliverable
  • Search for executive-level emails at a domain
  • Filter domain emails by department (sales, marketing, etc.)

Example Configuration

Find every address on a domain, one item per address:

{
  "type": "hunter",
  "parameters": {
    "operation": "domainSearch",
    "domain": "{{ $json.domain }}",
    "onlyEmails": true,
    "returnAll": true,
    "maxConcurrency": 5
  }
}

Pull only senior and executive sales or marketing contacts, capped at 50:

{
  "type": "hunter",
  "parameters": {
    "operation": "domainSearch",
    "domain": "{{ $json.domain }}",
    "onlyEmails": true,
    "returnAll": false,
    "limit": 50,
    "filters": {
      "type": "personal",
      "seniority": ["senior", "executive"],
      "department": ["sales", "marketing"]
    }
  }
}

Keep the full domain record instead of fanning out:

{
  "type": "hunter",
  "parameters": {
    "operation": "domainSearch",
    "domain": "{{ $json.domain }}",
    "onlyEmails": false,
    "returnAll": false,
    "limit": 100
  }
}

Guess one person’s address from their name and employer:

{
  "type": "hunter",
  "parameters": {
    "operation": "emailFinder",
    "domain": "{{ $json.companyDomain }}",
    "firstname": "{{ $json.firstName }}",
    "lastname": "{{ $json.lastName }}"
  }
}

Check deliverability before adding an address to a send list:

{
  "type": "hunter",
  "parameters": {
    "operation": "emailVerifier",
    "email": "{{ $json.email }}",
    "maxConcurrency": 20
  }
}

Error Handling

ModeBehavior
stopHalts workflow on first error
continueSkips failed items, passes successful ones through
errorPortRoutes failed items to Error output port

Tips

Find and verify professional email addresses — search domains for emails, find specific people’s addresses, or verify deliverability via the Hunter.io API.

Parameter Dependencies

  • Domain Search Operation: Requires domain. Can optionally use onlyEmails, returnAll, limit (only when returnAll is false), and filters
  • Email Finder Operation: Requires domain, firstname, and lastname
  • Email Verifier Operation: Requires email
  • Filters: When used, type accepts “personal” or “generic”, while seniority and department accept arrays of predefined values

Frequently asked questions

What does each operation require?

Domain Search needs a domain. Email Finder needs domain, first name and last name. Email Verifier needs the email address. The editor shows only the fields that apply to the operation selected.

When does the Limit field appear?

On Domain Search, and only when Return All is off. With Return All on the node fetches everything and there is nothing to limit.

How do the filters work?

On Domain Search, Type accepts personal or generic, while Seniority and Department accept arrays of predefined values — useful for narrowing a large domain to decision-makers.

Can I use it to clean an existing list?

Yes — Email Verifier is designed for exactly that, checking deliverability address by address so you can drop the risky ones before sending.

Build with the Hunter node

Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Hunter API credentials first.

Open BusyBot

Last updated . Spotted something wrong? Tell us.