Email Validation Engine
Pricing
Pay per usage
Go to Apify Store

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
Maintained by Community
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
π§ Email Validation & Enrichment Engine
Professional email validation and enrichment service - verify deliverability, detect disposable emails, and enrich with person/company data.
π― 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
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
emails | array | β Yes | - | List of email addresses to validate |
validateSyntax | boolean | No | true | Check email format validity |
checkDomain | boolean | No | true | Verify domain and MX records |
checkMailbox | boolean | No | false | SMTP mailbox verification (slow, can be blocked) |
detectDisposable | boolean | No | true | Identify temporary email services |
detectRoleAccount | boolean | No | true | Flag generic/role-based emails |
enrichData | boolean | No | false | Extract basic person/company info |
timeout | integer | No | 10 | Timeout 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 checksinvalid: Email failed critical validationrisky: Valid but disposable/suspiciousunknown: Unable to fully verify
Validation Object
{syntaxValid: boolean; // Email format is correctdomainExists: boolean; // Domain has DNS recordshasMxRecords: boolean; // Domain can receive emailmailboxExists?: boolean; // Mailbox verified via SMTPisDisposable: boolean; // Temporary email serviceisRoleAccount: boolean; // Generic account (info@, etc.)}
Account Types
personal: Individual's email (john.doe@company.com)role: Generic/shared email (support@company.com)unknown: Cannot determine
π° 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 dependenciesnpm install# Run locallynpm start# Build TypeScriptnpm run build
π Resources
π Issues & Support
- Report issues on GitHub
- Contact: support@apify.com
- Community: Apify Discord
π License
Apache-2.0
Built with β€οΈ by Sanjay Balam | Powered by Apify