Get a validation result

Fetch the verdict of an asynchronous verification.

Fetches a single verification by the verification_id returned from POST /v3/validate. While the probe is still running the response carries result: "unknown" with sub_status: "queued" — poll until sub_status changes.

GET /v3/validate/{id}

Path parameters

ParameterTypeRequiredDescription
iduuidRequiredThe verification_id returned by POST /v3/validate.

Response fields

ParameterTypeRequiredDescription
resultstringOptionalvalid, invalid, catch_all, unknown, spamtrap, abuse or do_not_mail. See Results & statuses.
is_validbooleanOptionaltrue when the result is valid or catch_all.
recommendation · confidence · riskverdict metadataOptionalSuggested action (mail/caution/suppress/review), 0–1 confidence, and the derived risk band (low/medium/high/undeliverable).
domain detailsobject fieldsOptionaldomain, mx_provider, mx_record, mx_found, is_catch_all, smtp_check, domain_age_days.
address flagsbooleansOptionalis_disposable, is_role_address, is_free_provider, plus did_you_mean typo suggestions.

Responses

StatusDescription
200OK. The full verification object described above.
401Missing or invalid API key.
404No verification with that id on your account.

Code examples

cURL
curl https://api.wemail.io/v3/validate/{id} \
  -H "Authorization: Bearer afn_live_…"
Node.js
const res = await fetch("https://api.wemail.io/v3/validate/{id}", {
  headers: {
    Authorization: `Bearer ${process.env.WEMAIL_API_KEY}`,
  },
});
const data = await res.json();
Python
import os, requests

r = requests.get(
    "https://api.wemail.io/v3/validate/{id}",
    headers={"Authorization": f"Bearer {os.environ['WEMAIL_API_KEY']}"},
)
data = r.json()