Validate Email
Validates an email address with comprehensive checks including DNS MX records, disposable email detection, public domain identification, relay detection, and typo suggestions.
https://api.nofakemails.com/v1/email/{email}Validates a single email address
Request
The email address should be URL-encoded when passed in the path parameter. Authentication is required via the X-API-Key header or Authorization: Bearer token.
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
email | string | Yes | The email address to validate (URL-encoded) |
Code Examples
curl -X GET "https://api.nofakemails.com/v1/email/user@example.com" \
-H "X-API-Key: your_api_key_here"Response
The API returns a JSON object containing comprehensive validation results.
Success Response (200 OK)
{
"email": "user@example.com",
"valid": true,
"normalized": "user@example.com",
"local_part": "user",
"alias": false,
"ascii": true,
"role": null,
"domain": "example.com",
"mx": true,
"disposable": false,
"public": false,
"relay": false,
"typo": false,
"typo_suggestion": null
}Response Fields
| Field | Type | Description |
|---|---|---|
email | string | The original email address that was validated |
valid | boolean | Whether the email address has valid format according to RFC 5322 |
normalized | string | null | Normalized/standardized version of the email (lowercase) |
local_part | string | null | The local part of the email address (before the @ symbol) |
alias | boolean | Whether the email contains a plus tag (e.g., user+tag@example.com) |
ascii | boolean | Whether the email address contains only ASCII characters |
role | string | null | Role category if this is a role-based email (Admin, Support, Sales, etc.) |
domain | string | null | The domain portion of the email address (after the @ symbol) |
mx | boolean | Whether the domain has valid MX (Mail Exchange) records |
disposable | boolean | Whether this is a disposable/temporary email service |
public | boolean | Whether this is a public email provider (Gmail, Yahoo, Outlook, etc.) |
relay | boolean | Whether this is an email relay/forwarding service |
typo | boolean | Whether the domain appears to be a typo of a common email provider |
typo_suggestion | string | null | Suggested correction for typos (e.g., "gmail.com" for "gmial.com") |
Error Responses
400 Bad Request - Missing Email
Returned when the email parameter is missing or empty.
{
"status": 400,
"error": "Email address is required",
"code": "MISSING_EMAIL"
}400 Bad Request - Invalid Format
Returned when the email address format is invalid.
{
"status": 400,
"error": "The email address is invalid.",
"code": "INVALID_EMAIL_FORMAT"
}401 Unauthorized
Returned when the API key is missing or invalid.
{
"status": 401,
"error": "Invalid API key",
"code": "INVALID_API_KEY"
}429 Too Many Requests
Returned when you exceed your rate limit.
{
"status": 429,
"title": "Too Many Requests",
"detail": "You have exceeded the rate limit. Please try again in 1 seconds."
}500 Internal Server Error
Returned when an unexpected error occurs during validation.
{
"status": 500,
"error": "An error occurred while validating the email",
"code": "INTERNAL_ERROR"
}503 Service Unavailable
Returned when the request was cancelled or the service is temporarily unavailable.
{
"status": 503,
"error": "Request was cancelled",
"code": "REQUEST_CANCELLED"
}