Free Email Validator Online
Validate e-mail addresses: syntax, MX/A records, ~120k disposable domains, role accounts, free providers and typo hints like gmial.com → gmail.com.
Result
Press “Run” to see the result.
The Email Validation API tells you whether an address is worth accepting. It checks the syntax (length limits, dots, allowed characters, domain labels), then looks up the domain’s MX records – falling back to an A record, and detecting “null MX” domains that refuse mail – using DNS over HTTPS. It also flags disposable / temporary inbox domains from a list of about 120,000, role accounts such as info@, support@ or noreply@, and free providers like Gmail, Yahoo and Outlook.
Common domain typos are caught with a did_you_mean suggestion (john@gmial.com → john@gmail.com). Each address gets a verdict – deliverable, risky, undeliverable or invalid – a score from 0 to 100, and a canonical form (lower-cased, +tag removed, dots removed for Gmail) that helps detect duplicate sign-ups.
Honest limitation: the API does not probe the mailbox over SMTP, because outgoing port 25 is not available on Cloudflare Workers. “Deliverable” therefore means the address is well formed and its domain accepts e-mail, not that the specific mailbox exists. Validate one email, or up to 50 at once by POSTing an emails array; dns=false skips the DNS lookups for a pure offline check.
Use this in your code
curl -X POST "https://apibox.io.vn/v1/email-validator" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"email":"john.doe@gmial.com"}'const res = await fetch('https://apibox.io.vn/v1/email-validator', {
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"email": "john.doe@gmial.com"
}),
});
const data = await res.json();
console.log(data);import requests
res = requests.post(
"https://apibox.io.vn/v1/email-validator",
headers={"Authorization": "Bearer YOUR_API_KEY"},
json={"email": "john.doe@gmial.com"},
timeout=30,
)
print(res.json())<?php
$ch = curl_init('https://apibox.io.vn/v1/email-validator');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => ['Authorization: Bearer YOUR_API_KEY', 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => '{"email":"john.doe@gmial.com"}',
]);
$response = curl_exec($ch);
print_r(json_decode($response, true));API documentation → Get a free API key
FAQ
Does it check whether the mailbox really exists?
No. SMTP probing needs outgoing port 25, which Cloudflare Workers do not allow, and many providers give misleading answers anyway. The API verifies syntax and that the domain accepts mail (MX or A record), plus disposable, role and typo checks.
How do I validate many e-mails at once?
POST {"emails": ["a@example.com", "b@example.org"]} with up to 50 addresses. You get a results array in the same order.
What does "risky" mean?
The address can receive mail but is suspicious: a disposable domain, a likely typo (see did_you_mean) or a role account such as info@ or support@. Decide per case whether to accept it.