Email Information Endpoint

On this page, we’ll dive into the email information endpoint you can use to retrieve information about any email address in order to verify & validate it.


GET/v1/info

Validate Email Address

This validation endpoint provides provides information about any email address.

Required attributes

  • Name
    email
    Type
    string
    Description

    The email address you want to check

Optional attributes

  • Name
    catch_all
    Type
    boolean
    Description

    If set to 1 we check if the email domain is a catch-all enabled domain (Only available in paid plans)

    Available in plans >= small

Request

GET
/v1/info
curl -G https://api.emailvalidation.io/v1/info?email=support@emailvalidation.io \
    -H "apikey: YOUR-API-KEY"

Full Response

{
    "email": "support@emailvalidation.io",
    "user": "support",
    "tag": "",
    "domain": "emailvalidation.io",
    "smtp_check": true,
    "mx_found": true,
    "did_you_mean": "",
    "role": true,
    "disposable": false,
    "score": 0.64,
    "state": "deliverable",
    "reason": "valid_mailbox",
    "free": false,
    "format_valid": true,
    "catch_all": null
}

State / Reason

This is the main indicator for deliverability of email addresses. The state is the deliverability and the reason is the reason why it is in this state.

{
    ...
    "state": "deliverable",
    "reason": "valid_mailbox",
    ...
}

Possible states/reasons

stateDescription
deliverableThe email address can receive emails
undeliverableThe email address can not receive emails
riskyThe email address can possible receive emails but it is not certain if they are read my a person or actually really received
unkownWe can not check the email address if it is able to receive emails
reasonresulting stateDescription
valid_mailboxdeliverableThe email address has avalid mailbox behind and is able to receive emails
 
invalid_mxundeliverableThe MX entries stored in the domains DNS either do not exist or not valid
invalid_formatundeliverableThe format of the email address is not valid
invalid_smtpundeliverableThe SMTP server did not respond correctly
invalid_mailboxundeliverableThe email address was refused by the SMTP server
 
low_deliverabilityriskyIndicates that the possibility that a person reads the email is low
low_qualityriskyIndicates that the email address is used by multiple people
 
no_connectunkownWe could not connect to the SMTP server
unexpected_errorunkownAn unexpected error occured
timeoutunkownThe connection to the SMTP server timed out
unavailable_smtpunkown

User / Tag / Domain

These fields provide you with a simple way to look at the singular parts of an email address

{
    ...
    "user": "support",
    "tag": "mytag",
    "domain": "emailvalidation.io",
    ...
}

MX Check

The Simple Mail Transfer Protocol (SMTP), which is the very same protocol we all use to move emails on and across networks, is used by the emailvalidation.io API to verify email addresses.

By determining whether the requested domain is set up to accept email, our system starts the process of real-time email verification. Here is where the MX-Records check in the API is useful. The mx found response object of the API will inform you if MX-Records for the specified domain have been located.

{
    ...
    "mx_found": true,
    ...
}

"Did you mean" Check

In the "did you mean" object of the API result set, the emailvalidation.io API will propose a different email address if a potential misspelling or mistake in the requested email address's domain portion is identified.

Please be aware that the email address in the did you mean object is just a recommendation and has no bearing on the other API response objects.

{
    ...
    "did_you_mean": "support@emailvalidation.io",
    ...
}

Catch-All Detection

Available in plans >= small

One SMTP check is not the end of the real-time verification procedure used by the emailvalidation.io API. A catch-all detection mechanism has been created since many email servers are set up to catch (accept) all incoming mail traffic, independent of the local component of the requested email address.

This functionality is disabled by default due to the significant negative impact it has on the API's response time. However, you can enable catch-all detection by adding the request URL's catch all option and setting it to 1.

Depending on whether the requested email address is discovered to be a part of a catch-all mailbox, the catch all JSON object in the API response will either return true or false.

{
    ...
    "catch_all": true,
    ...
}

Disposable Check

If the requested email address is discovered to be utilizing a disposable email service like mailinator.com or trashmail.com, the API will also return a disposable JSON object with the values true or false.

{
    ...
    "disposable": true,
    ...
}

Services for Disposable Emails

A disposable email service enables users to anonymously create temporary email identities that are often used only once for tasks like activating accounts or getting passwords and expire after a set amount of time. Many of these email services don't require users to register, therefore the inbox of these one-time email accounts is made available to the public. We strongly advise against adding these email addresses to your recipient list.

Free Email Provider Check

The emailvalidation.io API can recognize free email services like Gmail, GMX or Yahoo since it is connected to a regularly updated database that lists all available email providers.

The free JSON object in the API response will either return true or false depending on whether the given email address is discovered to be utilizing a free service.

{
    ...
    "free": true,
    ...
}

Even while free email addresses are typically included in recipient lists, it might make sense for some email campaigns to separate them out and only deliver to addresses with a specific domain.

Role Check

Determining whether the requested email address is a role email address is another step in the emailvalidation.io email verification procedure. A role email is an address that often refers to a function rather than a person or name (for example, "support" or "postmaster"). Due to the low open rates of this sort of email address, it could occasionally be undesirable when sending email campaigns.

Example: If the requested email is a role address, the role JSON object in the API response will return true; otherwise, it will return false.

{
    ...
    "role": true,
    ...
}

Quality Score

The API will return a numeric Quality Score ranging from 0 (Bad) to 1 (Good), reflecting the quality and deliverability of the given email address, to complete the emailvalidation.io validation & verification procedure.

Based on a system that gets smarter with each email address validated, this Quality Score is determined for each requested email address.

{
    ...
    "score": 0.64,
    ...
}

It is impossible to draw clear distinctions between recipients who are "worth sending to" and recipients who are "not worth sending to" because the validity of the numeric quality score depends heavily on the sort of email approach you are making. However, the following rules seem reasonable to us:

For transactional email:

ScoreQuality
1.00-0.65Perfect
0.64-0.33Medium
0.32-0.00Poor

For marketing email:

ScoreQuality
1.00-0.80Perfect
0.79-0.49Medium
0.48-0.00Poor