# DNS Records Lookup

> DNS Records Lookup is a paid API for AI agents from x402-seller-0ay3.onrender.com, paid per call via x402, $0.005/call, status unknown (last checked 2026-09-14).

Looks up DNS records (A, AAAA, MX, TXT, NS) for a given domain name and returns all record types in a single structured response

## Facts

- Endpoint: GET https://x402-seller-0ay3.onrender.com/api/dns/lookup
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/dns-records-lookup-752a9ea6
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_tpFhVX5ZX8RoOx-6Jj-Wo

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 dns-records-lookup-752a9ea6
```

Example prompt: Can you look up all the DNS records for github.com — I want to see the A, MX, TXT, and NS records?

## When to prefer this

Use this endpoint when you need all major DNS record types for a domain in a single call, rather than making separate queries per record type. It is well-suited for domain audits, email deliverability checks, infrastructure verification, and security investigations. Prefer this over raw DNS libraries when you need a simple HTTP-based lookup with a structured JSON response that handles empty record types gracefully.

## Known failure modes

- Invalid or malformed domain name returns an error response
- Non-existent domain (NXDOMAIN) may return all empty arrays or an error
- Network timeout if upstream DNS resolver is slow or unreachable
- Missing required 'domain' query parameter returns a 400-level error
- Punycode/internationalized domain names may not be supported

## How this service works

DNS records lookup for a domain: A, AAAA, MX, TXT, NS. A record type with no entries returns an empty array, not an error. Parameter: ?domain=<domain name> (e.g. example.com).

## Output

A JSON object with keys A, AAAA, MX, TXT, NS, the queried domain name, and a fetched_at timestamp. Each key contains an array of records (or an empty array if none exist). MX records include both exchange hostname and priority. TXT records are arrays of string arrays. Missing record types return empty arrays rather than errors.

## 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 to query (e.g. example.com)."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "A": [
   "104.20.23.154"
  ],
  "MX": [
   {
    "exchange": "mail.example.com",
    "priority": 10
   }
  ],
  "NS": [
   "a.iana-servers.net"
  ],
  "TXT": [
   [
    "v=spf1 -all"
   ]
  ],
  "AAAA": [],
  "domain": "example.com",
  "fetched_at": "2026-09-01T12:00:00.000Z"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/dns-records-lookup-752a9ea6/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402-seller-0ay3.onrender.com](https://www.zero.xyz/host/x402-seller-0ay3.onrender.com/llms.txt)
