Agent Email Check

Address in, verdict and confidence out. Every call is paid inside the request over x402. No signup, no API key, no dashboard.

Endpoints

RoutePriceWhat it does
POST /email0.001 USDCOne address, full report.
POST /email/batch0.0006 USDC per addressUp to 100 addresses in one call. The 402 quotes the exact amount, so ten addresses cost 0.006000 USDC.

What we will not tell you

DNS proves that a domain accepts mail. It proves nothing about the mailbox in front of the at sign. This service therefore never reports an address as valid on DNS evidence alone.

SMTP probe on this instance: disabled, outbound port 25 unknown. Budget 3/minute, 40/hour, 200/day.

The five verdicts

VerdictMeaning
deliverableThe mail server accepted this recipient and the domain is not catch-all. Only reachable with an SMTP probe.
undeliverableThe mail server rejected this recipient permanently.
invalidThe address cannot receive mail: broken syntax, no MX and no A record, or a null MX record.
riskyA mail route exists, but a concrete negative signal is attached: disposable provider, catch-all domain or a likely typo.
unknownA mail route exists and nothing is known about this specific mailbox. This is the honest default without an SMTP probe.

How a call works

curl -s -X POST https://mailcheck.netzhandwerker.de/email \
  -H "Content-Type: application/json" \
  -d '{"email":"[email protected]"}'

The first call answers with HTTP 402 and the accepted payment terms. An x402 capable client signs the terms and repeats the request; the answer arrives in the same round trip. A batch works the same way and quotes the price for exactly the addresses you sent:

curl -s -X POST https://mailcheck.netzhandwerker.de/email/batch \
  -H "Content-Type: application/json" \
  -d '{"emails":["[email protected]","[email protected]"]}'

Operating rules

  • MX and catch-all are cached per domain for 24 hours. A thousand addresses at one company cost one lookup.
  • Syntax, role account and disposable status are recomputed on every call and never cached.
  • The disposable and role lists are refreshed daily.
  • An unpaid request receives the 402 with the price, never an error.
  • A malformed body is rejected before settlement and never charged.

Discovery

Operational figures

Rolling 30 day window, updated live: 12 requests, 0 of them paid, 0 settlements, 0 USDC volume, 11 domains in cache.

Lists: 75054 disposable domains, 99 role local parts, 35 free providers. Last refresh: 2026-08-06T10:17:16.037Z.