Email Verification API Documentation

Complete reference for the Email Verification API

Authentication

Pass your API key via header or query parameter:

Authorization: Bearer sk_live_your_key_here
Query: ?api_key=sk_live_your_key_here

GET POST /v1/email/verify

Parameters

Field Type Required Description
emailstringyesEmail address to verify
smtp_checkbooleannoEnable SMTP mailbox verification (default: false)

Success Response (200)

{
  "success": true,
  "data": {
    "email": "user@gmail.com",
    "is_valid": true,
    "domain": "gmail.com",
    "is_disposable": false,
    "is_role_account": false,
    "is_free_provider": true,
    "checks": {
      "format": true,
      "disposable": true,
      "mx": true,
      "dns": true,
      "role_account": true
    },
    "mx_records": [
      {"host": "gmail-smtp-in.l.google.com", "priority": 5}
    ],
    "duration_ms": 45
  }
}

Response Fields

Field Description
is_validOverall validity — format OK, DNS exists, not disposable
is_disposableWhether domain is a known disposable/temporary email service
is_role_accountWhether the local part is a role address (admin, info, etc.)
is_free_providerWhether domain is a free email provider (Gmail, Yahoo, etc.)
mx_recordsArray of MX records with host and priority
checksObject with individual check results (format, mx, dns, etc.)

Code Examples

JavaScript

const res = await fetch(
  `https://snapapis.com/api/v1/email/verify?api_key=${KEY}&email=${email}`
);
const { data } = await res.json();
if (data.is_valid && !data.is_disposable) {
  // safe to send
}

Python

import requests

r = requests.get('https://snapapis.com/api/v1/email/verify',
    params={'api_key': KEY, 'email': 'test@example.com'})
data = r.json()['data']
print(data['is_valid'], data['is_disposable'])