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

📩 Best Instagram Email Scraper helps you extract Instagram email addresses quickly and accurately. 🚀 Perfect for lead generation, outreach & influencer marketing. 🔒 Easy to use, built for reliable results—grow your pipeline faster!

- **URL**: https://apify.com/scrapers-hub/best-instagram-email-scraper.md
- **Developed by:** [Scrapers Hub](https://apify.com/scrapers-hub) (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/docs.md):

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

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.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/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 business and consumer emails from Instagram profiles at scale. If you’re searching for the **best instagram email scraper**, an **instagram lead email extractor**, or an **instagram contact email finder**, this actor streamlines the workflow so you can build outreach lists faster—using keywords, country targeting, and a selectable “scrape from” scope.

Whether you’re a marketer, researcher, or growth team member, this **instagram email scraping tool** is designed to save you time when collecting contact emails tied to relevant Instagram content. Run it once, and use the results to jump-start campaigns instead of manually chasing leads one profile at a time.

---

### 🚀 Why choose Best Instagram Email Scraper?

| Feature | Benefit |
|---|---|
| ✅ **All-in-one email extraction** | Extract emails plus profile/context details in one run using keywords, country, and selection of scrape scope |
| ✅ **Built-in reliability & fallbacks** | Improves scraping success with resilience designed for real-world access issues |
| ✅ **Targeted email type selection** | Choose **B2B** or **B2C** to better match your outreach goals (instagram influencer email scraper / outreach email extractor workflows) |
| ✅ **Structured dataset output** | Produces consistent fields like `email`, `email_domain`, `email_type`, and `scrape_from` for easier analysis |
| ✅ **Scale controls** | Use **Max Emails** to manage time and cost while collecting up to your desired number |
| ✅ **Proxy-friendly scraping engine options** | Offers an engine choice to balance speed and reliability (Cost Effective vs Legacy) |

---

### 🔑 Key features

- 🎯 **Keyword-driven Instagram email collection**: Use the `keywords` input to focus results around your niche (e.g. fitness, marketing)  
- 🌍 **Country targeting**: Set `country` to focus the run on a specific geography  
- 🧾 **Email Type targeting (B2B or B2C)**: Choose `emailType` to align output with business leads or consumer outreach  
- 🧩 **Flexible scrape scope**: Select `scrapeFrom` as **All**, **Profiles**, **Posts**, or **Reels** to match your research workflow  
- 🛡️ **Reliable scraping engine choice**: Pick between **Cost Effective (New)** and **Legacy** engines depending on your needs  
- 🔄 **Resilience for real-world access**: Includes handling designed to keep runs productive even when some requests fail  
- 💾 **Instant structured results in a dataset**: Every extracted record is stored with standardized fields for downstream use  
- 📊 **Cost control via Max Emails**: Use `maxEmails` (min 1, max 10000) to stop after collecting the number you need  

---

### 📝 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. This drives what kind of profiles/content you’ll target. |
| `country` | ✅ | The country to target for results. This helps you focus your lead email extractor output by geography. |
| `scrapeFrom` | ✅ | Where to scrape from: **All**, **Profiles**, **Posts**, or **Reels**. Choose **All** to search across every type. |
| `emailType` | ✅ | Select the kind of email to look for: **B2C** (consumer) or **B2B** (business). |
| `engine` | ❌ | Choose scraping engine. **Cost Effective (New)** is faster/cheaper via residential proxies with async requests, while **Legacy** is more reliable but slower and more expensive. |
| `maxEmails` | ✅ | The maximum number of emails to collect. Use this to control scraping time and cost (minimum 1, maximum 10000). |

***

### 📦 Output

The actor saves each scraped record into a dataset in JSON format. The dataset transformation fields are:

```json
[
  {
    "keyword": "fitness",
    "title": "Example profile or result title",
    "url": "https://instagram.com/exampleprofile",
    "description": "Example snippet/description text",
    "email": "contact@example.com",
    "email_domain": "example.com",
    "email_type": "B2C",
    "scrape_from": "All",
    "country": "United States"
  }
]
```

#### Output Fields

| Field | Type | Description |
|---|---|---|
| `keyword` | string | The keyword used for the search context that led to this result |
| `title` | string | The title associated with the scraped result/profile context |
| `url` | string | A URL pointing to the scraped Instagram result/profile (shown as “View Profile” in the dataset UI) |
| `description` | string | The description/snippet text extracted alongside the result |
| `email` | string | The email address found for the result |
| `email_domain` | string | The domain part of the email (e.g., `example.com`) |
| `email_type` | string | Indicates whether the email matches your `emailType` selection (B2B or B2C) |
| `scrape_from` | string | Indicates where the email/context was scraped from (based on your `scrapeFrom` selection) |
| `country` | string | The country used for the run |

> Tip: You can export this dataset to formats like JSON/CSV from the Apify platform after the run completes.

***

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

1. **Open Apify Console**
   Log in at [console.apify.com](https://console.apify.com).

2. **Find the actor**
   Search for **Best Instagram Email Scraper** in the Actors list and open the actor page.

3. **Go to the INPUT section**
   Use the built-in form or upload an `input.json` matching the schema.

4. **Set your targeting**
   Enter `keywords`, choose a `country`, and select `scrapeFrom` (**All**, **Profiles**, **Posts**, or **Reels**) depending on whether you want broad discovery or focused extraction.

5. **Choose your email goal**
   Select `emailType` as **B2B** or **B2C** to guide whether you’re building a business leads list or consumer outreach email list.

6. **Control scale with Max Emails**
   Set `maxEmails` to your desired limit. Large limits may take longer.

7. **(Optional) Pick an engine**
   Choose `engine` based on your needs: **Cost Effective (New)** for faster/cheaper runs, or **Legacy** for a more reliable approach.

8. **Run and monitor results**
   Start the run, then check logs and finish by opening the dataset output. Export your collected emails for downstream steps like CRM import or analysis.

No coding required — get accurate results in minutes with this **instagram email collection tool**.

***

### ⚙️ Advanced features & SEO optimization

- 🔍 **Engineered-for-purpose Instagram outreach email scraper**: Built to excel at extracting emails for **instagram outreach email scraper** and **instagram influencer email scraper** workflows
- ⏱️ **Timeout-aware scaling**: Large searches/high email limits may take longer; you can adjust run timeout in **Run Options** when needed (default mentioned: 3600 s / 1 hr)
- 🧭 **Input normalization for discovery**: Uses your keywords + country + scrape scope to guide what it collects for **how to find emails from instagram** use cases
- 🧾 **Consistent dataset fields for analysis**: Standard output columns like `email_domain`, `email_type`, and `scrape_from` make it easier to filter and segment your results for `instagram email marketing list scraper` campaigns

***

### 🎯 Best use cases

- 📈 **Marketing teams building outreach lists**: Collect emails tied to relevant Instagram niches faster than manual research
- 🧑‍💼 **B2B lead generation**: Use `emailType: "B2B"` to generate a more business-focused instagram email scraper for business leads workflow
- 🛍️ **B2C campaigns**: Use `emailType: "B2C"` to build consumer outreach lists and test offers with targeted content themes
- 🎬 **Influencer discovery for partnerships**: Scrape from **Profiles**, **Posts**, or **Reels** to support instagram influencer email scraper and outreach email extractor needs
- 🌍 **Geo-targeted research**: Compare lead pools across regions by running the actor with different `country` values
- 🧠 **Data analysis & enrichment pipelines**: Feed `email_domain` + `country` + `email_type` into your models, scoring, and segmentation steps
- 🔄 **Repeatable prospecting at scale**: Use `maxEmails` to run controlled batches for continuous instagram data extraction email collection

***

### 🔧 Technical specifications

- **Supported Input Formats** ✅\
  Provide an Apify run input matching these fields: `keywords` (array), `country`, `scrapeFrom`, `emailType`, plus optional `engine` and `maxEmails`.

- **Proxy Support** ✅\
  Proxy-friendly scraping is supported via an `engine` choice that includes a **Cost Effective (New)** option and a **Legacy** option.

- **Retry Mechanism** ✅\
  Includes resilience designed to keep runs productive (fallback handling is built in).

- **Dataset Structure** ✅\
  Saves records with fields: `keyword`, `title`, `url`, `description`, `email`, `email_domain`, `email_type`, `scrape_from`, `country`.

- **Rate Limits & Performance** ⚠️\
  Performance depends on the search scope and your `maxEmails` setting. Higher limits can take longer.

- **Limitations** ⚠️\
  Results are based on **emails available from publicly accessible sources**. Not every profile or result will contain an email.

***

### ❓ FAQ

#### ✅ Does Best Instagram Email Scraper extract emails from Instagram profiles only?

It extracts emails based on your `scrapeFrom` choice. You can scrape **Profiles**, **Posts**, **Reels**, or **All** to cover multiple content types using the same instagram email scraper tool workflow.

#### ✅ Can I choose B2B vs B2C emails?

Yes. Use the `emailType` input to select **B2B** or **B2C**, which tailors the output for your instagram lead email extractor or consumer outreach needs.

#### ❌ Do I need to write any code to run it?

No. You can run it directly in Apify Console by filling out the input fields and starting the run. This is a no-code friendly instagram email collection tool.

#### 💻 How do I get the results after the run?

After execution, open the actor’s **output dataset** to view the table (including `email`, `email_domain`, `email_type`, and `url`). From there you can export your results for analysis or CRM imports.

#### 🌍 What does the `country` input do?

`country` lets you focus the run on a specific geography, helping you produce more targeted results for geo-specific instagram contact email finder use cases.

#### 📊 What is `maxEmails` for?

`maxEmails` is the maximum number of emails to collect. It’s there for cost/time control—use it to stop once you’ve gathered enough entries for your campaign or research.

#### 🛠️ Are there different engine options?

Yes. You can select `engine` as **cost-effective** (Cost Effective (New)) or **legacy** (Legacy). Choose based on whether you prefer faster/cheaper runs or a more reliable approach.

#### ⚖️ Is this compliant to use for outreach?

The actor collects information from **publicly accessible sources**. You’re responsible for following applicable laws, privacy regulations, anti-spam requirements, and platform policies when using the resulting contacts.

***

### 🤝 Support & feature requests

If you’re using **Best Instagram Email Scraper** and want improvements, we’d love your feedback.

- 💡 **Feature Requests**: Want enhancements like additional output fields, CSV-first exports, or workflow-specific filters for instagram email scraping software use cases? Share your ideas.
- 📧 **Contact**: For support and custom feature requests, email <dataforleads@gmail.com>.

Your feedback helps shape the roadmap for making this best instagram email scraper even more useful.

***

### *Best Instagram Email Scraper* — final thoughts

*This is a comprehensive, SEO-optimized instagram email collection tool built to help you extract outreach-ready emails faster.*\
*Try the Best Instagram Email Scraper and scale your Instagram lead research with confidence.*

***

### Disclaimer

**This tool accesses publicly accessible sources only.** It does not access private profiles, authenticated data, or password-protected pages.

You are responsible for complying with applicable laws and regulations (including GDPR/CCPA where relevant), spam/marketing requirements, and platform Terms of Service when using the extracted data. For any data removal requests, contact <dataforleads@gmail.com>.

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

# 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("scrapers-hub/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("scrapers-hub/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 scrapers-hub/best-instagram-email-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Best Instagram Email Scraper",
        "description": "📩 Best Instagram Email Scraper helps you extract Instagram email addresses quickly and accurately. 🚀 Perfect for lead generation, outreach & influencer marketing. 🔒 Easy to use, built for reliable results—grow your pipeline faster!",
        "version": "1.0",
        "x-build-id": "L1KqWdVcxVh5OXj2T"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scrapers-hub~best-instagram-email-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scrapers-hub-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/scrapers-hub~best-instagram-email-scraper/runs": {
            "post": {
                "operationId": "runs-sync-scrapers-hub-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/scrapers-hub~best-instagram-email-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-scrapers-hub-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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
