# Email Deliverability Audit API (SPF/DKIM/DMARC)

> Email Deliverability Audit API (SPF/DKIM/DMARC) is a paid API for AI agents from x402-extract-service.onrender.com, paid per call via x402, $0.02/call, status unknown (last checked 2026-09-19).

Audits one or more domains for email deliverability health by checking SPF, DKIM, and DMARC DNS records, validating syntax, and reporting policy strength.

## Facts

- Endpoint: POST https://x402-extract-service.onrender.com/emailcheck
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-19
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/email-deliverability-audit-api-spf-dkim-dmarc-9874696a
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_u_XoctcH8oOgRoh8EQAEM

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 email-deliverability-audit-api-spf-dkim-dmarc-9874696a -d '<json body>'
```

Example prompt: Can you audit the email deliverability setup for acmecorp.com — check whether SPF, DKIM, and DMARC are all present, syntactically valid, and using strong policies?

## When to prefer this

Use this endpoint when you need a quick, structured audit of email authentication DNS records (SPF, DKIM, DMARC) for one or up to 25 domains at once, especially before sending email campaigns, onboarding new sending domains, or diagnosing deliverability issues. Prefer this over manual DNS lookup tools when you need machine-readable pass/fail results with policy strength assessments in a single API call.

## Known failure modes

- Domain not found in DNS returns missing records with fail status
- DKIM selector not discoverable — common selectors probed but result may be null even if domain signs mail
- Invalid domain format may cause request rejection
- More than 25 domains in a single request may be rejected
- Network or DNS timeout can cause incomplete results for some domains
- Malformed domain strings (e.g. full URLs instead of bare domains) may produce errors

## How this service works

URL-to-clean-markdown extraction API, on-demand broken-link scan API, pre-deploy link audit API, DNS health audit API, llms.txt / AI-crawler audit API, spec-linted llms.txt audit API, email-deliverability (SPF/DKIM/DMARC) audit API, PDF-to-markdown conversion API, technology-stack fingerprinting API, security-headers audit API, and PDF metadata-intel API for coding agents. Paid per call in USDC via x402 on Base.

## Output

Returns a structured JSON object per domain with the raw SPF, DKIM, and DMARC DNS records, whether each is present and syntactically valid, policy strength ratings (e.g. hardfail, reject), individual findings with pass/warn/fail status, aggregate pass/fail counts across all domains, a human-readable summary, check timestamp, and duration in milliseconds.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "domain": {
   "type": "string",
   "description": "Single bare domain to audit (no URL), e.g. \"example.com\"."
  },
  "domains": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Bare domains to audit. Max 25 per run."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ok": true,
  "pass": true,
  "counts": {
   "fail": 0,
   "pass": 2,
   "warn": 1
  },
  "domains": [
   {
    "pass": true,
    "checks": {
     "spf": {
      "record": "v=spf1 include:_spf.example.com -all",
      "present": true,
      "syntaxValid": true,
      "policyStrength": "hardfail (-all: strong)"
     },
     "dkim": {
      "record": "v=DKIM1; k=rsa; p=MIIBIjANBgkqh...",
      "present": true,
      "selector": "selector1",
      "syntaxValid": true,
      "policyStrength": "valid key published (strong)"
     },
     "dmarc": {
      "record": "v=DMARC1; p=reject; rua=mailto:dmarc@example.com",
      "present": true,
      "syntaxValid": true,
      "policyStrength": "reject (strong)"
     }
    },
    "counts": {
     "fail": 0,
     "pass": 2,
     "warn": 1
    },
    "domain": "example.com",
    "findings": [
     {
      "check": "SPF",
      "detail": "v=spf1 ... — hardfail (-all: strong)",
      "status": "pass"
     }
    ],
    "limitation": "DKIM selectors are not discoverable via DNS; common selectors were probed. A null DKIM result means \"not found with common selectors\", not \"domain does not sign mail\".",
    "dkimSelector": "selector1"
   }
  ],
  "summary": "PASS: 2 domain(s) checked, no hard failures (1 warning(s)).",
  "checkedAt": "2026-09-12T00:00:00.000Z",
  "durationMs": 1830,
  "failedDomains": [],
  "domainsChecked": 2,
  "pricePaidAtomic": "20000"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/email-deliverability-audit-api-spf-dkim-dmarc-9874696a/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402-extract-service.onrender.com](https://www.zero.xyz/host/x402-extract-service.onrender.com/llms.txt)
