# 402utils Domain Check (RDAP)

> 402utils Domain Check (RDAP) is a paid API for AI agents from 402utils.com, paid per call via x402, $0.002/call, not verified (last probed 2026-10-11); live alternatives: Stable Domains Availability Checker ($0.05) and NetIntel Bulk Domain Availability Check ($0.1).

Agents call it through Zero, which pays per call: no API key and no wallet of your own. New accounts start with $5.

Live alternatives for the same use case:
- [Stable Domains Availability Checker](https://www.zero.xyz/c/stable-domains-availability-checker-d9c6e557) ($0.05)
- [NetIntel Bulk Domain Availability Check](https://www.zero.xyz/c/netintel-bulk-domain-availability-check-0a16e4f3) ($0.1)

Checks whether a domain is available or taken using RDAP, returning registration status, registrar, creation/expiry dates, nameservers, and EPP status codes.

## Facts

- Endpoint: GET https://402utils.com/v1/domain-check?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-11
- Last successful call: 2026-07-16
- Success rate: 100% of calls made through Zero
- Rating: 5.0 / 5 from 1 review
- Activations on Zero: 2
- Tags: x402
- Canonical page: https://www.zero.xyz/c/402utils-domain-check-rdap-4aee3a4b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_oBty_dpsZInFaAA_GJHtz

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 402utils-domain-check-rdap-4aee3a4b
```

Example prompt: Can you check whether the domain 'acmecoffee.io' is available — and if it's taken, tell me who registered it, when it was created, and when it expires?

## When to prefer this

Use this endpoint when you need authoritative domain availability or registration data (registrar, dates, nameservers, EPP codes) via RDAP rather than legacy WHOIS. Best for agents automating domain buying, expiry monitoring, or vetting domains before use. Prefer over DNS-only lookups when you specifically need registration metadata, not just DNS resolution.

## Known failure modes

- TLD not covered by RDAP returns {supported:false} — no registration data available
- Malformed domain input (with scheme, path, or IP) rejected — must be bare LDH/punycode hostname
- Network or registry timeout — upstream RDAP registry temporarily unreachable
- Rate limiting or payment failure if x402 payment header is missing or insufficient

## How this service works

Domain availability and expiry intelligence via RDAP, the WHOIS successor. Queries the authoritative registry for any RDAP-enabled TLD: free domains return registered:false, taken ones return registrar, creation and expiry dates, nameservers and EPP status codes. TLDs without RDAP coverage return supported:false. Built for agents that buy, monitor or vet domains.

## Output

A JSON object with: domain (string), supported (boolean — false if the TLD has no RDAP coverage), registered (boolean, present when supported=true), and when registered: registrar name, createdAt/expiresAt timestamps, nameservers array, and EPP status codes array.

## 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 to look up, e.g. example.com. LDH/punycode form; no scheme, path or IP (required)."
      }
     },
     "description": "Query string only."
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "domain",
      "supported"
     ],
     "properties": {
      "domain": {
       "type": "string"
      },
      "status": {
       "type": "array",
       "items": {
        "type": "string"
       },
       "description": "EPP status codes as reported by the registry."
      },
      "createdAt": {
       "type": "string",
       "format": "date-time"
      },
      "expiresAt": {
       "type": "string",
       "format": "date-time"
      },
      "registrar": {
       "type": "string"
      },
      "supported": {
       "type": "boolean",
       "description": "False when the TLD publishes no RDAP service (many ccTLDs)."
      },
      "registered": {
       "type": "boolean",
       "description": "Absent when supported=false."
      },
      "nameservers": {
       "type": "array",
       "items": {
        "type": "string"
       }
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "domain": "example.com",
  "status": [
   "client delete prohibited",
   "client transfer prohibited",
   "client update prohibited"
  ],
  "createdAt": "1995-08-14T04:00:00Z",
  "expiresAt": "2026-08-13T04:00:00Z",
  "registrar": "RESERVED-Internet Assigned Numbers Authority",
  "supported": true,
  "registered": true,
  "nameservers": [
   "a.iana-servers.net",
   "b.iana-servers.net"
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/402utils-domain-check-rdap-4aee3a4b/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from 402utils.com](https://www.zero.xyz/host/402utils.com/llms.txt)
