NAV Navbar
Logo

Overview

TowerData’s Email Validation and Intelligence API uses the industry-standard REST syntax, which can be invoked simply by constructing a URL and testing directly in a web browser. Data is returned in JSON format, which is both easy for you to read and easy for your programs to analyze.

Our real-time email validation and correction service provides an overall status as well as detailed information so that you can obtain a thorough understanding of the email address.

Terms of Service

API Endpoint

API Endpoint

Requests where Email Validation is enabled:
https://api.towerdata.com/v5/ev?api_key={Key}&timeout={T}&email={Email}

Requests where Email Validation is not enabled:
https://api.towerdata.com/v5/td?api_key={Key}&timeout={T}&email={Email}

With HTTP GET request.

We have two API endpoints. Any requests that use Email Validation should access our Email Validation endpoint, even if other services are enabled:

Usage Endpoint
Includes Email Validation https://api.towerdata.com/v5/ev
Does not use Email Validation https://api.towerdata.com/v5/td

Authentication

To authorize, you need a valid API Key.

Your API Key is configured to perform a certain service, and the data you’ll receive is decided by the API Key.

Register on https://dashboard.towerdata.com/ to get an API key, where you’ll have access to a default set of Email Intelligence fields. Then please contact us to add the email validation service to your key. The API key must be included in all API requests.

api_key={your-api-key}

Query Parameters

Common Parameters

Parameter Required Description
api_key yes This API key is assigned to you by TowerData when you register for our API. It is used to authorize your request and to determine which TowerData services will be performed.

Email Validation Parameters

Parameter Required Description
email yes The email address to be validated (and optionally corrected)
timeout no Timeout value in seconds; default = 5 (seconds). Floating-point numbers (e.g. 4.9, 3.55) are permitted.

Email Intelligence Parameters

* Email address parameter "email" can be passed in 3 ways:
  • email: the raw email address
  • sha1_email: The SHA1 hash of email address #
  • md5_email: The MD5 hash of email address #

Plaintext email address is required if Email Validation is being performed

Parameter Required Description
email / sha1_email / md5_email yes The email address to be used to retrieve information you want
timeout no Timeout value in seconds; default = 5 (seconds).
fields no List of fields that only to return, as a filter of all available data points in Email Intelligence

Postal Information Parameters

Parameter Required Description
first yes First name of person
middle optional Middle name of person
last yes Last name of person
street * see below Street number and street name you wish to search
city * see below Name of city in address
state * see below The two letter state abbreviation
zip * see below 5 or 9 digits accepted. If 9 digits please separate with a dash, for example “14450-2415”

* Acceptable ways to provide the postal address are: (street, city, state, zip), (street, city, state), and (street, zip).

Examples

Email Validation enabled:
https://api.towerdata.com/v5/td?sha1_email=abdb6425aaf715b65c17510bbfe382571374f859&api_key=78ad9ddc21e3c220cc5da024b6dbe13c

Email Validation not enabled:
https://api.towerdata.com/v5/td?api_key=78ad9ddc21e3c220cc5da024b6dbe13c&email=johndoe@yahoo.com

Email Validation API Response Overview

The data you receive is determined by the API key that you include in the request.

If your API is configured for Email Validation, and your request contains an email parameter, the API response will contain an “email_validation” section

The API response will be in JSON format. The “email_validation” section will contain the following information:

Status Description
Valid The email address passed all checks, fire-away!
Invalid Either the syntax or domain is invalid, the mailbox does not exist, or the email address is suppressed for a variety of reasons. The simplest implementation would reject any emails with an invalid status and accept all other status values.
Risky The email address is valid but it may cause delivery issues (e.g. spam honeypot, complainer). If you’re having deliverability issues, we recommend not sending email to risky addresses.
Unverifiable The email address passed syntax, domain and suppression checks, but the domain does not support a mailbox level check. Expect some bounces from this data should you choose to mail it.
Unknown We were not able to determine if the mailbox is valid or not within the time allowed. Future requests may be able to get a deterministic answer. This result indicates that the syntax of the email address is correct, but messages to the address may bounce.

"email_corrections":[ "johndoe@gmail.com"]

Email Intelligence API Response Guide

Below is a comprehensive list of all possible responses from the Intelligence API, separated into conceptual groups for readability. Within each group, there are one or more “fields” which are denoted by quotes.

The Email Intelligence API includes Demographic Data, Household Data, Active Customer Intelligence Data and Email Activity Metrics. The response will contain only those fields activated for your API key AND populated in our database for the individual customer data presented. For example a successful call for age and income could return no fields if we do not have that email in our database, or if the requested fields are not populated for that email.

Demographic Data

Demographic Data includes the following fields; Age, Gender, Zip

Field Possible Values
age “18-20”, “21-24”, “25-34”, “35-44”, “45-54”, “55-64”, “65+”
gender “Male”, “Female”
zip “94105”…

Household Data

Household Data includes fields around the characteristics of the individual and the make-up of the household such as income, marital status and presence of children.

Field Possible Values
education “Completed High School”, “Attended College”, “Completed College”, “Completed Graduate School”, “Attended Vocational/Technical”
net_worth “0-5k”, “5k-10k”, “10k-25k”, “25k-50k”, “50k-100k”, “100k-250k”, “250k-500k”, “500k-750k”, “750k-1mm”, “1mm+”
household_income “0-15k”, “15k-25k”, “25k-35k”, “35k-50k”, “50k-75k”, “75k-100k”, “100k-125k”, “125k-150k”, “150k-175k”, “175k-200k”, “200k-250k”, “250k+”
home_market_value “1k-25k”, “25k-50k”, “50k-75k”, “75k-100k”, “100k-150k”, “150k-200k”, “200k-250k”, “250k-300k”, “300k-350k”, “350k-500k”, “500k-1mm”, “1mm+”
home_owner_status “Own”, “Rent”
length_of_residence “Less than 1 year”, “1 Year”, “2 Years”, “3 Years”, “4 Years”, “5 Years”, “6 Years”, “7 Years”, “8 Years”, “9 Years”, “10 Years”, “11-15 years”, “16-19 years”, “20+ years”
marital_status “Single”, “Married”
occupation “Blue Collar Worker”, “Business Owner”, “Civil Service”, “Executive/Upper Management”, “Health Services”, “Homemaker”, “Middle Management”, “Military Personnel”, “Nurse”, “Part Time”, “Professional”, “Retired”, “Secretary”, “Student”, “Teacher”, “Technology”, “White Collar Worker”
presence_of_children “Yes”, “No”

Interest & Purchase Data

Our traditional Interest and Purchase data featuring 13 categories.

Field Possible Values
arts_and_crafts true
automotive true
baby_product_buyer true
beauty true
blogging true
books true
business true
charitable_donors true
cooking true
discount_shopper true
health_and_wellness true
high_end_brand_buyer true
home_and_garden true
home_improvement true
luxury_goods true
magazine_buyer true
news_and_current_events true
outdoor_and_adventure true
pets true
sports true
technology true
travel true

Email Activity Metrics

The EAM fields are used to evaluation the legitimacy and activity of an email address based on when and how often it has passed through our database.

Field Possible Values
date_first_seen “YYYY-MM-DD”`
popularity “0”,“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”,“10”`
velocity “0”,“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”,“10”`
longevity “0”,“1”,“2”,“3”`
month_last_open “YYYY-MM”`

Active Customer Intelligence

Active Customer Intelligence includes four groups - Purchase Intent, Life Stage, Lifestyle and Shopper Type. This powerful data is often updated in real-time. For Purchase Intent and Shopper Type four values are applicable. For Life Stage and LifeStyle only one value “A” is returned.

Applicable values are:

Field Possible Values Description
Auto Parts I; B; A; M Consumers that are actively shopping online for automotive parts, tires, and accessories.
Kids and Babies I; B; A; M Consumers that are actively shopping online for baby and kids products.
Childrens Clothing I; B; A; M Consumers that are actively shopping online for baby and kids clothes and shoe
Baby Products I; B; A; M Consumers that are actively shopping online for baby gear.
Computers and Software I; B; A; M Consumers that are actively shopping online for computers and software.
Computers I; B; A; M Consumers that are actively shopping online for laptops, desktops and tablets.
Printing and Copying I; B; A; M Consumers that are actively shopping online for printers and ink.
Electronics I; B; A; M Consumers that are actively shopping online for electronics.
Mobile Phones I; B; A; M Consumers that are actively shopping online for cell phones and smartphones.
Mobile Phone Accessories I; B; A; M Consumers that are actively shopping online for cell phone and smartphone accessories.
Gift Buyer I; B; A; M Consumers that are actively shopping online for gifts, flowers, and food.
Flowers I; B; A; M Consumers that are actively shopping online for flowers.
Food Gifts I; B; A; M Consumers that are actively shopping online for food and snacks.
Beauty I; B; A; M Consumers that are actively shopping online for health and beauty products.
Cosmetics I; B; A; M consumers that are actively shopping online for cosmetics.
Hair Care I; B; A; M Consumers that are actively shopping online for hair care.
Perfume and Cologne I; B; A; M Consumers that are actively shopping online for perfume and cologne.
Skin Care I; B; A; M Consumers that are actively shopping online for skin care products.
Nutrition I; B; A; M Consumers that are actively shopping online for vitamins and nutrition products.
Home and Garden I; B; A; M Consumers that are actively shopping online for home and garden products.
Appliances I; B; A; M Consumers that are actively shopping online for appliances.
Bathroom I; B; A; M Consumers that are actively shopping online for bathroom sets, hardware, towels, and accessories.
Linens and Bedding I; B; A; M Consumers that are actively shopping online for bedding.
Kitchen and Dining I; B; A; M Consumers that are actively shopping online for cooking supplies, tableware and glassware.
Furniture I; B; A; M Consumers that are actively shopping online for furniture.
Garden and Patio I; B; A; M Consumers that are actively shopping online for garden, landscaping, and outdoor supplies.
Home Furnishings I; B; A; M Consumers that are actively shopping online for home decor.
Home Improvement I; B; A; M Consumers that are actively shopping online for home improvement products.
Lamps and Lighting I; B; A; M Consumers that are actively shopping online for home lighting.
Pets and Supplies I; B; A; M Consumers that are actively shopping online for pet supplies.
Cats I; B; A; M Consumers that are actively shopping online for cat supplies.
Dogs I; B; A; M Consumers that are actively shopping online for dog supplies.
Jewelry I; B; A; M Consumers that are actively shopping online for jewelry and watches.
Mens Clothing I; B; A; M Consumers that are actively shopping online for men’s clothing and accessories.
Mens Shoes I; B; A; M Consumers that are actively shopping online for men’s shoes.
Mens Accessories I; B; A; M Consumers that are actively shopping online for men’s accessories.
Womens Clothing I; B; A; M Consumers that are actively shopping online for women’s clothing and accessories.
Womens Shoes I; B; A; M Consumers that are actively shopping online for women’s shoes.
Womens Accessories I; B; A; M Consumers that are actively shopping online for women’s accessories.
Sports and Outdoors I; B; A; M Consumers that are actively shopping online for sports equipment and outdoor gear.
Toys I; B; A; M Consumers that are actively shopping online for toys and games.
Video Games I; B; A; M Consumers that are actively shopping online for video games.
Millenial A College Millennials are defined by their age and active presence on university and college campuses.
Expecting A Expecting Parents are expecting a baby or likely to be expecting a baby, as defined by declared data, online shopping for maternity clothing, and website visitation to pregnancy and parental preparation content.
Engaged A Getting Married are defined by their shopping behavior for engagement rings, wedding bands, wedding dresses, wedding shoes, wedding invitations, wedding flowers, and wedding décor.
Home Buyer A Home Buyers or likely to be home buyers are defined by declared data, online shopping habits, and website visitation.
Mom A Moms are identified and powered by a core set of declared data at the individual level.
New Parent A New Parents are identified and defined by their demographics and shopping behavior for infant and baby clothing, baby feeding products, strollers, car seats, baby furniture, infant toys, and other baby gear.
Adrenaline A Adrenaline Junkies are defined by their consistent shopping behavior for camping, hiking, biking, kayaking, skiing, snowboarding, and other outdoor adventure sports gear.
Beauty Style A Beauty Mavens are defined by their consistent shopping behavior for beauty products such as cosmetics, hair care, skin care, perfume, and beauty tools.
Connected A Connected Home consists of consumers that shop across a variety of categories for the connected home, including lighting, security, thermostat, voice controlled devices, etc. These shoppers are on the leading edge of having a home that is infused with all of the latest technology
Cord Cutter A Cord Cutters are defined by their cutting of traditional media services like cable, being at the front of the pack for new and streaming technology solutions, and relying heavily upon mobile and connected devices for their content consumption.
Design A Design Aficionados are defined by their consistent shopping behavior for products to beautify their home such as furniture, home decor, curtains and drapes, rugs, bedding sets, and table linens.
DIY Neighbors A DIY Neighbors are defined by their consistent shopping behavior for DIY products such as power tools, flooring supplies, plumbing supplies, building supplies, hardware, electrical supplies, and power equipment.
Early Tech Adopters A Early Tech Adopters are defined by being at the front of the pack with new technology purchases and influencers in their circles. The products and brands they shop for, general demographics, and website content consumption determine membership in this audience.
Fashionista A Fashion Insiders are defined by their consistent shopping behavior for handbags, shoes, dresses, jewelry, and other fashion accessories.
Fitness A Fitness Buffs are defined by their consistent shopping behavior for fitness equipment, activewear, yoga and pilates gear, vitamins, and nutritional supplements.
Gamer A Gamers are defined by their core demographic of males 18 to 44 and consistent shopping behavior in video games, video game consoles, computers and electronics.
Gearhead A Gearheads are defined by their consistent shopping behavior for auto parts, auto accessories, and tires.
Family CEO A Family CEOs are defined by their consistent shopping behavior for baby and kids items, products for the kitchen and home, and items for pets.
Outdoors A Outdoors People are defined by their consistent shopping behavior for hunting, fishing, boating, camping, and hiking gear.
Pet Lover A Pet Lovers are defined by their consistent shopping behavior for toys, food, health items, and accessories for their dogs, cats, and other pets.
Team Player A Team Players are defined by their consistent shopping behavior for baseball, softball, football, basketball, volleyball, and hockey gear.
Tech Fan A Tech Fans are defined by their consistent shopping behavior for computers and electronics such as smartphones, tablets, TVs, speakers and headphones, and digital cameras.
Deal Seeker I; B; A; M Deal Seekers are defined by shopping behavior such as using coupons, buying from budget focused stores, and using deal, coupon, and comparison shopping sites.
Luxury Shopper I; B; A; M Luxury Shoppers are defined by shopping behavior for high end fashion and luxury brands from higher end merchants.
Big Spender I; B; A; M Big Spenders are defined by making big purchases or spending a large amount.
Holiday Shopper I; B; A; M Holiday Shoppers are consumers that are actively shopping online for Halloween costumes and accessories.
Online Buyer I; B; A; M Online Buyers are verified online buyers across the retail vertical.

For values not available or false, they will not show up in the result list.

Email Validation

"email_validation":{  
  "domain_type": <domain types>,
  "status": <statuses>
  "status_code": <status_codes from 10-530>,
  "address": <input email address>,
  "email_corrections":[ <a list of correct email addresses> ]
  }

If you also have the email validation (or email correction) service in your API key, you will see the email validation result together with other email intelligence information.

Sample Requests

The following is a list of example API requests in different languages

cURL

cURL

curl -X GET "https://api.towerdata.com/v5/ev?timeout=2&email=johndoe@yahoo.com&api_key=1234567890feedfacecafe1234567890"

Sample code calling EV API with curl.

Python

python

import requests
url = "https://api.towerdata.com/v5/ev"
querystring = {"timeout":"10","email":"johndoe@yahoo.com","api_key":"1234567890feedfacecafe1234567890"}
response = requests.request("GET", url, params=querystring)
print(response.text)

Sample code calling EV API with Python.

Ruby

ruby

require 'uri'
require 'net/http'
url = URI("https://api.towerdata.com/v5/ev?timeout=2&email=johndoe%40yahoo.com&api_key=1234567890feedfacecafe1234567890")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body

Sample code calling EV API with Ruby.

Java

java

HttpResponse<String> response = Unirest.get("https://api.towerdata.com/v5/ev?timeout=2&email=johndoe%40yahoo.com&api_key=1234567890feedfacecafe1234567890")
.asString();

Sample code calling EV API with Java.

JavaScript

javascript

var settings = {
  "async": true,
  "crossDomain": true,
  "url": "https://api.towerdata.com/v5/ev?timeout=2&email=johndoe%40yahoo.com&api_key=1234567890feedfacecafe1234567890",
  "method": "GET",
  "headers": {  }
}
$.ajax(settings).done(function (response) {
  console.log(response);
});

Sample code calling EV API with JavaScript.

C#

C#

var client = new RestClient("https://api.towerdata.com/v5/ev?timeout=2&email=johndoe%40yahoo.com&api_key=1234567890feedfacecafe1234567890");
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);

Sample code calling EV API with C#.

Sample Email Validation Responses

Valid email response

{  
   "email_validation":{  
      "domain_type":"freeisp",
      "status_code":50,
      "address":"johndoe@yahoo.com",
      "status":"valid"
   }
}

GET https://api.towerdata.com/v5/ev?email=johndoe@yahoo.com&api_key={API-Key}

The above command returns JSON structured like this:

Invalid email address and corrected email addresses

{  
   "email_validation":{  
      "status_code":325,
      "address":"johndoe@imaginerealty.com",
      "status":"invalid"
   }
}

Corrected email address case

{
  "email_validation": {
    "status_code": 155,
    "address": "johndoe@@yahoo.com",
    "email_corrections": [
      "johndoe@yahoo.com"
    ],
    "status": "invalid"
  }
}

GET https://api.towerdata.com/v5/ev?timeout=2&email=johndoe@imaginerealty.com&api_key={API-Key}

If an email address is invalid and eligible for correction TowerData, will return a suggested correction or corrections if applicable. Corrected email addresses are validated before being suggested.

The above command returns JSON structured like this:

Role account email response

{  
   "email_validation":{  
      "domain_type":"paidisp",
      "status_code":50,
      "address":"info@abc.com",
      "role_account":true,
      "status":"valid"
   }
}

GET https://api.towerdata.com/v5/ev?timeout=2&email=info@abc.com&api_key={API-Key}

The above command returns JSON structured like this:

Unknown status response

{  
   "email_validation":{  
      "domain_type":"paidisp",
      "status_code":20,
      "address":"johndoe@twlakes.net",
      "status":"unknown"
   }
} 

GET https://api.towerdata.com/v5/ev?timeout=2&email=johndoe@twlakes.net&api_key={API-Key}

The above command returns JSON structured like this:

Unverifiable email response

{  
   "email_validation":{  
      "domain_type":"disposable",
      "status_code":45,
      "address":"johndoe@mailinator.com",
      "status":"unverifiable"
   }
}

GET https://api.towerdata.com/v5/ev?timeout=2&email=johndoe@mailinator.com&api_key={API-Key}

The above command returns JSON structured like this:

Risky email response

{  
   "email_validation":{  
      "status_code":505,
      "address":"donotuse@noemail.com",
      "status":"risky"
   }
}

GET https://api.towerdata.com/v5/ev?timeout=3&email=donotuse@noemail.com&api_key={API-Key}

The above command returns JSON structured like this:

Invalid API Key response

Invalid API Key

GET https://api.towerdata.com/v5/ev?timeout=2&email=c@i.com&api_key={Missing or bad API-Key}

The above command returns JSON structured like this:

Invalid timeout value response

{  
   "email_validation":{  
      "status_code":999,
      "status":"unkown"
   }
}

GET https://api.towerdata.com/v5/ev?timeout=0&email=c@i.com&api_key={API-Key}

The above command returns JSON structured like this:

Missing email query parameter response

Missing query parameter(s).

GET https://api.towerdata.com/v5/td?timeout=4&api_key={API-Key}

The above command returns JSON structured like this:

Sample Email Intelligence Responses

{
  "age":"21-24",
  "gender":"Male",
  "interests":{
    "blogging":true,
    "high_end_brand_buyer":true,
    "sports":true,
  },
  "eam":{
    "date_first_seen":"2009-06-20",
    "month_last_open":"2014-11",
    "popularity":10,
    "velocity":2,
  },
  "education":"Completed Graduate School",
  "occupation":"Professional",
  "children":"No",
  "household_income":"75k-100k",
  "marital_status":"Single",
  "home_owner_status":"Rent"
}

The query can look like:

https://api.towerdata.com/v5/td?api_key=78ad9ddc21e3c220cc5da024b6dbe13c&email=personalize@rapleaf.com

or

https://api.towerdata.com/v5/td?api_key=78ad9ddc21e3c220cc5da024b6dbe13c&email=personalize@rapleaf.com &fields=gender,household_income,charitable_donors

Email Validation API Reference

Domain types

Domain_type Description
disposable Disposable domain
freeisp Free ISP
paidisp Paid ISP
wireless Wireless
edu Education
gov Government
biz Business
org Non-profit
other Other
null Unknown

Status codes

Status Status_code Description
Unknown 10 Syntax OK
Unknown 20 Syntax OK and domain valid according to the database
Valid 30 Syntax OK and domain exists
Valid 40 Syntax OK and domain can receive email
Unverifiable 45 Domain does not support validation (accepts all mailboxes)
Valid 50 Vaiid email address
Invalid 100 General syntax error
Invalid 110 Invalid character in address
Invalid 115 Invalid domain syntax
Invalid 120 Invalid username syntax
Invalid 125 Invalid username syntax for that domain
Invalid 130 Address is too long
Invalid 135 Address has unbalanced parentheses, brackets, etc.
Invalid 140 Address does not have a username
Invalid 145 Address does not have a domain
Invalid 150 Address does not have an @ sign
Invalid 155 Address has more than one @ sign
Invalid 200 Invalid top-level-domain (TLD) in address
Invalid 205 IP address not allowed as domain
Invalid 210 Address contains space or extra text
Invalid 215 Unquoted spaces are not allowed in email addresses
Invalid 310 Domain does not exist
Invalid 315 Domain does not have a valid IP address
Invalid 325 Domain can not receive email
Invalid 400 Mailbox does not exist
Invalid 410 Mailbox is full and can not receive email
Invalid 420 Mail is not accepted for this domain
Invalid 500 Emails with that username are not accepted
Invalid 505 Emails with that domain are not accepted
Invalid 510 That email address is not accepted
Invalid 512 The email address is a group mailbox
Invalid 515 The email address uses a wireless domain
Invalid 520 The email address matched to known bounces
Invalid 525 Address is a spam trap or known complainer
Invalid 530 Address has opted out from commercial email

HTTP Response Status Codes

Status Code Description
200 Ok Request processed successfully.
302 Redirect Your API key is not yet activated. Please load this URL in a browser to click through the Terms of Service before proceeding.
400 Bad Request Some part of the request was invalid. The response body will give further explanation of the problem. Usually this means the email address was invalid, some of the parameters were not url encoded, or no parameters were passed.
401 Unauthorized API key was not provided or is invalid.
403 Forbidden Your query limit has been exceeded, or the API key is not associated with any available response section. Contact developer@towerdata.com if you would like to increase your limit or add available response sections.
429 Too Many Requests Rate limits have been exceeded. If you call the API more than 500 times per second, you will receive this error. Reduce the rate of your requests.
500 Internal Server Error There was an unexpected error on our server. This should be very rare and if you see it please contact support@towerdata.com.