API Documentation

Learn how to integrate our email validation API into your applications.

Authentication

All API requests require authentication using an API key. You can generate API keys from your dashboard.

Register a new user

Create a new account to get started

POST /api/auth/register

{ "name": "John Doe", "email": "john@example.com", "password": "securepassword", "company": "ACME Inc" // Optional }
Returns a JWT token and your first API key

Login

Authenticate and get your JWT token

POST /api/auth/login

{ "email": "john@example.com", "password": "securepassword" }
Returns a JWT token and your API keys

Generate API Key

Create a new API key for your account

POST /api/auth/generate-key

Headers:

Authorization: Bearer <jwt_token>
{ "name": "My API Key", "expiresInDays": 365 // Optional }
Returns a new API key

Email Validation

Our email validation API provides comprehensive validation through multiple layers of checks.

Validate a single email

Validate a single email address with detailed results

POST /api/validate

{ "email": "user@example.com", "api_key": "your-api-key" }
Returns detailed validation results

Response:

{ "email": "user@example.com", "valid": true, "formatValid": true, "typoDetected": false, "disposable": false, "dnsValid": true, "hasMx": true, "hasSPF": true, "hasDMARC": false, "smtpValid": true, "isCatchAll": false, "score": 95, "errors": [] }

Validate multiple emails (bulk)

Validate multiple email addresses in a single request

POST /api/bulk-validate

{ "emails": ["user1@example.com", "user2@example.com", "user3@example.com"], "api_key": "your-api-key" }
Returns validation results for each email

Response:

{ "total": 3, "results": [ { "email": "user1@example.com", "valid": true, "formatValid": true, "typoDetected": false, "disposable": false, "dnsValid": true, "hasMx": true, "hasSPF": true, "hasDMARC": false, "smtpValid": true, "isCatchAll": false, "score": 95, "errors": [] }, // ... other results ], "summary": { "valid": 2, "invalid": 1, "disposable": 0, "catchAll": 0 } }

Validation Layers

Our email validation process includes multiple layers to ensure accuracy.

Syntax & Format Validation

Validates email format according to RFC 5322 standards and checks for proper structure (local-part@domain.tld).

Typo Detection & Correction

Identifies common typos in popular domains (e.g., gmial.com → gmail.com) and suggests corrections.

Disposable Email Detection

Maintains a database of known disposable email providers and flags temporary addresses.

DNS & MX Record Validation

Verifies domain existence through DNS lookup and checks if the domain has valid mail exchange servers.

SPF & DMARC Record Checking

Validates Sender Policy Framework (SPF) records and checks for DMARC policy presence.

SMTP Mailbox Verification

Connects to mail servers to verify if the mailbox exists and performs SMTP handshake.

Catch-All Domain Detection

Identifies domains that accept all emails regardless of existence and flags potential high-risk domains.

Rate Limits

API rate limits are determined by your subscription plan.

Plan-based rate limits

Different plans have different rate limits

  • Free plan: 100 requests per day, max 10 per minute
  • Basic plan: 10,000 requests per day, max 100 per minute
  • Pro plan: 100,000 requests per day, max 1,000 per minute
  • Enterprise plan: Custom limits based on needs

SDKs & Wrappers

We provide SDKs for popular programming languages to make integration easier.

Ready to get started?

Sign up now and get 100 free validations to test our API.