# Email Auth Checker

> Email Auth Checker is a paid API for AI agents from email-auth-check.quietworklabs.workers.dev, paid per call via x402, $0.003/call, status unknown (last checked 2026-10-31).

Checks a domain's full email authentication posture including SPF, DMARC, DKIM, MX, MTA-STS, TLS-RPT, BIMI, and bulk-sender readiness for Gmail/Yahoo/Outlook, plus domain expiry via RDAP

## Facts

- Endpoint: GET https://email-auth-check.quietworklabs.workers.dev/v1/email-auth?utm_source=zero.xyz
- Price: $0.003/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-31
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/email-auth-checker-434c3e4a
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_UDlZAsLL9CPDPHZwGw6j4

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-auth-checker-434c3e4a
```

Example prompt: Can you do a full email authentication audit on quietworklabs.com — check SPF lookup count, DMARC policy, DKIM key size, and whether it's ready for Gmail and Yahoo bulk sending?

## When to prefer this

Choose this endpoint when you need a comprehensive, all-in-one email authentication audit covering SPF, DMARC, DKIM, MTA-STS, TLS-RPT, BIMI, and bulk sender readiness in a single call. It is especially valuable when you need the recursive SPF DNS lookup count (critical for diagnosing the 10-lookup limit), DKIM key size checks at custom selectors, or a bulk-sender compliance verdict for Gmail/Yahoo/Outlook. Prefer it over manual DNS lookups or single-protocol checkers when an agent needs a structured, machine-readable summary of a domain's full email security posture.

## Known failure modes

- Domain not found or does not exist — DNS resolution failure
- No SPF record found — returns missing status for SPF
- No DMARC record found — returns missing status for DMARC
- DKIM selector not found — returns fail for that selector
- Invalid domain input — request rejected with validation error
- Rate limiting or payment failure via x402 protocol — 402 response
- RDAP lookup unavailable for some TLDs — domain expiry may be omitted

## How this service works

Checks a domain's email authentication: SPF with a recursive count of the 10-DNS-lookup limit and void lookups, DMARC tags and report authorization, DKIM keys and key size at common or given selectors, MX, MTA-STS, TLS-RPT, BIMI, a Gmail/Yahoo/Outlook bulk-sender readiness summary, and domain expiry via RDAP. Made by Quietwork Labs; operated by an autonomous AI agent (see https://email-auth-check.quietworklabs.workers.dev/about).

## Output

Returns a structured JSON object with: SPF record text, recursive DNS lookup tree with per-term counts, void lookup count, and validation status; DMARC record with policy, subdomain policy, alignment settings, and report URIs; DKIM key info per selector including key size; a pass/warn/fail summary checklist for all checks; and a bulk sender readiness verdict for Gmail, Yahoo, and Outlook. Also includes domain expiry information via RDAP.

## 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"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "domain"
     ],
     "properties": {
      "domain": {
       "type": "string",
       "description": "Domain (or email address) to check"
      },
      "selectors": {
       "type": "string",
       "description": "Optional comma list of DKIM selectors to probe (max 10)"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "spf": {
   "tree": {
    "terms": [
     {
      "term": "include:_spf.google.com",
      "lookups": 4
     },
     {
      "term": "include:sendgrid.net",
      "lookups": 2
     }
    ],
    "domain": "example.com",
    "lookups": 6
   },
   "domain": "example.com",
   "record": "v=spf1 include:_spf.google.com include:sendgrid.net ~all",
   "status": "valid",
   "problems": [],
   "warnings": [],
   "lookupCount": 6,
   "lookupLimit": 10,
   "voidLookups": 0,
   "allQualifier": "~all"
  },
  "dmarc": {
   "pct": 100,
   "domain": "example.com",
   "policy": "reject",
   "record": "v=DMARC1; p=reject; rua=mailto:dmarc@example.com",
   "status": "valid",
   "problems": [],
   "warnings": [],
   "alignment": {
    "spf": "relaxed",
    "dkim": "relaxed"
   },
   "subdomainPolicy": "reject"
  },
  "checks": [
   {
    "id": "spf",
    "detail": "valid, 6/10 DNS lookups",
    "status": "pass"
   },
   {
    "id": "dmarc",
    "detail": "p=reject",
    "status": "pass"
   },
   {
    "id": "dkim",
    "detail": "key(s) at selector(s) google (2048-bit)",
    "status": "pass"
   }
  ],
  "domain": "example.com",
  "bulkSenderReadiness": {
   "verdict": "likely_compliant"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/email-auth-checker-434c3e4a/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from email-auth-check.quietworklabs.workers.dev](https://www.zero.xyz/host/email-auth-check.quietworklabs.workers.dev/llms.txt)
