Skip to content

Email check

View as Markdown

Endpoint

GET /v1/check/{email_or_domain}

Validates an email address (or domain) and returns a risk score, a deliverability score, and a structured reason. Accepts both a full email ([email protected]) and a bare domain (domain.com).

Authentication

All requests require an API key in the Authorization header:

Authorization: Bearer sv_your_key

Parameters

ParameterTypeDescription
email_or_domainstring (path)Full email address ([email protected]) or bare domain (domain.com). Max 320 characters.

Passing a full email enables local-part analysis (role accounts, random strings, suspicious patterns) in addition to domain analysis.

Input validation

The following inputs return a 422 error:

  • Empty string
  • Longer than 320 characters total
  • Email with more than one @, or local part longer than 64 characters
  • Domain with spaces, an http:// or https:// prefix, or characters outside [a-zA-Z0-9.-]
  • IP addresses (IPv4 or IPv6)
  • Non-ASCII domains without Punycode encoding (e.g. émail.fr → use xn--mail-poa.fr)

Response

FieldTypeDescription
emailstringMasked input: {hash[:2]}****{hash[-2:]}@domain — local part is never exposed in plain text
is_riskybooleantrue if risk_score ≥ project threshold (default: 65)
risk_scoreintegerRisk score from 0 to 100
reasonstringPrimary reason: safe · disposable · undeliverable · role_account
is_free_providerbooleantrue for consumer webmail providers (Gmail, Yahoo, Hotmail…)
is_corporate_emailbooleantrue for a business domain with a professional MX configuration
did_you_meanstring | nullTypo correction suggestion — e.g. "gmail.com" for input "gmial.com"
is_alias_emailbooleantrue for privacy alias services (SimpleLogin, AnonAddy, Apple Hide My Email…)
mx_provider_labelstring | nullHuman-readable MX provider name — e.g. "Google Workspace", "Microsoft 365"
deliverability_scoreintegerDeliverability score from 0 to 100 — probability that a real human will receive the email

Risk score interpretation

The higher the score, the riskier the email. The calculation method is proprietary.

ScoreMeaningRecommended action
0–29Safe domainAccept
30–49Low riskAccept with caution
50–79High riskShow a warning
80–99Very likely disposableBlock or confirm
100Confirmed disposableBlock

Deliverability score interpretation

The higher the score, the better the deliverability. The calculation method is proprietary.

ScoreMeaning
80–100High — email is very likely to reach the inbox
50–79Moderate — delivery is possible but not guaranteed
0–49Low — email is unlikely to be delivered

Reason values

ValueDescription
safeNo risk detected
disposableKnown or detected disposable domain
undeliverableDomain does not exist (NXDOMAIN) or has no MX records
role_accountLocal part is a role address (admin@, info@, no-reply@…)

Error codes

CodeDescription
200Success
401Missing or invalid API key
403Unauthorised origin (CORS restriction)
422Invalid email or domain format
429Quota exceeded — upgrade your plan or wait for the monthly reset
500Internal server error — always fail open, let the user through

See Error codes for JSON response structure and examples.

Last updated: