Email Validator

Full email validation in one call. Checks RFC 5322 syntax, performs a live MX record lookup to confirm the domain can receive mail, detects disposable addresses, returns the normalized canonical form, and suggests a correction when the domain looks like a common typo.

Get API Key

Overview

Use Cases

  • Block undeliverable addresses at signup before they reach your mailing list
  • Catch typos like gmial.com and prompt users to correct them inline
  • Flag disposable addresses during registration to prevent throwaway accounts
  • Store the normalized canonical address alongside the original for deduplication

Features

RFC 5322 syntax validation
Live MX DNS record lookup
Disposable domain detection (90,000+ domains)
Email normalization (lowercase, plus-tag removal, alias resolution)
Typo suggestion for common provider domains (gmail.com, yahoo.com, outlook.com, and more)
Batch endpoint for validating up to 50 emails per request

API Endpoints

Validate Email

Validates a single email address and returns a full breakdown of syntax validity, MX record status, disposable domain check, normalized form, and any typo suggestion.

POST
https://api.requiems.xyz/v1/validation/email

Parameters

Name Type Required Description
email string Required The email address to validate.

Try it out

Live Demo
Request

The email address to validate.

Response Fields

Field Type Description
email string|null The email address exactly as supplied in the request body; null when syntax is invalid
valid boolean Overall validity. True only when the address passes syntax validation and the domain has at least one MX record
syntax_valid boolean Whether the address is syntactically valid according to RFC 5322
mx_valid boolean Whether the domain has at least one MX record, meaning it can receive email
disposable boolean Whether the address uses a known disposable or temporary email domain
normalized string|null The canonical form of the address after normalization (lowercase, plus-tag removal, alias-domain resolution). Null when syntax is invalid
domain string|null The domain part of the address (after @). Null when syntax is invalid
suggestion string A corrected domain name when the supplied domain looks like a typo of a well-known provider (e.g. gmial.com โ†’ gmail.com). Null when no close match is found or the domain is already correct

Code Examples

curl -X POST https://api.requiems.xyz/v1/validation/email \
  -H "requiems-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"email": "[email protected]"}'

Error Responses

validation_failed

The email field is missing from the request body.

bad_request

The request body is missing, not valid JSON, or contains unknown fields.

internal_error

Unexpected server error.

Validate Emails (Batch)

Validates up to 50 email addresses in a single request. Each email is processed independently and returns a full validation breakdown (syntax, MX record, disposable check, normalization, and typo suggestion). Invalid emails do not fail the request. Billing: 1 credit per email.

POST
https://api.requiems.xyz/v1/validation/email/batch

Parameters

Name Type Required Description
emails array Required Array of email addresses to validate. Min: 1, Max: 50.

Try it out

Live Demo
Request

Enter JSON array, e.g., ["[email protected]", "[email protected]"]

Array of email addresses to validate. Min: 1, Max: 50.

Response Fields

Field Type Description
results array List of validation results for each email, preserving input order
results[].email string|null Original email input (null if invalid syntax)
results[].valid boolean Overall validity (syntax + MX record)
results[].syntax_valid boolean Whether the email is syntactically valid (RFC 5322)
results[].mx_valid boolean Whether the domain has valid MX records
results[].disposable boolean Whether the email comes from a disposable domain
results[].normalized string|null Canonical normalized email (lowercase, alias handling, etc.)
results[].domain string|null Extracted domain from email address
results[].suggestion string|null Suggested correction for common domain typos
total integer Number of emails processed in the batch

Code Examples

curl -X POST https://api.requiems.xyz/v1/validation/email/batch \
  -H "requiems-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"emails": ["[email protected]", "[email protected]"]}'

Error Responses

validation_failed

Valid JSON body that fails field validation (empty array or more than 50 emails).

bad_request

Invalid JSON, malformed request body, or unexpected field types.

internal_error

Unexpected server error

Frequently Asked Questions