# Line Phone Number Scraper (`scraperoka/line-phone-number-scraper`) Actor

📞 Line Phone Number Scraper extracts verified phone numbers from LINE profiles quickly and accurately. Perfect for B2B lead generation, outreach, and market research. 🚀 Save time, boost conversions, and streamline your contact list with ease.

- **URL**: https://apify.com/scraperoka/line-phone-number-scraper.md
- **Developed by:** [Scraperoka](https://apify.com/scraperoka) (community)
- **Categories:** Lead generation, Automation, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.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

### Line Phone Number Scraper 🎯

Manually visiting hundreds of Line profiles to collect phone numbers wastes hours you don’t have. **Line Phone Number Scraper** automatically extracts phone numbers from Line bios, profiles, and post content using your keywords and country targeting. This line phone number scraper is ideal for marketers, recruiters, and growth teams who need a lead generation phone number scraper that can scale to thousands of results in a single run.

---

### What You Get: Sample Output

Here’s a sample record from a single run:

```json
{
  "platform": "Line",
  "keyword": "fitness",
  "title": "John Doe | Fitness Coach",
  "description": "🏋️ Fitness training | Contact us on WhatsApp +44 7700 900123",
  "url": "https://line.me/some-profile",
  "phone_number": "+447700900123",
  "country": "United Kingdom",
  "dial_code": "+44"
}
````

| Field | Type | What It Tells You |
|---|---|---|
| `platform` | string | Confirms the source platform for each lead (Line). |
| `keyword` | string | Which keyword you used to target this profile, useful for reporting and optimization. |
| `title` | string | Profile title text captured alongside the phone number. |
| `description` | string | The surrounding text where the phone number was detected, helpful for context during review. |
| `url` | string | The profile URL you can click to verify or enrich manually. |
| `phone_number` | string | The extracted phone number in E164 format for clean downstream usage. |
| `country` | string | The country name used to target numbers. |
| `dial_code` | string | The dial code associated with your selected country filter. |
| `status` | string | Indicates success/failure at the record level when returned by your run (see FAQ for error behavior). |
| `error_message` | string | Populated with details if the actor encounters an error while pushing or processing output. |

Export your dataset as JSON, CSV, or Excel — straight from the Apify dashboard.

***

### Why Line Phone Number Scraper?

There are a lot of ways to pull contact data from messaging-app profiles — here’s what sets **Line Phone Number Scraper** apart.

#### Keyword + Country Targeting That Actually Narrows Results

This LINE ID phone number scraper uses your `keywords` plus a selected `country` (dial code) to focus on the phone numbers most relevant to your outreach. That means less manual cleanup when you’re trying to scrape line numbers at scale.

#### Works Directly on Public Profile Content

You’re extracting phone numbers from Line bios, profiles, and post content. The Line contact phone extractor is designed for public web data, so you can build lists faster without writing code.

#### Deduplicated Phone Numbers for Cleaner Lead Lists

The actor avoids duplicates by tracking already-seen numbers during the run. This helps keep your automated phone number scraping tool output consistent for CRM imports and research datasets.

#### Built for Resilient Bulk Runs

Large scraping tasks may take time, and the actor includes resilience patterns like progress saving and stopping when your `maxPhoneNumbers` target is reached. It’s built to keep working toward your goal without losing progress.

***

### Configuring Your Run

Drop this into your `input.json` to get started:

```json
{
  "keywords": ["fitness", "fashion"],
  "location": "London",
  "country": "United Kingdom (+44)",
  "maxPhoneNumbers": 50
}
```

| Parameter | Required | What It Does |
|---|---|---|
| `keywords` | ✅ | Enter the keywords to search for (for example, “fitness” or “fashion”). |
| `location` | ⬜ | Optional location filter (e.g., “London” or “California”). Leave empty for global search. |
| `country` | ✅ | Select the country to target for phone numbers using the matching dial code. |
| `maxPhoneNumbers` | ⬜ | Stop scraping after this many phone numbers are found. Higher limits can extend scraping duration. |

***

### Core Capabilities

#### Phone Numbers from Line Bios, Profiles, and Posts

This Line phone number scraper is designed specifically to extract phone numbers from Line bios, profiles, and post content. It’s an effective phone number scraping software choice when your research needs real contact details extracted from public profile text.

#### Smarter Targeting with Keywords, Location, and Country

Use `keywords` to focus the search and choose the right `country` so the results match your outreach region. You can also narrow further with `location` to improve precision when scraping line numbers.

#### Stop Condition for Controlled Lead Generation

Set `maxPhoneNumbers` to cap results so you can run quick tests or build a specific-sized list. This helps when you’re doing mass phone number scraping for campaigns with a defined prospecting volume.

#### Progress Saving for Long Runs

The actor saves progress in a key-value store so long scraping tasks can resume instead of starting from scratch. This is useful for an automated phone number scraping tool workflow where time and continuity matter.

#### Structured Dataset Output for Easy Exports

Each discovered phone number is pushed to the Apify dataset with consistent fields like `keyword`, `title`, `url`, `phone_number`, `country`, and `dial_code`. That makes the LINE contact phone extractor output straightforward for export and analysis.

#### Works Well for Research and Outreach Pipelines

The output is designed to plug into downstream workflows where you need extract contacts phone numbers reliably, such as lead generation phone number scraper use cases for B2B contact phone number scraper research and list building.

***

### Who Gets the Most Out of This

Here’s how different teams put **Line Phone Number Scraper** to work:

**Lead Generation Managers** — Build a targeted phone number list for outreach by running scrape line numbers with keywords and a country dial code, then exporting the dataset directly to your CRM workflow. The result is less time spent hunting for contacts and more time running campaigns.

**Sales Development Representatives** — Use this LINE contact phone extractor to create prospect batches faster, especially when your ICP shares common messaging-app themes and public profile bios. You get a ready-to-import set of phone numbers instead of a spreadsheet full of missing data.

**Freelance Researchers & Data Analysts** — Extract phone numbers from public Line profile content to support studies, market mapping, or contact-audience research. The structured dataset fields (including `url` and context `description`) make it easier to audit and analyze sources.

**Automation & Integration Specialists** — Trigger the actor and pull results programmatically using the Apify API, then push them into your pipeline. This is a solid data scraping phone numbers tool when you need repeatable runs with controlled limits via `maxPhoneNumbers`.

**B2B Outreach Teams** — Improve the relevance of a business phone number scraper list by adjusting `keywords`, `location`, and `country`. It helps align extracted results with regional targeting for more consistent lead generation phone number scraper outputs.

***

### Step-by-Step: How to Use It

No coding needed. Here’s how to run **Line Phone Number Scraper** from start to finish:

1. **Open the actor on Apify** — visit [console.apify.com](https://console.apify.com) and find Line Phone Number Scraper.
2. **Enter your inputs** — set `keywords`, choose `country`, and optionally add `location` and `maxPhoneNumbers`.
3. **Configure proxy settings** — use the run’s proxy options in the Apify UI for improved reliability on bulk tasks.
4. **Hit Run and watch the live log** — confirm it’s progressing and watch for completion or early stopping once your target is reached.
5. **View results in the dataset tab** — the actor pushes records into the dataset incrementally.
6. **Export as JSON, CSV, or Excel** — download the dataset from Apify once the run completes.

The whole process takes under 5 minutes to set up.

***

### Integrations & Export Options

Once your data is collected, **Line Phone Number Scraper** plugs directly into your existing workflow.

You can export results from the Apify dataset tab in common formats like JSON and CSV, then import into tools like spreadsheets and CRMs. If you prefer automations, you can connect the actor run to your stack using Apify’s native integration capabilities, plus no-code tools like Zapier or Make.

For developers, you can access results via the Apify API and integrate them into pipelines, dashboards, or databases. If you want to trigger downstream actions when a run completes, use Apify automations and webhooks (see Apify docs for the latest setup options): [apify.com/docs/api](https://apify.com/docs/api).

***

### Pricing & Free Trial

Line Phone Number Scraper runs on the Apify platform, which offers a **free tier** — no credit card required to get started.

Free tier usage is limited by Apify’s monthly credits, which are typically enough for several test runs. For larger or repeated scraping jobs, you can use Apify’s pay-as-you-go approach based on Actor compute units (CU) without committing to a monthly fee.

For up-to-date plan details and compute pricing, check the Apify pricing page. Start for free at [apify.com](https://apify.com) and scale when you're ready.

***

### Reliability & Performance

| What We Handle | How |
|---|---|
| Rate limiting concerns in bulk runs | Uses resilient run behavior designed for scraping tasks at scale. |
| Proxy support | Built-in proxy support for reliable scraping on large jobs. |
| Long tasks | You can control run duration with `maxPhoneNumbers`, and you can adjust run timeout in Run Options (default is 3600s / 1hr). |
| Progress continuity | Saves progress so runs can resume without starting over. |
| Duplicates | Deduplicates phone numbers within a run to keep output clean. |
| Output completeness | Pushes structured rows incrementally into the dataset. |

**Limitations:** This actor extracts phone numbers from publicly available content in Line bios, profiles, and post content. If there is limited public phone number data for your chosen keywords and country, you may receive fewer results than expected.

For enterprise-scale runs, contact us to discuss custom configurations.

***

### Frequently Asked Questions

#### Is there a free plan or trial?

Yes, Apify offers a free tier so you can run Line Phone Number Scraper and test results. Larger scraping tasks may require a paid Apify plan depending on your usage.

#### Do I need to log in to Line to use this?

No. This Line phone number scraper works with publicly available sources and extracts phone numbers from public Line profile content.

#### How accurate is the data?

Accuracy depends on what’s publicly listed in the profile text where the phone number appears. The actor extracts phone numbers it detects in the captured profile content and formats them in E164 form.

#### How many results can I get per run?

You control results using `maxPhoneNumbers`, which stops scraping once the set number of phone numbers is reached. The maximum value allowed by the input schema is 10000.

#### How often is the data updated / how fresh is it?

The dataset reflects what’s publicly available at the time of your run. If you need fresh results, schedule or re-run the actor as needed.

#### Is this legal? Does it comply with GDPR / CCPA?

You can only access **publicly available data**, but compliance still depends on how you use and store the results. You are responsible for following GDPR, CCPA, platform Terms of Service, and applicable local regulations.

#### Can I export results to Google Sheets or Excel?

Yes. You can export your dataset from the Apify dashboard and import it into Google Sheets or Excel using your preferred workflow.

#### Can I run this on a schedule automatically?

Yes. You can automate runs using Apify scheduling so the actor runs on a cadence that fits your lead generation or research workflow.

#### Can I access this via API?

Yes. You can trigger and retrieve actor results programmatically using the Apify API: [apify.com/docs/api](https://apify.com/docs/api).

#### What happens if the actor hits an error?

If errors occur during processing or pushing output, the run will continue as designed and the dataset will include only successfully pushed records. If you want help diagnosing issues, reach out to support via email.

***

### Need Help or Have a Request?

Got a question about **Line Phone Number Scraper** or want a new feature added? Reach out at <dataforleads@gmail.com>. We welcome requests and actively maintain this actor based on user feedback, including ideas like webhook notifications on run completion and batch upload improvements.

***

### Disclaimer & Responsible Use

*Line Phone Number Scraper is the fastest, most reliable way to extract publicly available phone numbers from Line profiles — start your free run today.*

This actor collects data only from **publicly available data**. It does not access private accounts, login-gated content, or password-protected pages. You are responsible for GDPR, CCPA, platform Terms of Service, and any applicable local regulations. For data removal requests, contact <dataforleads@gmail.com>. Use responsibly, ethically, and only for lawful purposes.

# Actor input Schema

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

Enter keywords to search for (e.g., 'Target Keyword').

## `location` (type: `string`):

Filter by location (e.g., 'London', 'California'). Leave empty for global search.

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

Select the country to target for phone numbers.

## `maxPhoneNumbers` (type: `integer`):

Stop scraping after this many phone numbers are found. Setting a higher limit extends the scraping duration.

## Actor input object example

```json
{
  "keywords": [
    "fashion",
    "fitness"
  ],
  "country": "United Kingdom (+44)",
  "maxPhoneNumbers": 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": [
        "fashion",
        "fitness"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("scraperoka/line-phone-number-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": [
        "fashion",
        "fitness",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("scraperoka/line-phone-number-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": [
    "fashion",
    "fitness"
  ]
}' |
apify call scraperoka/line-phone-number-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=scraperoka/line-phone-number-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Line Phone Number Scraper",
        "description": "📞 Line Phone Number Scraper extracts verified phone numbers from LINE profiles quickly and accurately. Perfect for B2B lead generation, outreach, and market research. 🚀 Save time, boost conversions, and streamline your contact list with ease.",
        "version": "0.1",
        "x-build-id": "Y8EItBqdH1MafSuly"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scraperoka~line-phone-number-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scraperoka-line-phone-number-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/scraperoka~line-phone-number-scraper/runs": {
            "post": {
                "operationId": "runs-sync-scraperoka-line-phone-number-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/scraperoka~line-phone-number-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-scraperoka-line-phone-number-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"
                ],
                "properties": {
                    "keywords": {
                        "title": "Keywords",
                        "type": "array",
                        "description": "Enter keywords to search for (e.g., 'Target Keyword').",
                        "default": [
                            "fashion",
                            "fitness"
                        ],
                        "items": {
                            "type": "string"
                        }
                    },
                    "location": {
                        "title": "Location",
                        "type": "string",
                        "description": "Filter by location (e.g., 'London', 'California'). Leave empty for global search."
                    },
                    "country": {
                        "title": "Country",
                        "enum": [
                            "Afghanistan (+93)",
                            "Albania (+355)",
                            "Algeria (+213)",
                            "Andorra (+376)",
                            "Angola (+244)",
                            "Antigua And Barbuda (+1-268)",
                            "Argentina (+54)",
                            "Armenia (+374)",
                            "Australia (+61)",
                            "Austria (+43)",
                            "Azerbaijan (+994)",
                            "Bahamas (+1-242)",
                            "Bahrain (+973)",
                            "Bangladesh (+880)",
                            "Barbados (+1-246)",
                            "Belarus (+375)",
                            "Belgium (+32)",
                            "Belize (+501)",
                            "Benin (+229)",
                            "Bhutan (+975)",
                            "Bolivia (+591)",
                            "Bosnia And Herzegovina (+387)",
                            "Botswana (+267)",
                            "Brazil (+55)",
                            "Brunei (+673)",
                            "Bulgaria (+359)",
                            "Burkina Faso (+226)",
                            "Burundi (+257)",
                            "Cambodia (+855)",
                            "Cameroon (+237)",
                            "Canada (+1)",
                            "Cape Verde (+238)",
                            "Central African Republic (+236)",
                            "Chad (+235)",
                            "Chile (+56)",
                            "China (+86)",
                            "Colombia (+57)",
                            "Comoros (+269)",
                            "Congo (Democratic Republic) (+243)",
                            "Congo (Republic) (+242)",
                            "Costa Rica (+506)",
                            "Croatia (+385)",
                            "Cuba (+53)",
                            "Cyprus (+357)",
                            "Czech Republic (+420)",
                            "Denmark (+45)",
                            "Djibouti (+253)",
                            "Dominica (+1-767)",
                            "Dominican Republic (+1-809)",
                            "East Timor (+670)",
                            "Ecuador (+593)",
                            "Egypt (+20)",
                            "El Salvador (+503)",
                            "Equatorial Guinea (+240)",
                            "Eritrea (+291)",
                            "Estonia (+372)",
                            "Eswatini (+268)",
                            "Ethiopia (+251)",
                            "Fiji (+679)",
                            "Finland (+358)",
                            "France (+33)",
                            "Gabon (+241)",
                            "Gambia (+220)",
                            "Georgia (+995)",
                            "Germany (+49)",
                            "Ghana (+233)",
                            "Greece (+30)",
                            "Grenada (+1-473)",
                            "Guatemala (+502)",
                            "Guinea (+224)",
                            "Guinea-Bissau (+245)",
                            "Guyana (+592)",
                            "Haiti (+509)",
                            "Honduras (+504)",
                            "Hungary (+36)",
                            "Iceland (+354)",
                            "India (+91)",
                            "Indonesia (+62)",
                            "Iran (+98)",
                            "Iraq (+964)",
                            "Ireland (+353)",
                            "Israel (+972)",
                            "Italy (+39)",
                            "Jamaica (+1-876)",
                            "Japan (+81)",
                            "Jordan (+962)",
                            "Kazakhstan (+7)",
                            "Kenya (+254)",
                            "Kiribati (+686)",
                            "Korea, North (+850)",
                            "Korea, South (+82)",
                            "Kuwait (+965)",
                            "Kyrgyzstan (+996)",
                            "Laos (+856)",
                            "Latvia (+371)",
                            "Lebanon (+961)",
                            "Lesotho (+266)",
                            "Liberia (+231)",
                            "Libya (+218)",
                            "Liechtenstein (+423)",
                            "Lithuania (+370)",
                            "Luxembourg (+352)",
                            "Madagascar (+261)",
                            "Malawi (+265)",
                            "Malaysia (+60)",
                            "Maldives (+960)",
                            "Mali (+223)",
                            "Malta (+356)",
                            "Marshall Islands (+692)",
                            "Mauritania (+222)",
                            "Mauritius (+230)",
                            "Mexico (+52)",
                            "Micronesia (+691)",
                            "Moldova (+373)",
                            "Monaco (+377)",
                            "Mongolia (+976)",
                            "Montenegro (+382)",
                            "Morocco (+212)",
                            "Mozambique (+258)",
                            "Myanmar (+95)",
                            "Namibia (+264)",
                            "Nauru (+674)",
                            "Nepal (+977)",
                            "Netherlands (+31)",
                            "New Zealand (+64)",
                            "Nicaragua (+505)",
                            "Niger (+227)",
                            "Nigeria (+234)",
                            "North Macedonia (+389)",
                            "Norway (+47)",
                            "Oman (+968)",
                            "Pakistan (+92)",
                            "Palau (+680)",
                            "Panama (+507)",
                            "Papua New Guinea (+675)",
                            "Paraguay (+595)",
                            "Peru (+51)",
                            "Philippines (+63)",
                            "Poland (+48)",
                            "Portugal (+351)",
                            "Qatar (+974)",
                            "Romania (+40)",
                            "Russia (+7)",
                            "Rwanda (+250)",
                            "Saint Kitts And Nevis (+1-869)",
                            "Saint Lucia (+1-758)",
                            "Saint Vincent And The Grenadines (+1-784)",
                            "Samoa (+685)",
                            "San Marino (+378)",
                            "Sao Tome And Principe (+239)",
                            "Saudi Arabia (+966)",
                            "Senegal (+221)",
                            "Serbia (+381)",
                            "Seychelles (+248)",
                            "Sierra Leone (+232)",
                            "Singapore (+65)",
                            "Slovakia (+421)",
                            "Slovenia (+386)",
                            "Solomon Islands (+677)",
                            "Somalia (+252)",
                            "South Africa (+27)",
                            "South Sudan (+211)",
                            "Spain (+34)",
                            "Sri Lanka (+94)",
                            "Sudan (+249)",
                            "Suriname (+597)",
                            "Sweden (+46)",
                            "Switzerland (+41)",
                            "Syria (+963)",
                            "Taiwan (+886)",
                            "Tajikistan (+992)",
                            "Tanzania (+255)",
                            "Thailand (+66)",
                            "Togo (+228)",
                            "Tonga (+676)",
                            "Trinidad And Tobago (+1-868)",
                            "Tunisia (+216)",
                            "Turkey (+90)",
                            "Turkmenistan (+993)",
                            "Tuvalu (+688)",
                            "Uganda (+256)",
                            "Ukraine (+380)",
                            "United Arab Emirates (+971)",
                            "United Kingdom (+44)",
                            "United States (+1)",
                            "Uruguay (+598)",
                            "Uzbekistan (+998)",
                            "Vanuatu (+678)",
                            "Vatican City (+39-06)",
                            "Venezuela (+58)",
                            "Vietnam (+84)",
                            "Yemen (+967)",
                            "Zambia (+260)",
                            "Zimbabwe (+263)"
                        ],
                        "type": "string",
                        "description": "Select the country to target for phone numbers.",
                        "default": "United Kingdom (+44)"
                    },
                    "maxPhoneNumbers": {
                        "title": "Max Phone Numbers",
                        "minimum": 1,
                        "maximum": 10000,
                        "type": "integer",
                        "description": "Stop scraping after this many phone numbers are found. Setting a higher limit extends the scraping duration.",
                        "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
