DEV Community

Alexey D
Alexey D

Posted on

Email Validation API: Check Syntax, MX Records and Disposable Domains (Free)

Regex alone won't save you. test@test.com passes regex but has no mail server.

Why regex is not enough

You need 3 checks:

  1. Syntax (regex)
  2. MX record — does the domain actually receive mail?
  3. Disposable detection — one-time inbox like mailinator?

Email Validator Pro API

import requests

r = requests.post(
    "https://emailvalidatorpro.p.rapidapi.com/validate",
    json={"email": "user@gmail.com"},
    headers={"X-RapidAPI-Key": "YOUR_KEY", "Content-Type": "application/json"}
)
print(r.json())
Enter fullscreen mode Exit fullscreen mode

Response:

{
  "email": "user@gmail.com",
  "is_valid": true,
  "syntax_valid": true,
  "mx_valid": true,
  "is_disposable": false,
  "quality_score": 100,
  "reason": "ok"
}
Enter fullscreen mode Exit fullscreen mode

Disposable email example

{
  "email": "temp@mailinator.com",
  "is_valid": false,
  "is_disposable": true,
  "quality_score": 10,
  "reason": "disposable_email"
}
Enter fullscreen mode Exit fullscreen mode

JavaScript example

const res = await fetch("https://emailvalidatorpro.p.rapidapi.com/validate", {
  method: "POST",
  headers: { "X-RapidAPI-Key": "YOUR_KEY", "Content-Type": "application/json" },
  body: JSON.stringify({ email: "user@example.com" })
});
const result = await res.json();
if (!result.is_valid) showError(result.reason);
Enter fullscreen mode Exit fullscreen mode

Quality score

Score Meaning
90-100 Major provider (Gmail, Outlook)
70-89 Valid, not disposable
0-39 Invalid or disposable

Use cases

  • Block throwaway emails at signup
  • Clean email lists before campaigns
  • Score lead quality automatically
  • Reduce bounce rate

Pricing

Plan Price Requests
BASIC Free 50/hr
PRO $9.99/mo 1,000/hr
ULTRA $29.99/mo 10,000/hr

Email Validator Pro on RapidAPI — free tier, no credit card.

Top comments (0)