Email validation API

Email validation API documentation.

Send one email address and receive a simple outcome your product can route: accept, review, reject, or inconclusive.

Quickstart

Validate one email address

Use POST /api/validate with an access key from your account. The API accepts one address per request and returns JSON.

curl https://validated.now/api/validate \
  -H "Authorization: Bearer <access_key>" \
  -H "Content-Type: application/json" \
  -d '{"email":"person@company.com"}'

Authentication

Use an access key

Create an access key from the dashboard, then send it as a Bearer token. Copy new keys when they are created; they are not shown again.

Authorization: Bearer <access_key>
01 Create

Open your account and create a named access key.

02 Store

Keep the key in your server-side environment or secret store.

03 Revoke

Revoke keys you no longer use from the dashboard.

Request

Endpoint and body

MethodPOST
URLhttps://validated.now/api/validate
Content typeapplication/json
Body{"email":"person@company.com"}
{
  "email": "person@company.com"
}

Response

Result fields

Route by status first. Use score, confidence, risk, and next_step when you need more control.

{
  "status": "accept",
  "score": 92,
  "confidence": "high",
  "risk": "low",
  "next_step": "Ready to use.",
  "normalized_email": "person@company.com",
  "suggestion": "",
  "flags": {
    "role": false,
    "role_type": "",
    "disposable": false,
    "free_provider": false,
    "catch_all": false
  },
  "billable": true
}
accept Use

Continue with the address.

review Check

Hold for a manual or lower-trust path.

reject Replace

Ask for a different address.

Errors

Error format

Failed requests return a JSON object with an error code and message. When a request is temporarily paused, use the Retry-After header before retrying.

{
  "error": {
    "code": "access_required",
    "message": "A valid integration key is required."
  }
}
400request_unreadable
401access_required or access_denied
402plan_limit_reached
405method_not_allowed
413request_too_large
422email_required
429temporarily_paused

Limits

Usage and retries

API calls count against your active plan when the result is billable. Send one address per request, keep payloads small, and back off when you receive a 429.

One Single address

Use batch validation for lists and imports.

JSON Small payload

Requests larger than the single-address limit are rejected.

Retry Honor pauses

Use Retry-After before sending again.