YepAPI
Email API

Domain Search

Find every email address on a company domain — names, positions, departments, confidence scores, plus a full company profile.

POST/v1/email/domain-search
$0.03/call

Usage

const res = await fetch('https://api.yepapi.com/v1/email/domain-search', {
  method: 'POST',
  headers: {
    'x-api-key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ domain: 'stripe.com', limit: 10 }),
});
const { data } = await res.json();
console.log(data);
curl -X POST https://api.yepapi.com/v1/email/domain-search \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"domain": "stripe.com", "limit": 10}'

Request Body

ParameterTypeRequiredDescriptionDefault
domainstringYes*Company domain to search (e.g., stripe.com). Required unless company is provided.
companystringNoCompany name to search instead of a domain
limitnumberNoNumber of emails to return: 10, 20, or 5010
pagenumberNoPage number for pagination1
departmentstringNoFilter results by department (e.g., engineering, sales)
countrystringNoFilter results by ISO country code (e.g., US)

Response

{
  "data": {
    "company": {
      "acceptAll": true,
      "description": "stripe is a payment processing platform enabling businesses to accept payments and manage online transactions.",
      "domain": "stripe.com",
      "emailPattern": "{first}",
      "founded": "2010",
      "industry": "Information Technology and Services",
      "location": {
        "address": "354 oyster point blvd",
        "city": "San Francisco",
        "country": "US",
        "postalCode": "94107",
        "state": "California"
      },
      "name": "Stripe",
      "revenue": "$100M-$250M",
      "size": "5K-10K",
      "social": {
        "facebook": "https://www.facebook.com/stripehq",
        "github": "https://www.github.com/stripe",
        "instagram": null,
        "linkedin": "https://www.linkedin.com/company/stripe",
        "twitter": "https://twitter.com/stripe",
        "youtube": null
      },
      "type": "privately held"
    },
    "emails": [
      {
        "acceptAll": false,
        "company": null,
        "companyDomain": null,
        "confidenceScore": 51,
        "country": "US",
        "department": null,
        "disposable": false,
        "email": "[email protected]",
        "firstName": "Matthew",
        "fullName": "Matthew Yalowitz",
        "gender": "male",
        "hasPhone": true,
        "lastName": "Yalowitz",
        "linkedin": "https://www.linkedin.com/in/myalowitz",
        "position": null,
        "seniority": null,
        "sources": [],
        "twitter": null,
        "type": "personal",
        "verificationStatus": null,
        "verified": false,
        "webmail": false
      }
    ],
    "total": 5065
  },
  "ok": true
}

Response Fields

FieldTypeDescription
okbooleanWhether the request succeeded
data.companyobjectProfile of the company behind the domain
data.company.namestringCompany name
data.company.domainstringCompany domain
data.company.descriptionstringShort company description
data.company.industrystringIndustry classification
data.company.foundedstringYear the company was founded
data.company.sizestringEmployee count range
data.company.revenuestringEstimated annual revenue range
data.company.typestringCompany type (e.g., privately held)
data.company.emailPatternstringMost common email pattern on the domain (e.g., {first})
data.company.acceptAllbooleanWhether the domain accepts all incoming mail (catch-all)
data.company.locationobjectHQ location — address, city, state, country, postalCode
data.company.socialobjectSocial profile URLs — facebook, github, instagram, linkedin, twitter, youtube
data.emailsobject[]Email addresses found on the domain
data.emails[].emailstringThe email address
data.emails[].firstNamestring | nullFirst name of the owner
data.emails[].lastNamestring | nullLast name of the owner
data.emails[].fullNamestring | nullFull name of the owner
data.emails[].positionstring | nullJob title
data.emails[].departmentstring | nullDepartment (e.g., engineering, sales)
data.emails[].senioritystring | nullSeniority level (e.g., senior, executive)
data.emails[].genderstring | nullInferred gender
data.emails[].countrystring | nullISO country code
data.emails[].confidenceScorenumberConfidence score from 0 to 100
data.emails[].typestring | nullpersonal or generic
data.emails[].verifiedbooleanWhether the email has been verified as deliverable
data.emails[].verificationStatusstring | nullVerification result (e.g., valid, invalid)
data.emails[].acceptAllbooleanWhether the mailbox domain is catch-all
data.emails[].disposablebooleanWhether the address is a disposable email
data.emails[].webmailbooleanWhether the address is a webmail account
data.emails[].hasPhonebooleanWhether a phone number is available for this contact
data.emails[].linkedinstring | nullLinkedIn profile URL
data.emails[].twitterstring | nullTwitter/X profile URL
data.emails[].sourcesobject[]Public web pages where the email was found
data.totalnumberTotal number of emails available for the domain
Under the Hood

Use limit and page to paginate through large domains — data.total tells you how many emails exist in total. Filter with department or country to narrow results.

On this page