ToolAssay

Looks up up to 15 domains in the official RDAP registries (the modern WHOIS)

Looks up up to 15 domains in the official RDAP registries (the modern WHOIS): when each was registered and how old it is, when it expires, the registrar, status codes and name servers. Flags new domains and ones about to expire. Useful for fraud checks, lead qualification and spotting expiring domains. $0.005 per domain. Same engine as nerolabs/domain-whois-checker.

Answeringour last check, 2026-10-21
1 of 1checks answered this week
41 msmedian answer time
$0.01listed price per call
$0.01price it asked us

Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.

Endpoint

POST https://x402-agent-tools.nerolabs.workers.dev/whois

CategoryEverything else
Provider hostx402-agent-tools.nerolabs.workers.dev
Networkseip155:8453
Payment schemesexact
Self-reported calls, 30 days0 from 0 payers (the provider's figure, not ours)

Our checks, last 30 days

DayResultHTTPAskedTime
2026-10-21 valid payment request 402$0.01 41 ms

Example input (from the provider)

{
  "body": {
    "domains": [
      "coinbase.com",
      "example.org"
    ]
  },
  "bodyType": "json",
  "method": "POST",
  "type": "http"
}

Promised output schema (from the provider)

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "body": {
          "additionalProperties": false,
          "properties": {
            "domainField": {
              "description": "Only with rows: the field holding the domain. Leave out to detect it automatically (domain, website, url, homepage and similar).",
              "type": "string"
            },
            "domains": {
              "description": "A plain list of domains or URLs, for example [\"github.com\", \"https://www.bbc.co.uk/news\"]. Up to 15. Use this or rows, not both.",
              "items": {
                "type": "string"
              },
              "type": "array"
            },
            "expiringWithinDays": {
              "description": "Sets expiringSoon and the keep \"expiring\" filter. Default 30.",
              "type": "integer"
            },
            "includeRegistrantOrganization": {
              "description": "Off by default. When on, adds the registrant organisation name and country code where the registry publishes them. Never a person's name, email, phone or address.",
              "type": "boolean"
            },
            "keep": {
              "description": "Which rows to return: all (default), registered, unregistered, expiring, new, or problems (rows with no authoritative answer). Filtering happens after the lookup; the summary always counts every row.",
              "enum": [
                "all",
                "registered",
                "unregistered",
                "expiring",
                "new",
                "problems"
              ],
              "type": "string"
            },
            "newerThanDays": {
              "description": "Sets isNewDomain and the keep \"new\" filter. Default 365.",
              "type": "integer"
            },
            "rows": {
              "description": "Rows as JSON objects, each holding a domain, website or URL in one field. Every original field comes back. Up to 15. Use this or domains, not both.",
              "items": {
                "type": "object"
              },
              "type": "array"
            }
          },
          "type": "object"
        },
        "bodyType": {
          "enum": [
            "json",
            "form-data",
            "text"
          ],
          "type": "string"
        },
        "method": {
          "enum": [
            "POST"
          ],
          "type": "string"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method",
        "bodyType",
        "body"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "type": "object"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}

This page as JSON