# Domain WHOIS Lookup API (x402)

> Domain WHOIS Lookup API (x402) is a paid API for AI agents from freetier-agent-api.pages.dev, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-30).

Returns structured WHOIS/RDAP registration data for a domain name, including registrar, creation/expiry dates, nameservers, DNSSEC, and status flags.

## Facts

- Endpoint: GET https://freetier-agent-api.pages.dev/api/domain-whois?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/domain-whois-lookup-api-x402-c43dcdb5
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_GkqXEx7nPShx8jJqqQFiy

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-whois-lookup-api-x402-c43dcdb5
```

Example prompt: Can you look up the WHOIS registration details for stripe.com — I want to know who registered it, when it expires, and what nameservers it's using?

## When to prefer this

Use this endpoint when you need structured, machine-readable WHOIS/RDAP data for a single domain — especially in agent workflows requiring domain age, expiry, registrar identity, or nameserver verification. Prefer over raw WHOIS scraping because it returns clean JSON via RDAP. Pay-per-call with no signup makes it ideal for low-volume or on-demand agent use.

## Known failure modes

- Domain not found or unregistered — registered field returns false with null fields
- Invalid or malformed domain input — query may return error or empty result
- TLD not supported by RDAP bootstrap — partial or null response
- Registrar RDAP server timeout — incomplete data returned
- Subdomain input reduced to registered domain automatically — may surprise caller

## How this service works

Invoice-to-JSON, on-chain tools (transaction explainer + payment check, wallet profile, contract ABI, ERC-20 token risk), company contacts and web-to-RAG for AI agents. Pay per call with x402 (USDC on Base). No signup, no API key.

## Output

A JSON object containing the registered domain name, boolean registration status, creation/updated/expiry timestamps, domain age in days, days remaining until expiry, registrar name and IANA ID, nameservers list, DNSSEC boolean, domain status flags array, RDAP server used, handle, registrant info (if available), and the data sources queried.

## 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, e.g. example.com (subdomains are reduced to the registered domain)"
      }
     }
    }
   }
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "dnssec": {
       "type": [
        "boolean",
        "null"
       ]
      },
      "domain": {
       "type": [
        "string",
        "null"
       ]
      },
      "handle": {
       "type": [
        "string",
        "null"
       ]
      },
      "status": {
       "type": "array",
       "items": {
        "type": [
         "string",
         "null"
        ]
       }
      },
      "created": {
       "type": [
        "string",
        "null"
       ]
      },
      "expires": {
       "type": [
        "string",
        "null"
       ]
      },
      "sources": {
       "type": "array",
       "items": {
        "type": [
         "object",
         "null"
        ]
       }
      },
      "updated": {
       "type": [
        "string",
        "null"
       ]
      },
      "age_days": {
       "type": [
        "number",
        "null"
       ]
      },
      "registrar": {
       "type": "object",
       "properties": {
        "name": {
         "type": [
          "string",
          "null"
         ]
        },
        "iana_id": {
         "type": [
          "string",
          "null"
         ]
        },
        "abuse_email": {}
       }
      },
      "checked_at": {
       "type": [
        "string",
        "null"
       ]
      },
      "registered": {
       "type": [
        "boolean",
        "null"
       ]
      },
      "registrant": {},
      "nameservers": {
       "type": "array",
       "items": {
        "type": [
         "string",
         "null"
        ]
       }
      },
      "rdap_server": {
       "type": [
        "string",
        "null"
       ]
      },
      "days_to
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "dnssec": true,
  "domain": "example.com",
  "handle": "2336799_DOMAIN_COM-VRSN",
  "status": [
   "client delete prohibited",
   "client transfer prohibited"
  ],
  "created": "1995-08-14T04:00:00Z",
  "expires": "2027-08-13T04:00:00Z",
  "sources": [
   {
    "url": "https://rdap.verisign.com/com/v1/domain/example.com",
    "name": "IANA RDAP bootstrap + registry RDAP (rdap.verisign.com)"
   }
  ],
  "updated": "2026-08-14T08:01:43Z",
  "age_days": 11395,
  "registrar": {
   "name": "RESERVED-Internet Assigned Numbers Authority",
   "iana_id": "376",
   "abuse_email": null
  },
  "checked_at": "2026-10-25T22:37:38.392Z",
  "registered": true,
  "registrant": null,
  "nameservers": [
   "elliott.ns.cloudflare.com",
   "hera.ns.cloudflare.com"
  ],
  "rdap_server": "rdap.verisign.com",
  "days_to_expiry": 291
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/domain-whois-lookup-api-x402-c43dcdb5/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from freetier-agent-api.pages.dev](https://www.zero.xyz/host/freetier-agent-api.pages.dev/llms.txt)
