Email Validation Engine avatar
Email Validation Engine

Pricing

Pay per usage

Go to Apify Store
Email Validation Engine

Email Validation Engine

Fast email validation: verify deliverability, detect disposables, check DNS/MX records, identify role accounts. No API keys needed. Perfect for sales teams, marketers, and developers.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Sanjay Balam

Sanjay Balam

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

πŸ“§ Email Validation & Enrichment Engine

Professional email validation and enrichment service - verify deliverability, detect disposable emails, and enrich with person/company data.

Apify Actor ./LICENSE

🎯 What It Does

This Actor provides comprehensive email validation and enrichment capabilities:

βœ… Validation Features

  • Syntax Validation: RFC 5322 compliant email format checking
  • Domain Verification: DNS and MX record validation
  • Mailbox Verification: SMTP-based mailbox existence check (optional)
  • Disposable Detection: Identify temporary/throwaway email services
  • Role Account Detection: Flag generic emails (info@, support@, etc.)

πŸ” Enrichment Features (Basic)

  • Extract names from email addresses
  • Identify company from domain
  • Determine account type (personal vs role)
  • Confidence scoring

πŸ’Ό Use Cases

  • Sales Teams: Validate lead lists and reduce bounce rates
  • Marketing: Clean email lists before campaigns (improve deliverability)
  • Recruiters: Verify candidate contact information
  • E-commerce: Detect fake signups and reduce fraud
  • SaaS: Enrich user data for better segmentation

πŸš€ Quick Start

Input Example

{
"emails": [
"john.doe@example.com",
"jane.smith@company.com",
"info@business.com"
],
"validateSyntax": true,
"checkDomain": true,
"checkMailbox": false,
"detectDisposable": true,
"detectRoleAccount": true,
"enrichData": false,
"timeout": 10
}

Output Example

{
"email": "john.doe@example.com",
"isValid": true,
"status": "valid",
"validation": {
"syntaxValid": true,
"domainExists": true,
"hasMxRecords": true,
"mailboxExists": false,
"isDisposable": false,
"isRoleAccount": false
},
"info": {
"localPart": "john.doe",
"domain": "example.com",
"mxRecords": ["mail.example.com"],
"accountType": "personal"
},
"enrichment": {
"firstName": "John",
"lastName": "Doe",
"fullName": "John Doe",
"company": "Example",
"confidence": 50
},
"errors": [],
"warnings": []
}

πŸ“Š Input Parameters

ParameterTypeRequiredDefaultDescription
emailsarrayβœ… Yes-List of email addresses to validate
validateSyntaxbooleanNotrueCheck email format validity
checkDomainbooleanNotrueVerify domain and MX records
checkMailboxbooleanNofalseSMTP mailbox verification (slow, can be blocked)
detectDisposablebooleanNotrueIdentify temporary email services
detectRoleAccountbooleanNotrueFlag generic/role-based emails
enrichDatabooleanNofalseExtract basic person/company info
timeoutintegerNo10Timeout per email in seconds (5-60)

πŸ”§ Configuration Tips

For Speed (Fast Validation)

{
"emails": ["..."],
"validateSyntax": true,
"checkDomain": true,
"checkMailbox": false,
"detectDisposable": true,
"detectRoleAccount": true,
"enrichData": false
}

For Accuracy (Thorough Validation)

{
"emails": ["..."],
"validateSyntax": true,
"checkDomain": true,
"checkMailbox": true,
"detectDisposable": true,
"detectRoleAccount": true,
"enrichData": true,
"timeout": 30
}

For Lead Cleaning (Marketing)

{
"emails": ["..."],
"detectDisposable": true,
"detectRoleAccount": true,
"checkDomain": true,
"checkMailbox": false
}

πŸ“ˆ Output Fields

Status Values

  • valid: Email passed all checks
  • invalid: Email failed critical validation
  • risky: Valid but disposable/suspicious
  • unknown: Unable to fully verify

Validation Object

{
syntaxValid: boolean; // Email format is correct
domainExists: boolean; // Domain has DNS records
hasMxRecords: boolean; // Domain can receive email
mailboxExists?: boolean; // Mailbox verified via SMTP
isDisposable: boolean; // Temporary email service
isRoleAccount: boolean; // Generic account (info@, etc.)
}

Account Types

πŸ’° Pricing & Performance

  • Speed: ~1-3 seconds per email (without SMTP check)
  • Speed with SMTP: ~5-10 seconds per email
  • Recommended: Disable SMTP for large batches

Cost Estimation

  • 100 emails: ~2-5 minutes
  • 1,000 emails: ~20-50 minutes
  • 10,000 emails: ~3-8 hours

⚠️ Important Notes

SMTP Verification

  • Pros: Most accurate mailbox verification
  • Cons: Slow, often blocked by mail servers, may trigger spam filters
  • Recommendation: Use only for critical validations

Rate Limiting

  • Some mail servers may block excessive checks
  • Use reasonable delays for large batches
  • Consider SMTP check only for high-value leads

Data Privacy

  • This Actor doesn't send emails - only performs checks
  • No data is stored or shared
  • GDPR compliant (no personal data retention)

πŸ”Œ API Integration

Run via Apify API

const run = await apifyClient.actor('YOUR_ACTOR_ID').call({
emails: ['test@example.com'],
validateSyntax: true,
checkDomain: true
});
const dataset = await apifyClient.dataset(run.defaultDatasetId).listItems();
console.log(dataset.items);

Webhook Integration

Connect with Zapier, Make.com, or custom webhooks for automated email validation in your workflows.

πŸ› οΈ Local Development

# Install dependencies
npm install
# Run locally
npm start
# Build TypeScript
npm run build

πŸ“š Resources

πŸ› Issues & Support

πŸ“ License

Apache-2.0


Built with ❀️ by Sanjay Balam | Powered by Apify