NAV Navbar
php csharp java

Introduction

Welcome to the DISIFY API documentation!

DISIFY is free email validation API which also includes validation for disposable (DEA) or temporary email addresses.

Here you will find some basic request and response examples, tips, best practices and use cases.

Documentation is still in development process and will be updated with more features and examples. Check back soon.

Quick Tips

Single Email Address

Example POST request

<?php
$curl = curl_init();

$data = [
    'email' => 'your@example.com',
];

$post_data = http_build_query($data);

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://disify.com/api/email",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_POSTFIELDS => $post_data,
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}
var client = new RestClient("https://disify.com/api/email");
var request = new RestRequest(Method.POST);
request.AddParameter("email", "your@example.com");
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");
RequestBody body = RequestBody.create(mediaType, "email=your@example.com");
Request request = new Request.Builder()
  .url("https://disify.com/api/email")
  .post(body)
  .build();

Response response = client.newCall(request).execute();

Response example

{
    "format": true,
    "alias": true,
    "domain": "example.com",
    "disposable": false,
    "dns": true
}

Description

Validates single email address or domain.

GET Request

Requires just email parameter and email address after slash (or domain).

GET https://disify.com/api/email/your@example.com

GET https://disify.com/api/domain/example.com

POST Request

POST https://disify.com/api/email

POST https://disify.com/api/domain

POST Parameters

Parameter Type Description
email string Email address to check
domain string Domain name to check

JSON Response Parameters

Parameter Type Description
format boolean Check if email has valid format
alias boolean Check if email contains "+" symbol
domain string Returns top-level domain (TLD) of given email
disposable boolean Check if email has been detected as disposable
dns boolean Check if email MX records are live

Mass Emails & Domains

Example POST request

<?php
$curl = curl_init();

$emails = [
    'your@example.com',
    'another@mail.com'
];

$data = [
    'bulk' => true,
    'email' => implode(',', $emails),
];

$post_data = http_build_query($data);

curl_setopt_array($curl, array(
    CURLOPT_URL => "https://disify.com/api/email",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_CUSTOMREQUEST => "POST",
    CURLOPT_POSTFIELDS => $post_data,
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
    echo "cURL Error #:" . $err;
} else {
    echo $response;
}

Response example

{
    "total": 2,
    "invalid_format": 0,
    "invalid_dns": 0,
    "disposable": 0,
    "unique": 2,
    "valid": 1,
    "session": "d117271ce938bf91bc718f6cfb7954de"
}

Description

Validates bulk of email addresses or domain names.

GET Request

Insert all emails/domains as single string right after email parameter (after slash). Each email/domain will be automatically recognized by comma, space or new line. Then simply attach parameter mass (or bulk alias) after email list slash.

If you want to mass check domains, simply replace parameter email with domain inside URL.

GET https://disify.com/api/email/your@example.com,another@mail.com/mass

POST Request

Same request structure as single email address, except you will need to provide additional parameter bulk

POST https://disify.com/api/email

POST Parameters

Parameter Type Description
bulk boolean Required in order to make mass/bulk email validation
email string Bulk of email address to check (seperated by comma, whitespace or new-line)
domain string Bulk of domain names to check (seperated by comma, whitespace or new-line)

JSON Response Parameters

Parameter Type Description
total integer Total number of provided emails or domains
invalid_format integer Number of emails/domains with invalid format
invalid_dns integer Number of emails/domains with unresolvable MX records
disposable integer Number of emails/domains detected in our internal blacklists
unique integer Number of unique and valid emails/domains
valid integer Number of valid emails/domains
session string Given hash string to temporary access request results with valid emails/domains

View Valid Mass Results

Response example #1

your@example.com
another@example.com

Response example #2

your@example.com,another@example.com

Description

Returns valid email list of previously requested bulk emails/domains.

GET Request

Use previously returned session value (from mass email/domain check) after URL parameter view.

Optional parameters after session value: download will trigger force download. separate (or comma, separator aliases) will display emails in single string separated by comma instead of new-line.

GET https://disify.com/api/view/d117271ce938bf91bc718f6cfb7954de

Response

Plain-text list of emails/domains seperated by comma or new-line.

Blacklists

You can check our internal domain and MX blacklists here.