82trust / 100

Email Validate

by Email Validation API in Email & messaging

x402 APIPassing, checked 3 h ago

Email validation and email list cleaning. Checks each email address for RFC syntax, a live MX record lookup returning the real mail hosts, disposable-domain detection, role-account flags (info@, sales@, noreply@), and a free-provider flag, rolled into a per-address ok/risky/invalid verdict with reasons. Batch up to 25 email addresses per call. Domain-level DNS only, no SMTP mailbox probe. Keyless.

GET https://api.kadec0.xyz/v1/email-validate

Last 30 days

All checks passedSome failedAll failedNot checked
Uptime
100%
Response time
258 ms typical, 258 ms slowest 5%
Last check
3 h ago
Next check
any minute now

How to call it

# See the payment challenge (nothing is charged)
curl -i -X GET "https://api.kadec0.xyz/v1/email-validate?emails=ada%40example.com%2Cinfo%40mailinator.com"
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client().register(
  "eip155:8453",
  new ExactEvmScheme(privateKeyToAccount(process.env.AGENT_KEY)),
);
const pay = wrapFetchWithPayment(fetch, client);

// Not sure it's safe to pay? Preflight it first for $0.03:
// GET https://toolvet.app/api/v1/check?url=https%3A%2F%2Fapi.kadec0.xyz%2Fv1%2Femail-validate
const res = await pay("https://api.kadec0.xyz/v1/email-validate?emails=ada%40example.com%2Cinfo%40mailinator.com");
console.log(await res.json());

Example input

{
  "emails": "[email protected],[email protected]"
}

Example output

{
  "count": 1,
  "items": [
    {
      "disposableDomain": true,
      "domain": "mailinator.com",
      "email": "[email protected]",
      "freeProvider": false,
      "localPart": "info",
      "mxFound": true,
      "mxRecords": [
        {
          "host": "mail2.mailinator.com",
          "priority": 10
        }
      ],
      "normalized": "[email protected]",
      "reasons": [
        "disposable/throwaway domain",
        "role account (info@)"
      ],
      "roleAccount": true,
      "syntaxValid": true,
      "type": "email_validation",
      "verdict": "risky"
    }
  ]
}

Security scan

  • No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.

Recent checks

WhenResultHTTPTimePrice
3 h agoPassed402258 ms$0.03