# ProbeKit DMARC Lookup

> ProbeKit DMARC Lookup is a paid API for AI agents from api.probekit.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-30).

Looks up and explains a domain's DMARC record, including policy, subdomain policy, alignment mode, and reporting addresses, with coded findings indicating spoofing protection status.

## Facts

- Endpoint: GET https://api.probekit.dev/v1/mail/dmarc?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/probekit-dmarc-lookup-972b0a63
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Ym65_lV0RL4ifmmJIB47-

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 probekit-dmarc-lookup-972b0a63
```

Example prompt: Can you check the DMARC record for paypal.com and tell me what policy it enforces, whether subdomains are covered, and where aggregate reports are being sent?

## When to prefer this

Use this endpoint when you need a structured, interpreted explanation of a domain's DMARC posture — not just the raw TXT record. It is ideal for agents that must determine whether a domain is protected against spoofing, what enforcement level is active, or why DMARC reports are not being received. Prefer this over raw DNS lookups when coded findings and policy explanation are needed rather than just the record text.

## Known failure modes

- Domain has no DMARC record — returns a finding indicating absence of DMARC protection
- Domain is invalid or malformed — returns a validation error
- DMARC record is syntactically malformed — returns parsing error with details
- Network or DNS resolution failure — may return a timeout or DNS error
- Domain is at organisational domain level and has no applicable record — returns no-record finding

## How this service works

Look up the DMARC record of a domain or its organisational domain and explain policy, subdomain policy, alignment and reporting addresses, with coded findings. Use when an agent must tell whether a domain is protected against spoofing, which policy it enforces, or why DMARC reports do not arrive.

## Output

Returns the parsed DMARC record for the queried domain (or its organisational domain), including the policy tag (p=), subdomain policy (sp=), identifier alignment modes (aspf, adkim), aggregate and forensic reporting addresses (rua, ruf), and coded findings that flag issues such as missing records, permissive policies, or misconfigured reporting destinations.

## 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",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "title": "DomainInput",
     "required": [
      "domain"
     ],
     "properties": {
      "domain": {
       "type": "string",
       "title": "Domain",
       "examples": [
        "example.com"
       ],
       "maxLength": 1024,
       "minLength": 1
      }
     },
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/probekit-dmarc-lookup-972b0a63/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.probekit.dev](https://www.zero.xyz/host/api.probekit.dev/llms.txt)
