HomeGuides › Email Validation API: Syntax, MX, and Disposable Checks in One Call

Email Validation API: Syntax, MX, and Disposable Checks in One Call

Form-level regex misses dead domains, burner addresses, and typos. One GET call returns the full picture.

The endpoint combines five checks in a single JSON response: syntax, MX records, disposable-domain detection against a 121,000-domain list, role-account detection, and a typo suggestion.

What one call checks

Syntax validity per RFC rules, live MX-record lookup for the domain, disposable-domain flagging, role-account detection (info@, admin@, support@), and a didYouMean suggestion for common domain typos like gmial.com.

Quick start

curl
curl "https://email-validator109.p.rapidapi.com/[email protected]" \
  -H "X-RapidAPI-Key: YOUR_KEY" \
  -H "X-RapidAPI-Host: email-validator109.p.rapidapi.com"

Reading the response

valid is the combined verdict. isDisposable flags burner domains you probably want to reject at signup. didYouMean is non-null when the domain looks like a typo of a major provider.

Response (200)
{
  "email": "[email protected]",
  "normalized": "[email protected]",
  "valid": true,
  "syntaxValid": true,
  "local": "jane.doe",
  "domain": "gmail.com",
  "hasMx": true,
  "isDisposable": false,
  "isRoleAccount": false,
  "didYouMean": null,
  "reason": "Valid and deliverable"
}

Batch validation

POST /validate-batch accepts up to 100 addresses per call and returns the same fields for each entry. Useful for cleaning an existing mailing list before a send.

Run it in production

Email Validator has a permanent free tier — 1,000 requests a month, no credit card. Paid plans start at $5/month for 100,000 requests.

Get a free API key on RapidAPI ↗

Full endpoint reference →

FAQ

Does it send an email to the address?

No. Validation is DNS-level (syntax, MX, domain reputation). No message is sent and no SMTP mailbox probe is made.

What counts as disposable?

Domains on a maintained list of roughly 121,000 throwaway-email providers are flagged with isDisposable: true.

Can I validate whole lists?

Yes. POST /validate-batch processes up to 100 addresses per request.