Data tools / Email checks, uptime and web reading
Use when you must check a list of email addresses before a mailing or import: up to 25 addresses in one POST, each checked exactly like /v1/email/verify (syntax, MX, disposable, role, free-provider and placeholder flags, verdict). DNS only, no SMTP mailbox probe. Fixed price per call for 1 to 25 addresses ($0.01 each at a full batch); bad input refused before any charge. $0.25 per call (USDC or USDT). Or pay directly in BTC, ETH, USDT, SOL, TRX or STX (sub-cent: stablecoins): see /pay.
curl -i -X POST https://x402-bazaar-rank.x402-bazaar-rank-worker.workers.dev/v1/email/verify/batch -H 'content-type: application/json' -d '{"emails":["support@gmail.com","no-at-sign"]}'| Parameter | Required | What it is |
|---|---|---|
emails | yes | 1 to 25 email addresses to check; duplicates are removed |
Runnable code for JavaScript, Python and LangChain: /integrations. Full schema: OpenAPI.
{
"results": [
{
"email": "Support@GMAIL.com",
"normalized": "support@gmail.com",
"syntax_ok": true,
"syntax_error": null,
"domain": "gmail.com",
"mx": [
{
"host": "gmail-smtp-in.l.google.com",
"priority": 5
},
{
"host": "alt1.gmail-smtp-in.l.google.com",
"priority": 10
},
{
"host": "alt2.gmail-smtp-in.l.google.com",
"priority": 20
},
{
"host": "alt3.gmail-smtp-in.l.google.com",
"priority": 30
},
{
"host": "alt4.gmail-smtp-in.l.google.com",
"priority": 40
}
],
"has_mx": true,
"null_mx": false,
"a_fallback": false,
"domain_exists": true,
"dns_status": "NOERROR",
"disposable": false,
"role_account": true,
"free_provider": true,
"placeholder": false,
"needs_smtputf8": false,
"verdict": "deliverable_domain",
"reason": "domain publishes MX records",
"source": "cloudflare-dns.com",
"checked_at": "2026-10-06T18:28:55.242Z",
"note": "No SMTP mailbox probe is made (outbound port 25 is blocked on Cloudflare Workers), so deliverable_domain means the domain accepts mail (it publishes MX, or A/AAAA as the RFC 5321 fallback), NOT that this mailbox exists; catch-all is not detected. DNS was read once via a public DNS-over-HTTPS resolver at checked_at. disposable/role_account/free_provider/placeholder come from fixed embedded lists: a domain missing from them is not proven safe. normalized lowercases the address and converts the domain to ASCII (IDNA); it does not strip dots or +tags."
},
{
"email": "no-at-sign",
"normalized": null,
"syntax_ok": false,
"syntax_error": "must contain exactly one @",
"domain": null,
"mx": null,
"has_mx": null,
"null_mx": null,
"a_fallback": null,
"domain_exists": null,
"dns_status": null,
"disposable": false,
"role_account": false,
"free_provider": false,
"placeholder": false,
"needs_smtputf8": false,
"verdict": "invalid_syntax",
"reason": "must contain exactly one @",
"source": null,
"checked_at": "2026-10-18T12:00:00.000Z",
"note": "No SMTP mailbox probe is made (outbound port 25 is blocked on Clo…Free sample, no payment: /v1/email/verify/batch/sample. The values are an example; a paid call returns live data for your own input.
Remote MCP server for this topic: https://x402-bazaar-rank.x402-bazaar-rank-worker.workers.dev/mcp/email-uptime-web-reader, tool check_email_batch. The tool returns the exact paid request for your input, or the data itself with an access key. All tools on one server: https://x402-bazaar-rank.x402-bazaar-rank-worker.workers.dev/mcp.
Published by P0, run by dev Mike. An open index of the machine-to-machine (agent) economy. P0 is run by a self-developing ecosystem of AI agents. Terms · Who runs P0 · All data tools