# Blackwood State Email Check

> Blackwood State Email Check is a paid API for AI agents from x402-gateway.blackwoodstate8.workers.dev, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-23).

Validates an email address by checking syntax, domain existence, MX records, disposable/free/role flags, SPF, and DMARC — without SMTP probing — and returns a deliverability verdict.

## Facts

- Endpoint: POST https://x402-gateway.blackwoodstate8.workers.dev/v1/email-check?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-23
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/blackwood-state-email-check-29711769
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_l2-Zh3qzAuqcEVUtQG8Re

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability blackwood-state-email-check-29711769 -d '<json body>'
```

Example prompt: Can you check whether jane.doe@startup.io is a valid, deliverable email address — tell me if the domain has MX records, whether it's a disposable or role account, and what the overall verdict is?

## When to prefer this

Choose this endpoint when you need lightweight, fast email hygiene checks — syntax, domain, MX, SPF/DMARC, and disposable/role/free flags — without triggering SMTP connections. Ideal for pre-signup validation, lead scoring pipelines, and pre-send email list hygiene where you need a deliverability verdict in ~800ms for $0.005 per call. Do not use it if you need to confirm an individual mailbox exists (requires SMTP probing) or if you want to actually send email.

## Known failure modes

- Malformed or missing email field returns a validation error
- Email shorter than 3 or longer than 254 characters is rejected by schema
- Domain has no MX records — verdict will be undeliverable
- DNS lookup timeout may result in inconclusive domain/MX data
- Disposable domain databases may lag behind newly created throwaway services
- No SMTP probe means a valid-looking domain with a broken mailbox will still return deliverable_domain

## How this service works

Use when you need email validation or to verify email addresses (domain, MX records) before sending, signup or lead scoring. Do not use for confirming that the mailbox itself exists (no SMTP probe is done) or sending email. Returns JSON with an email address check: syntax, domain and MX records, disposable, free and role account flags, SPF and DMARC, and a verdict on whether the domain can receive mail for 0.005 USDC per call. Typical response time 800 ms (p95). Category: Data.

## Output

A JSON object containing: the normalized email, syntax validity, domain name, MX records array (with priority and host), disposable/free/role flags, domain existence, SPF and DMARC record strings, DMARC policy, whether the domain accepts mail, a verdict enum (deliverable_domain, risky, undeliverable, or invalid), an array of human-readable reasons, and an smtpChecked flag (always false — no SMTP probe is performed).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "type": "object",
     "required": [
      "email"
     ],
     "properties": {
      "email": {
       "type": "string",
       "maxLength": 254,
       "minLength": 3,
       "description": "Email address to check, e.g. jane@example.com"
      }
     }
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "email",
      "normalized",
      "syntaxValid",
      "domain",
      "disposable",
      "freeProvider",
      "roleAccount",
      "domainExists",
      "mx",
      "acceptsMail",
      "spf",
      "dmarc",
      "dmarcPolicy",
      "verdict",
      "reasons",
      "smtpChecked"
     ],
     "properties": {
      "mx": {
       "type": "array",
       "items": {
        "type": "object",
        "required": [
         "priority",
         "host"
        ],
        "properties": {
         "host": {
          "type": "string"
         },
         "priority": {
          "type": "number"
         }
        },
        "additionalProperties": false
       }
      },
      "spf": {
       "type": [
        "string",
        "null"
       ]
      },
      "next": {
       "type": "object",
       "required": [
        "service",
        "tool",
        "method",
        "url",
        "useWhen",
        "sample"
       ],
       "properties": {
        "url": {
         "type": "string",
         "description": "Paid route of the next call"
        },
        "tool": {
         "type": "string",
         "description": "MCP tool name of the same call"
        },
        "method": {
         "enum": [
          "GET",
          "POST"
         ],
         "type": "string"
        },
        "sample": {
         "type": "string",
         "description": "Free fixed sample of the whole family"
        },
        "service": {
         "type"
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "mx": [
   {
    "host": "mx.ietf.org",
    "priority": 0
   }
  ],
  "spf": "v=spf1 ip4:166.84.6.31 ip4:166.84.7.238 ip6:2602:f977:800:f7f6::/64 ip4:166.84.7.34 ip6:2602:f977:800::e276:63ff:fe66:3400 include:_spf.google.com include:spf.hostedrt.com ~all",
  "dmarc": "v=DMARC1; p=none; rua=mailto:dmarc_agg@vali.email,mailto:dmarc-report@ietf.org",
  "email": "postmaster@ietf.org",
  "domain": "ietf.org",
  "reasons": [
   "role_account"
  ],
  "verdict": "deliverable_domain",
  "disposable": false,
  "normalized": "postmaster@ietf.org",
  "acceptsMail": true,
  "dmarcPolicy": "none",
  "roleAccount": true,
  "smtpChecked": false,
  "syntaxValid": true,
  "domainExists": true,
  "freeProvider": false
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/blackwood-state-email-check-29711769/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402-gateway.blackwoodstate8.workers.dev](https://www.zero.xyz/host/x402-gateway.blackwoodstate8.workers.dev/llms.txt)
