Email Check avatar
Email Check
Under maintenance

Pricing

from $0.01 / 1,000 results

Go to Apify Store
Email Check

Email Check

Under maintenance

A powerful Apify Actor that validates email addresses through multiple verification levels. This actor performs comprehensive email validation including format checking, DNS verification, and mailbox existence testing.

Pricing

from $0.01 / 1,000 results

Rating

0.0

(0)

Developer

Balasai Sigireddy

Balasai Sigireddy

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

5 days ago

Last modified

Share

Email Checker Actor

A powerful Apify Actor that validates email addresses through multiple verification levels. This actor performs comprehensive email validation including format checking, DNS verification, and mailbox existence testing.

Features

  • Multi-level validation: Three progressive validation levels
  • Format validation: Checks email syntax and structure
  • DNS verification: Validates domain MX records
  • Mailbox existence check: Tests if the email account actually exists
  • Detailed reporting: Provides specific messages for each validation step
  • Apify SDK integration: Built with Apify SDK for Python

Validation Levels

Level 1: Format Validation

  • Checks if the email follows proper syntax rules
  • Validates domain structure and local part
  • Uses industry-standard email validation libraries

Level 2: DNS Validation

  • Verifies the domain has valid MX (Mail Exchange) records
  • Ensures the domain can receive emails
  • Performs DNS lookups to confirm domain validity

Level 3: Mailbox Existence Check

  • Connects to the mail server via SMTP
  • Attempts to verify if the mailbox exists
  • Provides definitive confirmation of email deliverability

Input

The actor accepts the following input parameters:

{
"email": "user@example.com",
"level": 3,
"proxyConfiguration": {
"useApifyProxy": true
}
}
  • email (required): The email address to validate
  • level (optional): Validation level (1, 2, or 3). Default: 3
  • proxyConfiguration (optional): Proxy settings for SMTP connections. Default: {"useApifyProxy": true}

Output

The actor outputs structured validation results to a dataset:

{
"email": "user@example.com",
"level1_valid": true,
"level1_message": "Valid email format",
"level2_valid": true,
"level2_message": "Found 5 MX records",
"level3_valid": true,
"level3_message": "Mailbox appears to exist",
"overall_valid": true
}

Usage Examples

Basic Validation

{
"email": "test@gmail.com",
"level": 3
}

Format Only Check

{
"email": "user@domain.com",
"level": 1
}

With Proxy Configuration

{
"email": "user@example.com",
"level": 3,
"proxyConfiguration": {
"useApifyProxy": true
}
}

Getting Started

Local Development

  1. Install dependencies:
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
  1. Run the actor locally:
$apify run

Input Configuration

Edit storage/key_value_stores/default/INPUT.json to set your input parameters:

{
"email": "your-email@example.com",
"level": 3,
"proxyConfiguration": {
"useApifyProxy": true
}
}

Deploy to Apify

Connect Git Repository to Apify

  1. Go to Actor creation page
  2. Click on Link Git Repository button

Push Project to Apify

  1. Log in to Apify:
$apify login
  1. Deploy your Actor:
$apify push

Dependencies

  • apify - Apify SDK for Python
  • email-validator - Email format validation
  • dnspython - DNS lookups for MX records

Proxy Support

The actor supports Apify proxy configuration for consistency with the Apify platform. However, note that:

  • Apify proxy is primarily designed for HTTP/HTTPS requests
  • SMTP connections (Level 3 validation) do not use HTTP proxies
  • Proxy configuration is included for future extensibility and platform consistency

Error Handling

The actor gracefully handles various error conditions:

  • Invalid email formats
  • Non-existent domains
  • DNS resolution failures
  • SMTP connection issues
  • Mailbox verification failures

All errors are logged and reported in the output with descriptive messages.

Resources

License

This project is licensed under the Apache License 2.0.