# 📬 B2B Work Email Finder & Verifier (Apollo/Clay) (`automation_studio/b2b-email-finder-verifier`) Actor

Find verified corporate email addresses for any decision maker. Zero-send real-time SMTP handshakes, catch-all detection, DNS MX resolution, and cold outreach copy without Apollo or Clay subscriptions.

- **URL**: https://apify.com/automation\_studio/b2b-email-finder-verifier.md
- **Developed by:** [Automation Studio](https://apify.com/automation_studio) (community)
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $6.00 / 1,000 verified b2b work emails

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## 📬 B2B Work Email Finder & Real-Time SMTP Verifier

> **Stop paying $1,000s/month to Apollo, Hunter, or Clay.** Find and verify direct B2B corporate work emails in real-time with multi-hop SMTP handshakes, permutation loop testing, and official **SEC EDGAR regulatory cross-referencing**.

***

### ⚡ What Does This Actor Do?

Given a decision maker's name and company domain (or LinkedIn profile URL), this Actor discovers and verifies their direct corporate work email address using a **5-Layer Deliverability Waterfall**:

1. **DNS MX Record Resolution & Infrastructure Profiling**: Resolves primary corporate mail exchangers and profiles security gateways (Google Workspace, Microsoft 365, Proofpoint, Mimecast).
2. **Top 10 B2B Permutations & International Transliteration**: Generates industry-standard corporate patterns (`first.last`, `first`, `f.last`, `flast`, `first_last`, etc.) with full Nordic/German umlaut transliteration (`ö/ø` $\rightarrow$ `oe`).
3. **Multi-Hop SMTP Permutation Loop**: Probes candidate email permutations in order of prevalence against destination mail exchangers to pinpoint the **exact, live deliverable mailbox** (e.g. discovering `yrangan@hubspot.com` over invalid `yamini.rangan@hubspot.com`).
4. **Catch-All (Accept-All) Protection**: Probes mail servers with random tokens to detect catch-all domains, preventing false 100% deliverability claims that damage sender reputation.
5. **SEC EDGAR Regulatory Footprint**: For enterprise security gateways that restrict direct SMTP probes (e.g. Proofpoint), the engine cross-references official US SEC EDGAR filings (Form 8-K, Form 4, 10-K, Form D) to corroborate active corporate officers.
6. **Ready-to-Send Cold Email Copy**: Produces personalized email subject lines and conversation hooks tailored to each verified contact.

***

### 🥊 Comparison: Apollo vs. Hunter vs. Clay vs. This Actor

| Feature | Apollo.io | Hunter.io | Clay | **This Apify Actor** |
| :--- | :---: | :---: | :---: | :---: |
| **Pricing Model** | $99 – $1,200/mo subscription | $49 – $499/mo subscription | $149 – $800/mo credits | **Pay-As-You-Go ($0.01/lead)** |
| **Commitment** | Annual lock-in | Monthly recurring | Monthly recurring | **Zero commitment, pay per lead** |
| **Multi-Hop SMTP Loop** | Delayed / Cached | Single permutation | Third-party credits | **Built-in Real-Time Loop** |
| **SEC EDGAR Cross-Check** | ❌ No | ❌ No | ❌ No | **✅ Built-in Free & Legal** |
| **Catch-All Detection** | Basic | Advanced | Multi-credit | **Advanced Probe Included** |
| **Gateway Profiling** | ❌ No | ❌ No | Partial | **✅ Yes (M365, Google, Proofpoint)** |
| **Outreach Copy Generator** | Paid Add-on | ❌ No | Extra Credits | **✅ Included Free** |
| **API & Webhook Access** | Enterprise Only | Included | Included | **✅ Full Apify REST API & Webhooks** |

***

### 📥 Easy Input Options (No JSON Required)

#### Option 1: Single Lead Form Fields

Simply enter:

- **First Name**: e.g., `Yamini`
- **Last Name**: e.g., `Rangan`
- **Company Domain**: e.g., `hubspot.com`
- **Job Title**: e.g., `CEO`

#### Option 2: Copy & Paste from Excel / Google Sheets

Paste multiple lines directly into the text area:

```text
Elliott,Hill,nike.com
Yamini,Rangan,hubspot.com
Marc,Benioff,salesforce.com
```

#### Option 3: Visual Interactive Table

Use the visual table editor to add rows with one click.

***

### 📤 Output Data Format

Every lead is returned with verified deliverability telemetry:

```json
{
  "fullName": "Yamini Rangan",
  "firstName": "Yamini",
  "lastName": "Rangan",
  "jobTitle": "CEO",
  "companyDomain": "hubspot.com",
  "verifiedEmail": "yrangan@hubspot.com",
  "emailFormat": "flast",
  "status": "VERIFIED",
  "deliverable": true,
  "confidenceScore": "99% (Real-Time SMTP Deliverable)",
  "mxValid": true,
  "mxProvider": "Google Workspace",
  "primaryMxHost": "smtp.google.com",
  "isCatchAllDomain": "STRICT_VALIDATION",
  "verificationMethod": "DISTRIBUTED_SMTP_HANDSHAKE",
  "testedPermutationsCount": 10,
  "coldEmailSubject": "Question regarding hubspot.com's growth initiatives, Yamini",
  "coldEmailHook": "Hi Yamini, noticed your work leading initiatives at hubspot.com. We help outbound B2B teams maximize contact deliverability without expensive Apollo contracts. Open to reviewing a brief 2-minute overview?",
  "verifiedAt": "2026-09-24T22:00:00Z"
}
```

***

### 💰 Pay-Per-Event (PPE) Pricing

- **Actor Start**: `$0.001` per run
- **Verified Lead Item**: `$0.01` per contact (Tiered down to `$0.004` for high-volume accounts)
- **Minimum Spending Floor**: `$0.10`

***

*Built with passion by Automation Studio. 100% Ban-Free Deliverability Intelligence.*

# Actor input Schema

## `searchMode` (type: `string`):

Choose whether you want to verify a single decision maker or extract/verify bulk leads in batch.

## `firstName` (type: `string`):

Compulsory: First name of the target decision maker (e.g. Yamini, Elliott, Marc). Must not be empty in Single mode.

## `lastName` (type: `string`):

Compulsory: Last name of the target decision maker (e.g. Rangan, Hill, Benioff). Must not be empty in Single mode.

## `companyDomain` (type: `string`):

Compulsory: Company website domain (e.g. hubspot.com, nike.com, stripe.com) or business name. Must not be empty.

## `jobTitle` (type: `string`):

Job title or seniority level (e.g. CEO, VP of Sales, Head of Marketing).

## `linkedinUrl` (type: `string`):

Direct LinkedIn profile link (e.g. https://www.linkedin.com/in/yaminirangan/).

## `bulkLeadsText` (type: `string`):

Paste multiple leads directly from Excel or Google Sheets (one per line: firstName,lastName,domain). Each lead must have first name, last name, and domain. Example:
Yamini,Rangan,hubspot.com
Elliott,Hill,nike.com
Marc,Benioff,salesforce.com

## `leads` (type: `array`):

Or add leads one by one using this structured editor.

## `enableDeepSmtpVerification` (type: `boolean`):

Test candidate email permutations through distributed enterprise SMTP relays to pinpoint the exact deliverable mailbox.

## `enableSecEdgarVerification` (type: `boolean`):

Cross-reference official US SEC filings (Form 8-K, Form 4, 10-K, Form D) to corroborate corporate executives and confirm deliverable emails when mail servers restrict port 25.

## `checkCatchAll` (type: `boolean`):

Probe mail servers with random tokens to detect accept-all configurations, preventing false 100% deliverability claims.

## `timeoutSeconds` (type: `integer`):

Maximum seconds per network probe before falling back gracefully.

## `allowPersonalEmails` (type: `boolean`):

If false, automatically filters out free consumer email providers (e.g. gmail.com, yahoo.com) to focus strictly on corporate domains.

## `maxConcurrency` (type: `integer`):

Number of leads to verify in parallel. High concurrency speeds up large lists.

## Actor input object example

```json
{
  "searchMode": "single",
  "firstName": "Yamini",
  "lastName": "Rangan",
  "companyDomain": "hubspot.com",
  "jobTitle": "CEO",
  "bulkLeadsText": "",
  "leads": [],
  "enableDeepSmtpVerification": true,
  "enableSecEdgarVerification": true,
  "checkCatchAll": true,
  "timeoutSeconds": 5,
  "allowPersonalEmails": false,
  "maxConcurrency": 5
}
```

# Actor output Schema

## `dataset` (type: `string`):

Dataset containing verified executive email addresses, deliverability statuses, mail server providers, format patterns, and cold outreach copy

## `summary` (type: `string`):

Executive markdown report with deliverability breakdowns, status totals, and ready-to-send cold outreach hooks

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchMode": "single",
    "firstName": "Yamini",
    "lastName": "Rangan",
    "companyDomain": "hubspot.com",
    "jobTitle": "CEO",
    "bulkLeadsText": "",
    "leads": []
};

// Run the Actor and wait for it to finish
const run = await client.actor("automation_studio/b2b-email-finder-verifier").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchMode": "single",
    "firstName": "Yamini",
    "lastName": "Rangan",
    "companyDomain": "hubspot.com",
    "jobTitle": "CEO",
    "bulkLeadsText": "",
    "leads": [],
}

# Run the Actor and wait for it to finish
run = client.actor("automation_studio/b2b-email-finder-verifier").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchMode": "single",
  "firstName": "Yamini",
  "lastName": "Rangan",
  "companyDomain": "hubspot.com",
  "jobTitle": "CEO",
  "bulkLeadsText": "",
  "leads": []
}' |
apify call automation_studio/b2b-email-finder-verifier --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,automation_studio/b2b-email-finder-verifier"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/WSiHYVupMWWqUEHhf/builds/SqhfU7nI2ShNeawi9/openapi.json
