# Wholesale Industry Email List Scraper (`insightflow/wholesale-industry-email-list-scraper`) Actor

📦 Wholesale Industry Email List Scraper turns Google Maps into a distribution contact list with ratings and reviews. 📧 Enriched with emails and social profiles. 🏭 For supplier sourcing & B2B distribution sales.

- **URL**: https://apify.com/insightflow/wholesale-industry-email-list-scraper.md
- **Developed by:** [InsightFlow](https://apify.com/insightflow) (community)
- **Categories:** Lead generation, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.99 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

### Wholesale Industry Email List Scraper

**Wholesale Industry Email List Scraper** helps you build a targeted wholesale lead database with publicly available contact details, including emails, phone numbers, and social media profiles. It’s designed for marketers, sales teams, recruiters, and data analysts who want faster wholesale contact data mining, targeted email outreach, and scalable B2B lead generation without manual research.

### What is Wholesale Industry Email List Scraper? 🔍

**Wholesale Industry Email List Scraper** is an Apify actor that automates wholesale industry data extraction from publicly available business sources. It helps you find wholesale businesses by search term and location, then organize the results into a clean dataset for prospecting, outreach, and research. If you need a wholesale email extractor, a wholesale lead generator, or automated wholesale scraping, this actor gives you a practical workflow for discovering business contacts at scale. 📬

### What Data Does a Wholesale Industry Email List Scraper Collect? 📊

This actor is built for people who want to know exactly what they can extract from wholesale contact data mining. It captures business identity details, contact fields, location information, and scraping progress indicators so you can review, filter, and export the results with confidence. It’s useful for bulk email list scraper workflows, supplier email list building, and distributor contact scraping.

| Data Category | Field Name | Description | Available |
|---|---|---|---|
| Contact | `scraped_emails` | Publicly available email addresses found for the business | ✅ Always when found |
| Contact | `scraped_phones` | Publicly available phone numbers associated with the business | ✅ Always when found |
| Contact | `scraped_social_media` | Publicly available social media links associated with the business | ✅ Always when found |
| Identity | `name` | Business name | ✅ Always |
| Identity | `website` | Business website URL | ✅ Always when available |
| Identity | `phone` | Main business phone number | ✅ Always when available |
| Location | `full_address` | Full business address | ✅ Always when available |
| Location | `city` | City name | ✅ Always when available |
| Location | `state` | State or region | ✅ Always when available |
| Location | `zip` | Postal code | ✅ Always when available |
| Location | `country_code` | Country code | ✅ Always when available |
| Discovery | `place_id` | Business place identifier | ✅ Always when available |
| Quality | `avg_rating` | Business rating | ✅ Always when available |
| Quality | `total_reviews` | Number of reviews | ✅ Always when available |
| Progress | `emails_found` | Total number of emails found for the business | ✅ Always when available |
| Progress | `pages_scraped` | Number of pages processed during scraping | ✅ Always when available |
| Progress | `scrape_status` | Status of the scraping result | ✅ Always |

### Types of Data I Can Extract with Wholesale Industry Email List Scraper 🗂️

Here’s how the output breaks down into practical categories for email data extraction and sales prospect list building.

**Contact Data**

- Publicly available email addresses for outreach and follow-up
- Phone numbers for direct calling and verification
- Social media profiles for multichannel prospecting

**Business Identity Data**

- Business name
- Website
- Main phone number
- Business place identifier

**Location Data**

- Full address
- City
- State
- Postal code
- Country code

**Performance Data**

- Rating
- Review count
- Pages scraped
- Email count
- Scrape status

**Export-Friendly Output**

- Structured dataset output
- Ready for CRM import, spreadsheet review, or downstream analysis

#### Key Features of Wholesale Industry Email List Scraper ⚡

| Feature | Benefit |
|---|---|
| ✅ **Keyword-Targeted Search** | Helps you focus on a specific wholesale niche or business type |
| ✅ **Location Filtering** | Lets you narrow results to one or more geographic areas |
| ✅ **Public Contact Extraction** | Pulls emails, phone numbers, and social media from publicly available sources |
| ✅ **Configurable Business Limit** | Lets you cap results with `maxBusinesses` for predictable runs |
| ✅ **Per-Location Control** | Option to collect up to the limit for each location separately |
| ✅ **Proxy Support** | Adds reliability for larger wholesale prospecting data runs |
| ✅ **Real-Time Dataset Saving** | Saves results as they are found to reduce the risk of data loss |
| ✅ **Structured Output** | Makes the data easy to analyze, export, and use in B2B lead generation workflows |

### Wholesale Industry Email List Scraper User Guide 📖

#### Required Input Fields

```json
{
  "googleMapsSearchTerm": "Wholesale Industry",
  "googleMapsLocation": [
    "New York"
  ],
  "maxBusinesses": 5,
  "scrapeMaxBusinessesPerLocation": false,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| `googleMapsSearchTerm` | String | ✅ Yes | `Wholesale Industry` | The business type or niche you want to search for. |
| `googleMapsLocation` | Array | ✅ Yes | `["New York"]` | One or more geographic locations to target. |
| `maxBusinesses` | Integer | No | `5` | Maximum number of businesses with emails to find. The actor stops when it reaches this target. |
| `scrapeMaxBusinessesPerLocation` | Boolean | No | `false` | If enabled, the actor collects up to `maxBusinesses` results for each location. If disabled, all locations share one total limit. |
| `proxyConfiguration` | Object | No | `{"proxy support": true}` | Proxy settings for more reliable large-scale scraping. |

#### Required Output Fields

| Field | Type | Description |
|---|---|---|
| `name` | String | Business name. |
| `website` | URL | Business website. |
| `phone` | String | Main phone number listed for the business. |
| `full_address` | String | Full business address. |
| `city` | String | City where the business is located. |
| `state` | String | State or region. |
| `zip` | String | Postal code. |
| `country_code` | String | Country code. |
| `scraped_emails` | Array | Publicly available email addresses found for the business. |
| `scraped_phones` | Array | Publicly available phone numbers found for the business. |
| `scraped_social_media` | Array | Publicly available social media links found for the business. |
| `emails_found` | Number | Total number of emails found for that business. |
| `pages_scraped` | Number | Total number of pages processed during scraping. |
| `avg_rating` | Number | Business rating. |
| `total_reviews` | Number | Review count. |
| `lat` | String | Latitude value. |
| `long` | String | Longitude value. |
| `place_id` | String | Business place identifier. |
| `scrape_status` | String | Scraping status such as success, failed, error, or no\_website. |

**Example output:**

```json
{
  "name": "Atlantic Wholesale Supply",
  "website": "https://www.atlanticwholesalesupply.com",
  "phone": "+1 212-555-0148",
  "full_address": "245 West 29th Street New York NY 10001 US",
  "city": "New York",
  "state": "NY",
  "zip": "10001",
  "country_code": "US",
  "scraped_emails": [
    "sales@atlanticwholesalesupply.com"
  ],
  "scraped_phones": [
    "+1 212-555-0148"
  ],
  "scraped_social_media": [
    "https://www.linkedin.com/company/atlantic-wholesale-supply"
  ],
  "emails_found": 1,
  "pages_scraped": 4,
  "avg_rating": 4.6,
  "total_reviews": 128,
  "lat": "40.7484",
  "long": "-73.9942",
  "place_id": "ChIJrTLr-GyuEmsRBfy61i59si0",
  "scrape_status": "success"
}
```

### Solving Real Problems with Wholesale Industry Email List Scraper 💼

- 🎯 **Cold Email Outreach** — Build a wholesale lead database for targeted email outreach and sales campaigns
- 📣 **Supplier Prospecting** — Find supplier email list opportunities faster than manual research
- 🤝 **Distributor Outreach** — Identify distributor contact scraping targets for partnerships and outreach
- 🔬 **Market Research** — Use wholesale prospecting data to analyze business density, locations, and contact availability
- 📊 **CRM Enrichment** — Add contact scraping software outputs into your CRM or spreadsheet workflow
- ⚙️ **B2B Lead Generation** — Create a reusable pipeline for business email extractor campaigns and repeated prospecting

### Why Choose Our Wholesale Industry Email List Scraper? 🏆

- 💰 **Focused on wholesale leads** — Built for wholesale email scraping and industry email list extraction, not generic browsing
- ⚡ **Captures multiple contact types** — Collects emails, phones, and social media in one run for better outreach coverage
- 🔄 **Flexible location handling** — Supports one or more locations, with optional per-location result limits
- 📧 **Responsive support** — Reach the team at <insightflowofficial@gmail.com> for help or feature requests

### How Many Results Can You Scrape? 📈

- Use `maxBusinesses` to cap the number of businesses with emails, from 1 to 1000
- Results depend on how many relevant wholesale businesses are publicly available in your chosen locations
- You can improve output by using clearer search terms and broader location coverage
- For larger runs, enable proxy support to help keep scraping reliable

### Legal Guidelines for Scraping Wholesale Industry Data ⚖️

This actor only works with publicly available data. It does not require private accounts, logins, or restricted content. Users are responsible for following applicable laws and rules related to public web data, privacy, and outreach, including anti-spam requirements and platform policies. Please use this wholesale industry email list scraper only for legitimate business and research purposes. Data-removal requests: <insightflowofficial@gmail.com>.

### FAQ — Wholesale Industry Email List Scraper ❓

#### How does the Wholesale Industry Email List Scraper work?

You provide a search term and one or more locations, and the actor finds matching businesses, then collects publicly available contact details into a structured Apify dataset.

#### What kinds of businesses can I target?

You can target any wholesale-related niche or business type described by your search term, such as suppliers, distributors, or other wholesale businesses.

#### Can I use this for wholesale email scraping at scale?

Yes. The actor is designed for wholesale contact data mining and bulk email list scraper workflows, with proxy support and configurable result limits to keep runs manageable.

#### What data will I get back?

You can receive business names, websites, phone numbers, addresses, cities, states, postal codes, country codes, emails found, phone numbers, social media links, ratings, review counts, latitude, longitude, place IDs, and scrape status.

#### How is this useful for targeted email outreach?

It gives you a cleaner sales prospect list by organizing public business contact details into a dataset you can review, filter, and use for outreach planning.

#### What if a business has no website?

When no website is available, the actor marks the result with `scrape_status` set to `no_website`, and the contact arrays remain empty.

#### Who should use this actor?

It’s a strong fit for marketers, sales teams, data analysts, and researchers who need wholesale lead database creation or email data extraction from public business sources.

#### How can I get help?

If you need support, have a bug report, or want a custom feature, contact <insightflowofficial@gmail.com>.

### Final Word ✉️

The **Wholesale Industry Email List Scraper** is a practical shortcut to building a focused wholesale contact list from publicly available data. If you want faster B2B lead generation, better targeted email outreach, and cleaner prospecting workflows, this actor helps you get there with less manual effort. 🚀

### 🆘 Support & Feedback

Have a question or want a custom feature for the Wholesale Industry Email List Scraper?

- 🐞 **Bug Reports:** Share issues through your usual repository workflow
- ✨ **Custom Solutions & Feature Requests:** Contact our team
- 📧 **Email:** <insightflowofficial@gmail.com>

### Contact Confidence & Provenance

The business already gets a lead score. Now the *contact* gets one too.

| Field | Meaning |
| --- | --- |
| `contactConfidence` | 0-100 for this specific contact |
| `contactConfidenceBand` | `high` (80+), `good` (60-79), `medium` (40-59), `low` (<40) |
| `contactReason` | `own_domain`, `own_domain_role_account`, `free_webmail`, `third_party_domain`, `no_reply_address`, `no_email` |
| `emailMatchesWebsite` | Whether the address is on the business's own domain |
| `contactChannels` | How many ways you can reach them (email, phone) |
| `contactCategory` | Broad industry tag read from the business name and search term |
| `scrapedAt` | UTC timestamp, so you know how fresh the row is |

An address on the company's own domain scores highest; a no-reply address scores
near zero because it is not a way to reach anyone. Finding a phone alongside the
email adds to the score - two channels beat one.

`contactCategory` is left blank rather than guessed when the wording is too
generic to place the business.

**Input:** *Minimum contact confidence* drops rows below a score; `0` keeps
everything.

# Actor input Schema

## `googleMapsSearchTerm` (type: `string`):

Enter the business type or niche for email scraper (e.g., 'coffee shops', 'dentists').

## `googleMapsLocation` (type: `array`):

Target geographic location for the email scraper (e.g., 'Miami, Florida').

## `maxBusinesses` (type: `integer`):

Target number of businesses to find (1-1000). The scraper will stop when this target is reached.

## `scrapeMaxBusinessesPerLocation` (type: `boolean`):

If enabled, the scraper will collect up to `maxBusinesses` results per location. If disabled, it combines all locations up to a single total limit.

## `proxyConfiguration` (type: `object`):

Proxy settings for scraping. Recommended for large-scale scraping.

## `minBusinessLeadScore` (type: `integer`):

Drop any business whose Business Lead Score (0-100) falls below this. Leave at 0 for no filter.

## `minContactConfidence` (type: `integer`):

Drop any contact scoring below this (0-100). The score reflects whether the address sits on the business's own domain, whether it is a free webmail or no-reply address, and whether a phone number was found alongside it. Leave at 0 for no filter.

## Actor input object example

```json
{
  "googleMapsSearchTerm": "Wholesale Industry",
  "googleMapsLocation": [
    "New York"
  ],
  "maxBusinesses": 5,
  "scrapeMaxBusinessesPerLocation": false,
  "proxyConfiguration": {
    "useApifyProxy": true
  },
  "minBusinessLeadScore": 0,
  "minContactConfidence": 0
}
```

# Actor output Schema

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

No description

# 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 = {
    "googleMapsSearchTerm": "Wholesale Industry",
    "googleMapsLocation": [
        "New York"
    ],
    "maxBusinesses": 5,
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("insightflow/wholesale-industry-email-list-scraper").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 = {
    "googleMapsSearchTerm": "Wholesale Industry",
    "googleMapsLocation": ["New York"],
    "maxBusinesses": 5,
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("insightflow/wholesale-industry-email-list-scraper").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 '{
  "googleMapsSearchTerm": "Wholesale Industry",
  "googleMapsLocation": [
    "New York"
  ],
  "maxBusinesses": 5,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call insightflow/wholesale-industry-email-list-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,insightflow/wholesale-industry-email-list-scraper"
        }
    }
}

```

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/CDPJn2gZ2sRMe6L5i/builds/HwmgHizIo2RoGokwY/openapi.json
