# Domain DNS Lookup (x402 Pay-per-call)

> Domain DNS Lookup (x402 Pay-per-call) is a paid API for AI agents from agentkit-x402.zenith-ops.workers.dev, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-28).

Performs a comprehensive DNS lookup for a given domain, returning A, AAAA, MX, NS, TXT, CAA, SOA, CNAME, DS, and DNSKEY records along with DNSSEC validation status via Cloudflare DNS-over-HTTPS.

## Facts

- Endpoint: GET https://agentkit-x402.zenith-ops.workers.dev/v1/domain-dns?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-28
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/domain-dns-lookup-x402-pay-per-call-d237865c
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_8TjLig1mmfOCOvVb2DrT-

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 domain-dns-lookup-x402-pay-per-call-d237865c
```

Example prompt: Can you do a full DNS lookup for zenith-ops.workers.dev and show me all the records — A, MX, TXT, NS — and tell me whether DNSSEC is enabled?

## When to prefer this

Choose this endpoint when you need a comprehensive, multi-record-type DNS lookup in a single call without requiring API key signup — especially useful for AI agents that need pay-per-use DNS resolution via USDC micropayments. Prefer over standard DNS libraries when you need DNSSEC status alongside all record types in one structured JSON response, or when operating in an environment where x402 payment is already wired in.

## Known failure modes

- Invalid or non-existent domain returns empty record sets or error
- Network timeout if DNS resolution takes too long
- Payment failure via x402 if USDC balance is insufficient or wallet is misconfigured
- Some record types may appear in failed_lookups if the DNS query fails for that type
- DNSSEC resolver_validated reflects AD flag from Cloudflare resolver, may not reflect end-to-end validation

## How this service works

Pay-per-call API for AI agents with no signup or API key. Email validation, SPF/DMARC audits, DNS lookup, site contacts, URL to Markdown, IBAN and Swedish personnummer/orgnr validation. From $0.001 in USDC on Base via x402.

## Output

A JSON object containing the domain name, resolver used (Cloudflare DNS-over-HTTPS), all DNS record types (A, AAAA, MX, NS, TXT, CAA, SOA, CNAME, DS, DNSKEY) each with TTL and data fields, DNSSEC status (DS present, DNSKEY present, resolver validated), and a list of any failed lookups.

## 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 name without scheme."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "dnssec": {
   "note": "resolver_validated reflects the AD flag from the resolver (cloudflare-dns.com) for the A or NS answer.",
   "ds_present": false,
   "dnskey_present": false,
   "resolver_validated": false
  },
  "domain": "example.com",
  "records": {
   "a": [
    {
     "ttl": 300,
     "data": "93.184.216.34"
    }
   ],
   "ds": [],
   "mx": [
    {
     "ttl": 3600,
     "data": "10 mail.example.com.",
     "host": "mail.example.com",
     "priority": 10
    }
   ],
   "ns": [
    {
     "ttl": 3600,
     "data": "ns1.example.net"
    }
   ],
   "caa": [],
   "soa": [],
   "txt": [
    {
     "ttl": 300,
     "data": "v=spf1 -all"
    }
   ],
   "aaaa": [],
   "cname": [],
   "dnskey": []
  },
  "resolver": "cloudflare-dns.com (DNS-over-HTTPS)",
  "failed_lookups": []
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/domain-dns-lookup-x402-pay-per-call-d237865c/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agentkit-x402.zenith-ops.workers.dev](https://www.zero.xyz/host/agentkit-x402.zenith-ops.workers.dev/llms.txt)
