Skip to main content

Email Validator Architecture

System Overview​

FastAPI app under app/ exposing validation endpoints. Each email goes through format, MX, then SMTP recipient verification.

Architecture Diagram​

graph LR
ClientRequest["Client / Postman / CSV"]
FastApiApp["FastAPI app.main"]
DnsMxLookup["DNS MX lookup"]
SmtpRecipientCheck["SMTP RCPT TO check"]

ClientRequest -->|"POST validate email or CSV"| FastApiApp
FastApiApp -->|"checks mail servers exist"| DnsMxLookup
FastApiApp -->|"verifies recipient mailbox"| SmtpRecipientCheck

How to read this diagram​

Arrows mean flow / dependency / "talks to", not button clicks. Each arrow label says what happens on that step.

Validation flow​

  1. Email format check
  2. DNS MX record lookup
  3. SMTP recipient verification (RCPT TO)

Technology Stack​

LayerTechnology
APIFastAPI + Uvicorn
PackagingDocker
QAPostman collection

Next Steps​