MailLandDocs
ReferansAPI başvurusu

Email validation

Validate addresses one at a time or in batches, with a Validation key.

Validate a single email address

POST/v1/validation/email

Performs comprehensive email validation including:

  • Syntax validation (RFC 5322)
  • Disposable email detection
  • Role account detection
  • MX record verification
  • SMTP deliverability check (optional)

Results are cached for performance. Consumes 1 validation credit only on successful validation. Errors (timeout, blacklist, connection failures) do not consume credits.

Authorization

ApiKey
X-API-Key<token>

Your API key, created in the dashboard under API keys. Production sending keys start with ml_pet_ (transactional) or ml_pem_ (marketing); sandbox keys with ml_set_ or ml_sem_.

In: header

Request Body

application/json

Cancellation token

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/v1/validation/email"
{  "email": "string",  "result": "string",  "score": 0,  "syntax": {    "is_valid": true,    "suggestion": null,    "domain": null,    "local_part": null,    "has_typo": true,    "typo_type": null,    "typo_confidence": null  },  "disposable": {    "is_disposable": true  },  "role": {    "is_role_account": true  },  "mx": {    "has_mx": true,    "records": [      "string"    ],    "accepts_mail": true  },  "smtp": null,  "provider": {    "name": "string",    "type": "string"  },  "cached": true,  "verified_at": "2019-08-24T14:15:22Z"}

Validate multiple email addresses in batch

POST/v1/validation/batch

Validates up to 100 email addresses in a single request. Consumes 1 credit per successful validation only. Errors (timeout, blacklist) do not consume credits. Results are returned in the same order as input.

Authorization

ApiKey
X-API-Key<token>

Your API key, created in the dashboard under API keys. Production sending keys start with ml_pet_ (transactional) or ml_pem_ (marketing); sandbox keys with ml_set_ or ml_sem_.

In: header

Request Body

application/json

Cancellation token

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

curl -X POST "https://example.com/v1/validation/batch"
{  "total_count": 0,  "processed_count": 0,  "successful_count": 0,  "credits_consumed": 0,  "free_validations": 0,  "results": [    {      "email": "string",      "result": "string",      "score": 0,      "syntax": {        "is_valid": true,        "suggestion": null,        "domain": null,        "local_part": null,        "has_typo": true,        "typo_type": null,        "typo_confidence": null      },      "disposable": {        "is_disposable": true      },      "role": {        "is_role_account": true      },      "mx": {        "has_mx": true,        "records": [          "string"        ],        "accepts_mail": true      },      "smtp": null,      "provider": {        "name": "string",        "type": "string"      },      "cached": true,      "verified_at": "2019-08-24T14:15:22Z"    }  ]}

Get current validation credit balance

GET/v1/validation/credits

Returns the current month's validation credit usage and remaining balance. Credits reset automatically at the start of each billing month.

Authorization

ApiKey
X-API-Key<token>

Your API key, created in the dashboard under API keys. Production sending keys start with ml_pet_ (transactional) or ml_pem_ (marketing); sandbox keys with ml_set_ or ml_sem_.

In: header

Response Body

application/json

curl -X GET "https://example.com/v1/validation/credits"
{  "monthly_quota": 0,  "used": 0,  "remaining": 0,  "resets_at": "2019-08-24T14:15:22Z"}

Get validation history

GET/v1/validation/history

Returns paginated validation history for the current tenant. Supports filtering by result type, date range, and search term.

Authorization

ApiKey
X-API-Key<token>

Your API key, created in the dashboard under API keys. Production sending keys start with ml_pet_ (transactional) or ml_pem_ (marketing); sandbox keys with ml_set_ or ml_sem_.

In: header

Query Parameters

limit?|
Match^-?(?:0|[1-9]\d*)$
Formatint32
Default20
cursor?string
result?string

Filter by result type (Deliverable, Risky, Undeliverable, Unknown)

from?string

Filter from date (UTC)

Formatdate-time
to?string

Filter to date (UTC)

Formatdate-time
search?string

Search by email address

Response Body

application/json

application/json

curl -X GET "https://example.com/v1/validation/history"
{  "items": [    {      "email": "string",      "result": "string",      "score": 0,      "is_disposable": true,      "is_role_account": true,      "has_valid_mx": true,      "smtp_deliverable": null,      "provider": null,      "was_cached": true,      "smtp_verified": true,      "credit_consumed": true,      "verified_at": "2019-08-24T14:15:22Z"    }  ],  "nextCursor": null,  "hasMore": true}

Get validation statistics

GET/v1/validation/stats

Returns aggregated validation statistics for the current tenant. Optionally filter by date range.

Authorization

ApiKey
X-API-Key<token>

Your API key, created in the dashboard under API keys. Production sending keys start with ml_pet_ (transactional) or ml_pem_ (marketing); sandbox keys with ml_set_ or ml_sem_.

In: header

Query Parameters

from?string

Filter from date (UTC)

Formatdate-time
to?string

Filter to date (UTC)

Formatdate-time

Response Body

application/json

curl -X GET "https://example.com/v1/validation/stats"
{  "total_validations": 0,  "deliverable": 0,  "risky": 0,  "undeliverable": 0,  "unknown": 0,  "deliverable_rate": 0,  "risky_rate": 0,  "undeliverable_rate": 0,  "unknown_rate": 0,  "credits_consumed": 0,  "free_validations": 0}