Find email addresses at a company domain, with roles
hunter.companies.emailsPeople and email addresses Hunter knows at a company, with roles and confidence. DELIVERABILITY WARNING: this is a directory listing, not a verified list — each row's `verification.status` is null unless Hunter has checked that mailbox, and `confidence` below ~50 is a pattern guess. Live 2026-09-08, a team that mailed generic rows (info@, sales@) straight from this endpoint bounced on 73 of 79; a hunter.people.email.verify call per address ($0.012, or leadmagic.people.email.verify at $0.006) would have caught all 73. Verify before outreach, and never invent info@ for a domain this returned nothing for.
- Price
- $0.00245/resultAu prix du fournisseur
- Success rate
- 100 %Last 30 days · 250 620 calls
- Latency p50
- 272 msp95 636 ms
- Last verified
- 31 juil. 2026Verified working
GEThttps://toolswitch.dev/v1/tools/hunter.companies.emails?limit=1&domain=stripe.comPreview- Uses platform quota
- Synchronous response
- Reads public data
Paramètres
one of domain | company is required. Mapped to people.search because what it actually returns is a filtered list of PEOPLE at that company
| Paramètre | Type | Obligatoire | Description | Exemple |
|---|---|---|---|---|
| Paramètres de requête | ||||
type | chaîne | Facultatif | personal (named people) | generic (info@, contact@) | personal |
limit | entier | Facultatif | emails to return, default 10, max 100 — THIS IS THE PRICE DIAL: 1 search credit per 10 returned | 10 |
domain | chaîne | Facultatif | the company's domain — preferred over company | stripe.com |
offset | entier | Facultatif | records to skip, for paging | |
company | chaîne | Facultatif | company name, when you don't know the domain | |
location | chaîne | Facultatif | comma-separated locations to filter results by | |
seniority | chaîne | Facultatif | junior, senior, executive — comma-separate to combine | |
department | chaîne | Facultatif | executive, it, finance, management, sales, legal, support, hr, marketing, communication, education, design, health, operations | |
job_titles | chaîne | Facultatif | comma-separated job titles to match | |
aggregations | booléen | Facultatif | return aggregate breakdowns (by department, seniority) alongside the results | |
decision_maker | booléen | Facultatif | restrict to people Hunter classifies as decision makers | |
required_field | chaîne | Facultatif | comma-separated fields a result must have, e.g. full_name,position | |
verification_status | chaîne | Facultatif | filter by deliverability status, e.g. valid | |
- Paramètres de requête
typechaîneFacultatifpersonal (named people) | generic (info@, contact@)
Exemple :
personallimitentierFacultatifemails to return, default 10, max 100 — THIS IS THE PRICE DIAL: 1 search credit per 10 returned
Exemple :
10domainchaîneFacultatifthe company's domain — preferred over company
Exemple :
stripe.comoffsetentierFacultatifrecords to skip, for paging
companychaîneFacultatifcompany name, when you don't know the domain
locationchaîneFacultatifcomma-separated locations to filter results by
senioritychaîneFacultatifjunior, senior, executive — comma-separate to combine
departmentchaîneFacultatifexecutive, it, finance, management, sales, legal, support, hr, marketing, communication, education, design, health, operations
job_titleschaîneFacultatifcomma-separated job titles to match
aggregationsbooléenFacultatifreturn aggregate breakdowns (by department, seniority) alongside the results
decision_makerbooléenFacultatifrestrict to people Hunter classifies as decision makers
required_fieldchaîneFacultatifcomma-separated fields a result must have, e.g. full_name,position
verification_statuschaîneFacultatiffilter by deliverability status, e.g. valid
Exemples de code
Remplacez $TOOLSWITCH_KEY par la clé créée dans la console.
curl -X GET 'https://toolswitch.dev/v1/tools/hunter.companies.emails?limit=1&domain=stripe.com' \
-H "X-Toolswitch-Key: $TOOLSWITCH_KEY"import os
import requests
response = requests.request(
"GET",
"https://toolswitch.dev/v1/tools/hunter.companies.emails?limit=1&domain=stripe.com",
headers={"X-Toolswitch-Key": os.environ["TOOLSWITCH_KEY"]},
)
response.raise_for_status()
print(response.text)const response = await fetch("https://toolswitch.dev/v1/tools/hunter.companies.emails?limit=1&domain=stripe.com", {
method: "GET",
headers: {
"X-Toolswitch-Key": process.env.TOOLSWITCH_KEY ?? "",
},
});
if (!response.ok) throw new Error(`Request failed: ${response.status}`);
console.log(await response.text());Cette API de passerelle est en préversion ; son URL et son authentification peuvent changer. Les paramètres de l’exemple sont des données fictives. Les appels sont facturés à $0.00245/result, frais de service inclus.