Email Validator

Email Validation API

Integrate email validation into your applications with our free REST API. No API key required. Perfect for signup forms, contact forms, and marketing automation.

Quick Start

Make a POST request to validate an email address:

curl -X POST https://api.emailchecker-b00.pages.dev/v1/validate \
  -H "Content-Type: application/json" \
  -d '{"email": "example@domain.com"}'

Endpoints

POST /v1/validate

Validate a single email address. Returns validation result with syntax check, MX record status, and disposable email detection.

POST /v1/validate/bulk

Validate multiple email addresses at once. Accepts up to 1000 emails per request.

GET /v1/check-mx?domain=example.com

Check MX records for a domain. Returns mail server information.

GET /v1/check-disposable?domain=example.com

Check if a domain is a known disposable email provider.

Request & Response Examples

Request Body

{
  "email": "example@domain.com"
}

Success Response

{
  "success": true,
  "data": {
    "email": "example@domain.com",
    "valid": true,
    "status": "valid",
    "checks": {
      "syntax": true,
      "mx": true,
      "disposable": false,
      "role_based": false
    },
    "domain": "domain.com",
    "local_part": "example",
    "mx_records": [
      "mx1.domain.com",
      "mx2.domain.com"
    ]
  }
}

Error Response

{
  "success": false,
  "error": {
    "code": "INVALID_EMAIL",
    "message": "The email address format is invalid"
  }
}

Code Examples

JavaScript / Node.js

const response = await fetch('https://api.emailchecker-b00.pages.dev/v1/validate', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ email: 'example@domain.com' })
});

const data = await response.json();
console.log(data);

Python

import requests

response = requests.post(
    'https://api.emailchecker-b00.pages.dev/v1/validate',
    json={'email': 'example@domain.com'}
)

data = response.json()
print(data)

PHP

 'example@domain.com']));
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
$data = json_decode($response, true);
print_r($data);
?>

Rate Limits

Our API is free to use with the following rate limits:

Plan Requests/Day Requests/Second
Free 10,000 10

Try It Now

Test the API with your own email address: