Email Validation Architecture
SMTP verification with MX resolution and catch-all detection via self-hosted Reacher
Internal Components
Service Configuration
Replicas1
Poll Interval60s
Batch Size25 emails
BackendReacher (self-hosted)
Database Outputs
employees.email_verifiedValidation resultemployees.unverified_emailsRejected emails (JSONB)Pipeline Position
Upstream
Email Finder (discovered emails)
Downstream
Outreach (Cold Email campaigns)
Component Breakdown
MX Resolver
Looks up MX records for the email domain. Falls back to A record if no MX found.
SMTP Prober
RCPT TO probe with STARTTLS via Reacher. 120s timeout with 3 retries and exponential backoff.
Catch-all Detector
Tests random addresses to detect catch-all domains. Marks results as "risky" if domain accepts all.
Result Classifier
Classifies: valid (confirmed), risky (catch-all), unknown (temp failure), invalid (rejected). Invalid emails move to unverified_emails JSONB.