IPQualityScore's Email Validation API estimates deliverability rates by detecting invalid mailboxes as well as disposable and fraudulent email addresses, spam traps, and honeypots via our simple to use Email Reputation API. Verify email addresses and identify abusive emails in real-time with a low latency API request.
Add the Email Verification API to your registration and checkout pages to validate email addresses in real-time as users interact with your site or app. Prevent fake accounts, typos, bounces, invalid user data, and other abuse. Batch files can also be processed by uploading a CSV file through the user platform.
Routine email list cleaning is a best practice utilized by the largest brands and mailers to ensure healthy deliverability rates. Major email service providers like Gmail.com, Yahoo.com, Hotmail.com, AOL.com, Outlook.com, and other large providers worldwide will block senders with high bounce rates and poor domain or IP address reputation. Cleaning your email lists from spam traps, complainers, and invalid emails will prevent inbox bounces to ensure your mail reaches the inbox and not the spam folder.
Analyze email address reputation in real-time with email risk analysis including the email's creation date using an estimate of the email age based on when the email was first discovered by IPQS. The creation date is often referred to as the "First Seen" date. In addition to detecting disposable email services and parked domains, IPQS can also identify perfectly valid email addresses that have recently engaged in abusive behavior. Through our honeypot threat network and partner feedback program, IPQS can identify email addresses which were recently involved with chargebacks, fake account creation, account takeover, SPAM, trial abuse, and high risk behavior.
NOTE: Do not share this key with anyone. It's like a password and can be used to make queries using our API.
The URLs below can be used to fetch the result using cURL or another utility in most languages. See the usage example at the bottom of the page . Be sure to replace "USER_EMAIL_HERE" with the email you wish to check.
NOTE: For a description of each field listed above please consult the response documentation below.
NOTE: For a description of each field listed above please consult the response documentation below.
Example errors that you may encounter when accessing our API due to an exhausted credit balance or an invalid/empty email address.
Due to the nature of platform requirements or frameworks it may be necessary to request IPQS API endpoints without passing the API key in the URL. As an alternative, IPQS allows the API key to be passed via GET, POST, or Headers. These requests use the following endpoints:
|Header||IPQS-KEY (Additional parameters passed as either GET or POST)||IPQS-KEY: YOUR_API_KEY_HERE|
Any custom tracking variable established in your account settings can be passed with each API request. This allows our reporting tools to filter by specific users, products, campaigns, transactions, etc. so that you can easily identify fraudulent activity. The following request parameters are optional and can be used to tailor the service to your requirements.
|fast||When this parameter is enabled our API will not perform an SMTP check with the mail service provider, which greatly increases the API speed. Syntax and DNS checks are still performed on the email address as well as our disposable email detection service. This option is intended for services that require decision making in a time sensitive manner.||boolean|
|timeout||Maximum number of seconds to wait for a reply from a mail service provider. If your implementation requirements do not need an immediate response, we recommend bumping this value to 20. Any results which experience a connection timeout will return the "timed_out" variable as true. Default value is 7 seconds.||integer (1-60)|
|suggest_domain||Force analyze if the email address's domain has a typo and should be corrected to a popular mail service. By default, this test is currently only performed when the email is invalid or if the "recent abuse" status is true.||boolean|
|strictness||Sets how strictly spam traps and honeypots are detected by our system, depending on how comfortable you are with identifying emails suspected of being a spam trap. 0 is the lowest level which will only return spam traps with high confidence. Strictness levels above 0 will return increasingly more strict results, with level 2 providing the greatest detection rates.||int (0-2)|
|abuse_strictness||Set the strictness level for machine learning pattern recognition of abusive email addresses with the "recent_abuse" data point. Default level of 0 provides good coverage, however if you are filtering account applications and facing advanced fraudsters then we recommend increasing this value to level 1 or 2.||int (0-2)|
We return a large amount of information for each lookup so your development team has access to a wealth of data when incorporating each API request into your business logic. We recommend blocking or flagging a user, signup, purchase, or other type of transaction when the API confirms that "disposable" is true, ("recent_abuse" is true AND "fraud_score" = 100), and/or when "valid" is false. The Fraud Score can also provide useful insights to identify high risk emails and mail providers.
For email marketing, we recommend only messaging users with a "deliverability" value of "high" to ensure a low bounce rate so that your messages do not get filtered into the SPAM folder or completely blocked by mail service providers.
Analyzing Email Verification Results
Treat email addresses as valid when:
|valid||Does this email address appear valid?||boolean|
|disposable||Is this email suspected of belonging to a temporary or disposable mail service? Usually associated with fraudsters and scammers.||boolean|
|timed_out||Did the connection to the mail service provider timeout during the verification? If so, we recommend increasing the "timeout" variable above the default 7 second value. Lookups that timeout with a "valid" result as false are most likely false and should be not be trusted.||boolean|
|deliverability||How likely is this email to be delivered to the user and land in their mailbox. Values can be "high", "medium", or "low".||string|
|catch_all||Is this email likely to be a "catch all" where the mail server verifies all emails tested against it as valid? It is difficult to determine if the address is truly valid in these scenarios, since the email's server will not confirm the account's status.||boolean|
|leaked||Was this email address associated with a recent database leak from a third party? Leaked accounts pose a risk as they may have become compromised during a database breach.||boolean|
|suspect||This value indicates if the mail server is currently replying with a temporary error and unable to verify the email address. This status will also be true for "catch all" email addresses as defined below. If this value is true, then we suspect the "valid" result may be tainted and there is not a guarantee that the email address is truly valid.||boolean|
|smtp_score||Validity score of email server's SMTP setup. Range: "-1" - "3". Scores above "-1" can be associated with a valid email.
|overall_score||Overall email validity score. Range: "0" - "4". Scores above "1" can be associated with a valid email.
|first_name||Suspected first name based on email. Returns "CORPORATE" if the email is suspected of being a generic company email. Returns "UNKNOWN" if the first name was not determinable.||string|
|common||Is this email from a common email provider? ("gmail.com", "yahoo.com", "hotmail.com", etc.)||boolean|
|generic||Is this email suspected as being a catch all or shared email for a domain? ("admin@", "webmaster@", "newsletter@", "sales@", "contact@", etc.)||boolean|
|dns_valid||Does the email's hostname have valid DNS entries? Partial indication of a valid email.||boolean|
|honeypot||Is this email believed to be a "honeypot" or "SPAM trap"? Bulk mail sent to these emails increases your risk of being blacklisted by large ISPs & ending up in the spam folder.||boolean|
|spam_trap_score||Confidence level of the email address being an active SPAM trap. Values can be "high", "medium", "low", or "none". We recommend scrubbing emails with "high" or "medium" statuses. Avoid "low" emails whenever possible for any promotional mailings.||string|
|recent_abuse||This value will indicate if there has been any recently verified abuse across our network for this email address. Abuse could be a confirmed chargeback, fake signup, compromised device, fake app install, or similar malicious behavior within the past few days.||boolean|
|fraud_score||The overall Fraud Score of the user based on the email's reputation and recent behavior across the IPQS threat network. Fraud Scores >= 75 are suspicious, but not necessarily fraudulent.||float|
|frequent_complainer||Indicates if this email frequently unsubscribes from marketing lists or reports email as SPAM.||boolean|
|suggested_domain||Default value is "N/A". Indicates if this email's domain should in fact be corrected to a popular mail service. This field is useful for catching user typos. For example, an email address with "gmai.com", would display a suggested domain of "gmail.com". This feature supports all major mail service providers.||string|
|sanitized_email||Sanitized email address with all aliases and masking removed, such as multiple periods for Gmail.com.||string|
|request_id||A unique identifier for this request that can be used to lookup the request details or send a postback conversion notice.||string|
|success||Was the request successful?||boolean|
|message||A generic status message, either success or some form of an error notice.||string|
|errors||Array of errors which occurred while attempting to process this request.||array of strings|