# Best Instagram Email Scraper (`solid-scraper/best-instagram-email-scraper`) Actor

📥 Extract Instagram emails fast with the Best Instagram Email Scraper! 🎯 Find verified contact info for outreach, marketing & lead generation. ⚡ Save time, boost conversions, and grow your business with smart scraping—no hassle.

- **URL**: https://apify.com/solid-scraper/best-instagram-email-scraper.md
- **Developed by:** [SolidScraper](https://apify.com/solid-scraper) (community)
- **Categories:** Lead generation, Social media, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.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/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use 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

### Best Instagram Email Scraper 📬

**Best Instagram Email Scraper** helps you **extract Instagram contact emails** from publicly available sources, so you can build a focused Instagram lead list without manual profile-by-profile hunting. If you’re searching for the **best email scraping software for Instagram**, an **Instagram email extractor tool**, or an **Instagram contact email finder**, this actor streamlines the workflow by letting you choose keywords, a target country, and the type of content to scan.  

Whether you’re a marketer, recruiter, researcher, or data enthusiast, you can use it to find business or consumer emails (B2B or B2C) at scale, saving you hours of manual work while keeping results structured for downstream outreach and analysis.

---

### Why choose Best Instagram Email Scraper?

| Feature | Benefit |
|---|---|
| ✅ **All-in-one Instagram scraping** | Extract emails from **profiles**, **posts**, **reels**, or **All** in a single run |
| ✅ **Reliability-focused engines** | Choose between **cost-effective** and **legacy** engines depending on your accuracy vs. speed needs |
| ✅ **Clear email targeting (B2B vs B2C)** | Filter results to the email type that matches your outreach goals |
| ✅ **Structured dataset output** | Get results with fields like `email`, `email_domain`, `email_type`, and `scrape_from` for easy importing |
| ✅ **Scales with limits you control** | Use `maxEmails` to cap collection and manage scraping time and cost |
| ✅ **Proxy + resilience support** | Built-in proxy support for more reliable scraping, with resilience for large runs |

---

### Key features

- 🔍 **Keyword-driven Instagram lead discovery**: Use the `keywords` array to search for relevant profiles around your niche (e.g., fitness, marketing)  
- 🌍 **Country targeting**: Pick a `country` to focus your results by region for more relevant Instagram influencer email scraper outcomes  
- 🧩 **Scrape from exactly what you need**: Choose `scrapeFrom` as **All**, **Profiles**, **Posts**, or **Reels**—great for an Instagram contact details scraper workflow  
- 📧 **B2B / B2C email harvesting**: Use `emailType` to target business emails or consumer emails (Instagram email list builder use cases)  
- ⚙️ **Engine selection for different tradeoffs**: Switch between **cost-effective** and **legacy** engines to balance speed and reliability  
- 🛡️ **Resilient scraping runs**: Includes resilience behavior suitable for larger searches and can be paired with longer run time limits  
- 💾 **Immediate, structured dataset storage**: Output is saved to a dataset with consistent fields, including `url` and `description`

---

### Input

Provide input via an `input.json` file. Example structure:

```json
{
  "keywords": ["fitness", "gym", "workout"],
  "country": "United States",
  "scrapeFrom": "All",
  "emailType": "B2C",
  "engine": "legacy",
  "maxEmails": 20
}
````

#### Input Fields

| Field | Required | Description |
|---|---:|---|
| `keywords` | ✅ | One or more keywords to search for on Instagram. These drive what leads you discover for your Instagram email extractor tool workflow. |
| `country` | ✅ | The country to target for the search. Use this to focus your Instagram contact email finder results by region. |
| `scrapeFrom` | ✅ | Choose where to scrape: **All**, **Profiles**, **Posts**, or **Reels**. Selecting **All** searches across every type. |
| `emailType` | ✅ | Choose which email type to collect: **B2C** or **B2B**. This helps match your outreach strategy. |
| `engine` | ❌ | Select the scraping engine: **cost-effective** (Cost Effective) or **legacy** (Legacy). Defaults to `legacy`. |
| `maxEmails` | ✅ | Maximum number of emails to collect. Higher values can increase coverage, but large runs may take longer. Must be between `1` and `10000`. |

***

### Output

The actor saves results in a dataset view called **Scraped Emails** (table format). Each scraped record includes the following JSON fields:

```json
[
  {
    "keyword": "fitness",
    "title": "Example Profile Title",
    "url": "https://instagram.com/exampleprofile",
    "description": "Example profile or page description snippet",
    "email": "name@example.com",
    "email_domain": "example.com",
    "email_type": "B2C",
    "scrape_from": "Profiles",
    "country": "United States"
  }
]
```

#### Output Fields

| Field | Type | Description |
|---|---|---|
| `keyword` | string | The keyword used to find the lead (useful for tracking which keywords perform best) |
| `title` | string | The title associated with the scraped result |
| `url` | string | Link to the relevant Instagram page (the dataset UI labels this as **View Profile**) |
| `description` | string | Text snippet/description captured during scraping |
| `email` | string | The extracted email address (when available) |
| `email_domain` | string | The domain portion of the extracted email (e.g., `example.com`) |
| `email_type` | string | Email type classification used in the run (**B2B** or **B2C**) |
| `scrape_from` | string | Where the email was scraped from (**All** / **Posts** / **Reels** / **Profiles**) |
| `country` | string | The selected target country for the run |

Note: The README schema provided does not include additional fields beyond the dataset view transformation fields shown above.

You can export your results in common formats from the dataset (for example, JSON and CSV) from Apify Console.

***

### How to use Best Instagram Email Scraper (via Apify Console)

1. **Open Apify Console** 🔐\
   Go to [console.apify.com](https://console.apify.com) and sign in.

2. **Find the actor**\
   Search for **Best Instagram Email Scraper** in the Actors marketplace list, then open the actor details page.

3. **Configure your input** 🧠\
   In the **INPUT** section, use the built-in form to enter:\
   your `keywords`, choose a `country`, set `scrapeFrom`, select `emailType`, and set `maxEmails`.

4. **(Optional) Choose the engine** ⚙️\
   If you need a specific tradeoff, set `engine` to either `cost-effective` or `legacy` (defaults to `legacy`).

5. **Run the actor** 🚀\
   Click **Run** to start the job. Watch the logs while it processes your requests. Large searches or high `maxEmails` may take longer.

6. **Review the output dataset** 📊\
   After completion, open the **OUTPUT** tab and open the dataset view **Scraped Emails**.

7. **Export and use your email list** ✉️\
   Export the dataset to plug into your CRM, outreach workflow, or an Instagram influencer email scraper pipeline. No coding required—get accurate results in minutes.

***

### Advanced features & SEO optimization

- 🚀 **Designed for Instagram email harvesting tool workflows**: Best Instagram Email Scraper is built to fit real lead-generation pipelines where you want **Instagram contact email finder** results tied to keywords and regions.
- 🧭 **Targeted “scrapeFrom” modes**: Whether your goal is an **Instagram DM email scraper**-style discovery workflow or profile-focused outreach, you can choose **Profiles**, **Posts**, **Reels**, or **All**.
- 🧪 **B2B and B2C modes**: Switch between `emailType` options to support both business outreach and consumer-focused campaigns, improving the usefulness of your Instagram email list builder output.
- 🛡️ **Engine choice for reliability and cost control**: The `engine` input helps you balance performance and robustness depending on your run size—useful for “best Instagram email scraper” comparisons.

***

### Best use cases

- 📈 **Lead generation for Instagram outreach**: Build an email list from niche-relevant Instagram profiles to power faster, keyword-driven campaigns.
- 🎯 **Influencer sourcing by niche**: Gather contact emails tied to your topic keywords and country targeting for more precise influencer email list builder results.
- 🧾 **Market research by region**: Compare email domains and titles across countries to understand where your audience is concentrated.
- 🏪 **Local business prospecting**: Use `country` and `scrapeFrom` to find likely contact emails from profiles and content types that match your target.
- 💼 **Recruitment and partnerships**: Use `emailType` (B2B vs B2C) to align contacts with collaboration, sponsorship, or business inquiry outreach.
- 🧠 **Data enrichment for CRM pipelines**: Feed structured output fields like `email_domain`, `email_type`, and `scrape_from` into spreadsheets or CRM imports.
- 🧬 **Email-domain analysis for deliverability research**: Analyze the `email_domain` distribution to guide segmentation and improve campaign performance.

***

### Technical specifications

- **Supported Input Formats**
  - ✅ `keywords` as an array of strings
  - ✅ `country` as a selectable country name
  - ✅ `scrapeFrom` as one of: `All`, `Profiles`, `Posts`, `Reels`
  - ✅ `emailType` as one of: `B2C`, `B2B`
  - ✅ `maxEmails` as an integer from `1` to `10000`
  - ✅ `engine` as one of: `cost-effective`, `legacy` (defaults to `legacy`)

- **Proxy Support**
  - ✅ Built-in proxy support for more reliable scraping runs
  - ✅ Engine selection supports different scraping approaches (`cost-effective` vs `legacy`)

- **Retry Mechanism**
  - ✅ Includes resilience behavior suitable for larger runs (exact retry counts and backoff are not exposed in the provided input schema)

- **Dataset Structure**
  - ✅ Dataset view: **Scraped Emails**
  - ✅ Output fields: `keyword`, `title`, `url`, `description`, `email`, `email_domain`, `email_type`, `scrape_from`, `country`

- **Rate Limits & Performance**
  - ⚠️ Large searches or high `maxEmails` may take longer; you can increase timeout in Run Options (default noted as `3600 s / 1 hr` in the actor input description)

- **Limitations**
  - ❌ Results depend on emails present in publicly available sources
  - ❌ Higher `maxEmails` increases collection attempts but does not guarantee that many unique emails will be found

***

### FAQ

#### Does Best Instagram Email Scraper require login to gather emails?

✅ No—this actor is intended to collect information from **publicly accessible sources** and does not require you to provide Instagram login credentials.

#### What email types can I extract?

✅ You can choose `emailType` as either **B2C** or **B2B** to target consumer or business-oriented emails for Instagram email extractor tool workflows.

#### Can I scrape only profiles instead of posts and reels?

✅ Yes. Use `scrapeFrom` and select **Profiles** if you want your Instagram email list builder to focus on profile pages only.

#### Is it possible to scrape across multiple content types in one run?

✅ Yes. Set `scrapeFrom` to **All** to search across profiles, posts, and reels in a single execution.

#### How do I control cost and runtime?

✅ Use `maxEmails` to cap how many emails the actor collects. Large searches or high limits may take longer, and you can increase the timeout in Run Options for big runs.

#### Can I switch between different scraping engines?

✅ Yes. Use the `engine` input with values `cost-effective` or `legacy` (default is `legacy`) depending on your needs.

#### What will the output dataset include?

✅ The dataset view **Scraped Emails** contains fields for `keyword`, `title`, `url`, `description`, `email`, `email_domain`, `email_type`, `scrape_from`, and `country`.

#### How should I use the collected emails responsibly?

✅ Always ensure you comply with applicable privacy laws, anti-spam regulations, and platform policies when using scraped data for outreach or marketing.

***

### Support & feature requests

If you’re using **Best Instagram Email Scraper** and want improvements or have questions about results, we’d love to hear from you 💬

- 💡 **Feature Requests**: Share enhancements like better export options, more customization around email-domain handling, or additional output fields that help your Instagram contact details scraper workflows.
- 📧 **Contact**: Reach out via <dataforleads@gmail.com>

Your feedback helps shape the roadmap for this Instagram email harvesting tool.

***

*Hope this helps you build the most comprehensive and SEO-optimized Instagram email list faster—Best Instagram Email Scraper makes it practical to extract emails at scale.*

***

### Disclaimer

**This tool accesses publicly accessible sources only.** It does not access private profiles, authenticated data, or password-protected content. You are responsible for complying with applicable laws and regulations (including GDPR/CCPA where relevant), spam regulations, and platform terms of service.

For data removal requests, contact <dataforleads@gmail.com>.

Please use this actor responsibly, ethically, and only for legitimate purposes.

# Actor input Schema

## `keywords` (type: `array`):

Enter one or more keywords to search for on Instagram.

## `country` (type: `string`):

Specify the country to target for Google search results.

## `scrapeFrom` (type: `string`):

Choose one option — All, Posts, Reels, or Profiles.

## `emailType` (type: `string`):

Choose one — B2C or B2B.

## `engine` (type: `string`):

Choose scraping engine. 🚀 Cost Effective (New): Uses residential proxies with async requests for faster, cheaper scraping. 🔧 Legacy: Uses GOOGLE\_SERP proxy with traditional selectors - more reliable but slower and more expensive.

## `maxEmails` (type: `integer`):

Enter the maximum number of emails to collect.

## Actor input object example

```json
{
  "keywords": [
    "fitness",
    "gym",
    "workout"
  ],
  "country": "United States",
  "scrapeFrom": "All",
  "emailType": "B2C",
  "engine": "legacy",
  "maxEmails": 20
}
```

# 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 = {
    "keywords": [
        "fitness",
        "gym",
        "workout"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("solid-scraper/best-instagram-email-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 = { "keywords": [
        "fitness",
        "gym",
        "workout",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("solid-scraper/best-instagram-email-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "keywords": [
    "fitness",
    "gym",
    "workout"
  ]
}' |
apify call solid-scraper/best-instagram-email-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=solid-scraper/best-instagram-email-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Best Instagram Email Scraper",
        "description": "📥 Extract Instagram emails fast with the Best Instagram Email Scraper! 🎯 Find verified contact info for outreach, marketing & lead generation. ⚡ Save time, boost conversions, and grow your business with smart scraping—no hassle.",
        "version": "1.0",
        "x-build-id": "fHTVe9S5jO5Wn7QjM"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/solid-scraper~best-instagram-email-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-solid-scraper-best-instagram-email-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/solid-scraper~best-instagram-email-scraper/runs": {
            "post": {
                "operationId": "runs-sync-solid-scraper-best-instagram-email-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/solid-scraper~best-instagram-email-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-solid-scraper-best-instagram-email-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "keywords",
                    "country",
                    "scrapeFrom",
                    "emailType",
                    "maxEmails"
                ],
                "properties": {
                    "keywords": {
                        "title": "Keywords",
                        "type": "array",
                        "description": "Enter one or more keywords to search for on Instagram.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "country": {
                        "title": "Country",
                        "enum": [
                            "United States",
                            "United Kingdom",
                            "Canada",
                            "Australia",
                            "Germany",
                            "France",
                            "India",
                            "Japan",
                            "Brazil",
                            "Italy",
                            "Spain",
                            "Netherlands",
                            "Sweden",
                            "Norway",
                            "Denmark",
                            "Finland",
                            "Poland",
                            "Czech Republic",
                            "Hungary",
                            "Romania",
                            "Bulgaria",
                            "Croatia",
                            "Slovenia",
                            "Slovakia",
                            "Estonia",
                            "Latvia",
                            "Lithuania",
                            "Portugal",
                            "Greece",
                            "Cyprus",
                            "Malta",
                            "Luxembourg",
                            "Ireland",
                            "Belgium",
                            "Austria",
                            "Switzerland",
                            "Liechtenstein",
                            "Iceland",
                            "South Korea",
                            "China",
                            "Mexico",
                            "Argentina",
                            "Chile",
                            "Colombia",
                            "Peru",
                            "Venezuela",
                            "Ecuador",
                            "Uruguay",
                            "Paraguay",
                            "Bolivia",
                            "Guyana",
                            "Suriname",
                            "French Guiana",
                            "Falkland Islands (Malvinas)",
                            "South Georgia and the South Sandwich Islands",
                            "Bonaire, Sint Eustatius and Saba",
                            "Curaçao",
                            "Aruba",
                            "Sint Maarten (Dutch part)",
                            "Turks and Caicos Islands",
                            "British Virgin Islands",
                            "Anguilla",
                            "Montserrat",
                            "Antigua and Barbuda",
                            "Barbados",
                            "Dominica",
                            "Grenada",
                            "Saint Kitts and Nevis",
                            "Saint Lucia",
                            "Saint Vincent and the Grenadines",
                            "Trinidad and Tobago",
                            "Jamaica",
                            "Bahamas",
                            "Belize",
                            "Costa Rica",
                            "Guatemala",
                            "Honduras",
                            "Nicaragua",
                            "Panama",
                            "El Salvador",
                            "Cuba",
                            "Dominican Republic",
                            "Haiti",
                            "Puerto Rico",
                            "U.S. Virgin Islands",
                            "American Samoa",
                            "Guam",
                            "Northern Mariana Islands",
                            "Saudi Arabia",
                            "United Arab Emirates",
                            "Bahrain",
                            "Iraq",
                            "Iran, Islamic Republic of",
                            "Israel",
                            "Jordan",
                            "Kuwait",
                            "Lebanon",
                            "Oman",
                            "Qatar",
                            "Syrian Arab Republic",
                            "Yemen",
                            "Afghanistan",
                            "Bangladesh",
                            "Bhutan",
                            "Maldives",
                            "Nepal",
                            "Pakistan",
                            "Sri Lanka",
                            "Myanmar",
                            "Cambodia",
                            "Lao People's Democratic Republic",
                            "Thailand",
                            "Viet Nam",
                            "Malaysia",
                            "Singapore",
                            "Brunei Darussalam",
                            "Philippines",
                            "Indonesia",
                            "Timor-Leste",
                            "Papua New Guinea",
                            "Fiji",
                            "New Zealand",
                            "Solomon Islands",
                            "Vanuatu",
                            "New Caledonia",
                            "French Polynesia",
                            "Wallis and Futuna",
                            "Samoa",
                            "Tonga",
                            "Tuvalu",
                            "Kiribati",
                            "Nauru",
                            "Federated States of Micronesia",
                            "Marshall Islands",
                            "Palau",
                            "Cook Islands",
                            "Niue",
                            "Tokelau"
                        ],
                        "type": "string",
                        "description": "Specify the country to target for Google search results.",
                        "default": "United States"
                    },
                    "scrapeFrom": {
                        "title": "Scrape From",
                        "enum": [
                            "All",
                            "Profiles",
                            "Posts",
                            "Reels"
                        ],
                        "type": "string",
                        "description": "Choose one option — All, Posts, Reels, or Profiles.",
                        "default": "All"
                    },
                    "emailType": {
                        "title": "Email Type",
                        "enum": [
                            "B2C",
                            "B2B"
                        ],
                        "type": "string",
                        "description": "Choose one — B2C or B2B.",
                        "default": "B2C"
                    },
                    "engine": {
                        "title": "Engine",
                        "enum": [
                            "cost-effective",
                            "legacy"
                        ],
                        "type": "string",
                        "description": "Choose scraping engine. 🚀 Cost Effective (New): Uses residential proxies with async requests for faster, cheaper scraping. 🔧 Legacy: Uses GOOGLE_SERP proxy with traditional selectors - more reliable but slower and more expensive.",
                        "default": "legacy"
                    },
                    "maxEmails": {
                        "title": "Max Emails",
                        "minimum": 1,
                        "maximum": 10000,
                        "type": "integer",
                        "description": "Enter the maximum number of emails to collect.",
                        "default": 20
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
