Pricing API Docs Integrations

Block Disposable Emails

Prevent users to sign up with temporary email addresses.

Try or

                        {
    "status": 200,
    "domain": "mailinator.com",
    "mx": true,
    "disposable": true,
    "did_you_mean": null
}
                    

December 2nd 2021

Validator.pizza is now MailCheck.ai. Same features, different name.

If you used Validator.pizza before, please update your endpoints:

https://www.validator.pizza/domain/ is now https://api.mailcheck.ai/domain/

https://www.validator.pizza/email/ is now https://api.mailcheck.ai/email/

Pricing

Free for up to 86,400 requests per month!

Free

$0 /month

Forever free, no registration required.

  • 120 requests per hour (~86,400 per month)
  • Private API key
  • Priority support
View documentation

Pro

$50 /month

For websites with larger requirements.

  • 5,000 requests per hour (~3,600,000 per month)
  • Private API key
  • Priority support
Subscribe

Documentation

Base url

                https://api.mailcheck.ai
            

Authentication

If you use the free version of MailCheck.ai, you do not need to authenticate.

If you use the paid version, you have two ways to authenticate your requests.

Bearer Token Recommended

Add the Authorization header to the request:

                Authorization: Bearer YOUR-API-KEY
            

Query Parameter

Add the "key" query parameter to the URL:

                https://api.mailcheck.ai/domain/example.com?key=YOUR-API-KEY
            

Endpoints

Email endpoint

                            GET /email/[email protected]
                        

Valid email

                            {
    "status": 200,
    "email": "[email protected]",
    "domain": "example.com",
    "mx": false,
    "disposable": false,
    "alias": false,
    "did_you_mean": false
}
                        

Invalid email

                            {
    "status": 400,
    "error": "The email address is invalid."
}
                        

Requests limit reached

                            {
    "status": 429,
    "error": "Rate limit exceeded."
}
                        

Domain endpoint

                            GET /domain/example.com
                        

Valid domain

                            {
    "status": 200,
    "domain": "example.com",
    "mx": false,
    "disposable": false,
    "did_you_mean": false
}
                            

Invalid domain

                            {
    "status": 400,
    "error": "The domain is invalid."
}
                        

Requests limit reached

                            {
    "status": 429,
    "error": "Rate limit exceeded."
}
                        

Keys and Values

Key Value
status (integer) The status of the request. Possibles values are:
  • 200 The request is successful
  • 400 The request is invalid
  • 429 The rate limit is exceeded
email (string) The email you sent
domain (string) The domain you sent, or the domain from the email you sent
mx (boolean) Whether or not the domain has MX records
disposable (boolean) Whether or not the domain is disposable
alias (boolean) Whether or not the email is an alias
did_you_mean (string) Returns a suggested valid email domain based on a list of the most popular email providers.
Returns NULL if the domain is already a valid domain, or if there's no close result.
error (string) The description of the error, if the status is different from 200

Code samples

<?php

$email = "[email protected]";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.mailcheck.ai/email/' . $email);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);

var_dump($response);

curl -H "Accept: application/json" \
-H "Content-Type: application/json" \
-X GET "https://api.mailcheck.ai/email/[email protected]"

var xmlHttp = new XMLHttpRequest();
xmlHttp.open( "GET", "https://api.mailcheck.ai/email/[email protected]", false );
xmlHttp.send();
console.log(xmlHttp.responseText);

Integrations

Receive Product Updates

Sign up to receive our (very occasional) product updates. We will send you important updates like API changes or new features.

Notify Me