SMTP based email address verification.
Verify real users and filter out low-quality email addresses.
Email verify does everything the Email Validate API does
but takes validation one step further and performs a realtime SMTP based lookup.
This process is similar to how a real email is delivered, so it can verify if an email would actually make it to the recipient address.
Our SMTP process will identify if the username exists at the email service provider and can also check if the domain is setup as a catch-all (will accept mail for any address)
Note on SMTP response times:
Because this API performs a live check against mail servers it can take some time if the target mail servers are slow.
In some cases this API may take up to 60 seconds to complete. However on average for most mail providers it will complete in around 2-5 seconds.
True if this email address has passed SMTP username verification. Check the 'smtp-status' and 'domain-status' fields for specific verification details
valid
boolean
Is this a valid email address. To be valid an email must have: correct syntax, a registered and active domain name, correct DNS records and operational MX servers
email
string
The complete email address. If you enabled the 'fix-typos' option then this will be the corrected address
domain
string
The domain name of this email address
provider
string
The domain name of the email hosting provider
mx-ip
string
The first resolved IP address of the primary MX server, may be empty if there are domain errors present
is-freemail
boolean
True if this address is from a free email provider
is-disposable
boolean
True if this address is a disposable, temporary or darknet related email address
is-personal
boolean
True if this address likely belongs to a person. False if this is a role based address, e.g. admin@, help@, office@, etc.
typos-fixed
boolean
True if any typos have been fixed. The 'fix-typos' option must be enabled for this to work
syntax-error
boolean
True if this address has any syntax errors or is not in RFC compliant formatting
domain-error
boolean
True if this address has any domain name or DNS related errors. Check the 'domain-status' field for the detailed error reason
domain-status
string
The email domain status, possible values are:
ok - the domain is in working order and can receive email
invalid - the domain is not a conformant hostname. May contain invalid syntax or characters
no-service - the domain owner has indicated there is no mail service on the domain (also known as the 'Null MX')
no-mail - the domain has no valid MX records so cannot receive email
mx-invalid - MX records contain invalid or non-conformant hostname values
mx-bogon - MX records point to bogon IP addresses
resolv-error - MX records do not resolve to any valid IP addresses
smtp-status
string
The SMTP username verification status for this address:
ok - verification was successful, this is a real username that can receive mail
absent - this username or domain is not registered with the email service provider
invalid - not a valid email address, check the 'domain-status' field for specific details
unresponsive - the mail servers for this domain have repeatedly timed-out or refused multiple connection attempts
unknown - sorry, we could not reliably determine the status of this username
smtp-response
string
The raw SMTP response message received during verification
is-deferred
boolean
True if the mail server responded with a temporary failure (either a 4xx response code or unresponsive server). You can retry this address later, we recommend waiting at least 15 minutes before retrying
is-catch-all
boolean
True if this email domain has a catch-all policy. A catch-all domain will accept mail for any username so therefor the 'smtp-status' will always be 'ok'
API Performance
Characteristic
Value
Description
Avg Latency
1-120s (variable)
This API has a non-deterministic latency based on outside factors
Max Rate
2/second
Maximum inbound request rate. Exceeding this will result in request throttling
Max Concurrency
50
Maximum concurrent/simultaneous requests. Exceeding this will result in error code 06 [TOO MANY CONNECTIONS]