# Lead List Verifier: Check Phones, Websites, MX and Duplicates

**Use case:** 

Run it after any lead scraper and see which rows are worth keeping. Pick a dataset or paste records, and each one comes back with its fields intact plus a verification object: the phone in E.164 with line type, the website as live, redirected, parked, dead or unknown, mail servers, duplicates, and a 0 to 100 score with reasons. Company lists only: person rows skip the phone check. Pay per record.

## Input

```json
{
  "records": [],
  "defaultCountry": "",
  "fieldMapping": {}
}
```

## Output

```json
{
  "title": {
    "label": "Title"
  },
  "name": {
    "label": "Name"
  },
  "companyName": {
    "label": "Company"
  },
  "verification.score": {
    "label": "Score",
    "format": "integer"
  },
  "verification.websiteStatus": {
    "label": "Website status",
    "format": "string"
  },
  "verification.domain": {
    "label": "Domain",
    "format": "string"
  },
  "verification.finalUrl": {
    "label": "Redirects to",
    "format": "string"
  },
  "verification.mx": {
    "label": "Mail servers",
    "format": "boolean"
  },
  "verification.phone": {
    "label": "Phone",
    "format": "object"
  },
  "verification.duplicateOf": {
    "label": "Duplicate of",
    "format": "integer"
  },
  "verification.reasons": {
    "label": "Reasons",
    "format": "array"
  }
}
```

## How it works

### 1. Sign up on Apify or log in

The Lead List Verifier: Phone, Website, MX, Duplicates Actor is ready to run with the inputs already set for "Lead List Verifier: Check Phones, Websites, MX and Duplicates". [Sign up or log in](https://console.apify.com/create-task-from-example/lkGzmyBgrhp78SKZc) and you'll land in Apify Console with a copy of this exact task.

### 2. Start the "Lead List Verifier: Check Phones, Websites, MX and Duplicates" task

The Lead List Verifier: Phone, Website, MX, Duplicates Actor will start running based on the input automatically. You can also change all the input fields, like pasted records and field mapping, to match your specific use case.

### 3. Receive the "Lead List Verifier: Check Phones, Websites, MX and Duplicates" output

Monitor the progress in real time. You will be notified as soon as your dataset is complete and ready for review. Each result includes data such as title, name, company, and more.

### 4. Integrate into your workflow

The final output is delivered in JSON, CSV, or Excel format, ready to be plugged into your workflow. You can also [run the "Lead List Verifier: Check Phones, Websites, MX and Duplicates" task via API](https://apify.com/verrr/lead-list-verifier.md).

## FAQ

### What do I enter?

Pick a dataset from an earlier scraper run, paste records as JSON, or both. Common fields such as company, website, phone, city and countryCode are found by themselves, and the log lists them. Use the field mapping only if yours differ.

### Can it run by itself after a scraper finishes?

It is built for that: open the scraper's Integrations tab, choose Add integration, pick this Actor and set its Dataset field to {{resource.defaultDatasetId}}. If the field is empty, the run stops with a message and charges for no record.

### What is the difference between dead and unknown?

Dead means there is proof: the domain has no address in DNS, or every route to it answers 404 or 410. Unknown means we could not tell, for example a site that blocks us or times out. A blocked site is never reported as dead.

### How is the score worked out?

Live website 40, redirected 20, unknown 15, valid phone 30, mail servers 20, company name 10, duplicate minus 30, kept between 0 and 100. Every record's reasons list shows what moved its score.

### Does it check email addresses?

No. It asks DNS whether the company's domain has mail servers. It does not validate, find or look up any mailbox, and it adds no personal data. Other fields of your own records pass through untouched.

### How much does it cost?

$0.0015 per record returned, which is $1.50 for 1,000 leads. Records that cannot be verified at all are not charged: the FAILED_ITEMS record in the run's key-value store gives each reason.

## About this Actor

This example demonstrates how to use [Lead List Verifier: Phone, Website, MX, Duplicates](https://apify.com/verrr/lead-list-verifier.md) with a specific input configuration. Visit the [Actor detail page](https://apify.com/verrr/lead-list-verifier.md) to learn more, explore other use cases, and run it yourself.


## How to integrate an Actor?

This Task's input is already configured above. Use it as-is rather than inventing a new one.

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

For full API examples (JavaScript, Python, CLI, MCP, OpenAPI), see this Task's Actor page: https://apify.com/verrr/lead-list-verifier.md

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