{"api":"email-check","description":"On-Worker email deliverability-SIGNALS validation. Nine checks, all computed inside the Worker (DNS via DNS-over-HTTPS). No SMTP connection is ever made.","checks":[{"id":"syntax","description":"RFC5322-pragmatic structure: single '@', local ≤64, domain ≤253, no consecutive/empty labels.","data_source":"In-Worker parser"},{"id":"domain_mx","description":"Domain MX records (can the domain receive mail at all).","data_source":"DNS-over-HTTPS (cloudflare-dns.com, fallback dns.google)"},{"id":"spf_present","description":"v=spf1 TXT record + its ~all/-all/?all policy.","data_source":"DNS-over-HTTPS TXT"},{"id":"dmarc_present","description":"v=DMARC1 TXT at _dmarc.<domain> + its p= policy.","data_source":"DNS-over-HTTPS TXT"},{"id":"disposable_domain","description":"Domain on the community disposable/throwaway blocklist.","data_source":"Bundled disposable-email-domains blocklist (MIT)"},{"id":"role_account","description":"Local part is a role/function mailbox (admin, info, support, …).","data_source":"In-Worker list"},{"id":"free_provider","description":"Domain is a consumer free-mail provider (gmail, outlook, …).","data_source":"In-Worker list"},{"id":"normalization","description":"Canonical address: lowercase; gmail dots + plus-tag stripped; has_plus_tag flag.","data_source":"In-Worker"},{"id":"unicode_domain","description":"Punycode (xn--) / non-ASCII homograph-lookalike flag.","data_source":"In-Worker"}],"limitations":["A Cloudflare Worker cannot open a TCP connection to port 25, so an SMTP handshake — and therefore true mailbox-existence verification — is NOT possible. This API never claims a specific mailbox exists.","MX/SPF/DMARC presence indicates the domain is configured to receive and authenticate mail; it does not prove any individual address accepts mail.","Catch-all domains, greylisting, and provider-side filtering are invisible to a signals check.","The disposable blocklist is community-maintained and necessarily incomplete."],"not_checked":["smtp_handshake","mailbox_existence","reputation_feeds"],"disclaimer":"Deliverability SIGNALS only, not a delivery guarantee. A Cloudflare Worker cannot open an SMTP connection to port 25, so mailbox existence is never verified — a DELIVERABLE_SIGNALS_OK verdict means the domain looks reachable, not that a message will be accepted or land in the inbox. All information is provided \"AS IS\" without warranty of any kind, for informational purposes only. We accept no responsibility or liability for any decision, loss, or action taken in reliance on it. Always verify independently before acting."}