← Back to domain search

How to check if a domain is available: RDAP vs WHOIS

To check whether a domain is taken, ask the registry that runs its extension. The modern way to ask is RDAP, the Registration Data Access Protocol. If the registry returns a record, the domain is registered. If it returns “not found”, the domain is probably available, but only the registrar can confirm that you can buy it and at what price.

Updated:

What RDAP is

RDAP is an IETF standard (RFC 9082 for queries, RFC 9083 for responses) that returns domain registration data as JSON over HTTPS. It was designed to replace WHOIS, which returns free-form text over an old, unencrypted protocol with a different format at every registry.

ICANN requires RDAP for generic top-level domains such as .com, .app and .dev, and since January 2025 RDAP is the authoritative source of registration data for them. Country-code domains such as .ai, .io and .co follow their own rules: some offer RDAP, some only WHOIS.

RDAP vs WHOIS

RDAPWHOIS
FormatStructured JSONFree text, differs per registry
TransportHTTPSPlain TCP on port 43
Finding the serverIANA bootstrap file maps each extension to its RDAP serverVaries; often hard-coded per extension
“Not found” signalHTTP 404A text message that differs per registry
Works from a browserOften, when the registry allows cross-origin requestsNo

How to check a domain with RDAP, step by step

  1. Find the RDAP server for the extension. IANA publishes a bootstrap file at https://data.iana.org/rdap/dns.json (RFC 9224). For .com it points to https://rdap.verisign.com/com/v1/.
  2. Request the domain. Append domain/ and the name: curl -s https://rdap.verisign.com/com/v1/domain/example.com
  3. Read the status code. HTTP 200 with "objectClassName": "domain" means the registry has a record: the domain is registered. HTTP 404 means the registry has no record.
  4. Confirm at a registrar. A 404 is a strong hint, not a purchase guarantee. Search the name at a registrar to see whether it can be registered and what it costs.

Useful fields in a 200 response include status (for example client transfer prohibited), events (registration and expiration dates) and entities (the registrar).

Why “not found” does not always mean available

Extensions without public RDAP

Some country-code registries publish no RDAP server in the IANA bootstrap file. Among the extensions DomainGenTool supports, that applies to .io and .co, so those names always need a registrar or WHOIS check (for example whois.nic.io for .io). Each extension page lists the exact server: .com, .ai, .io, .co, .app, .dev.

How DomainGenTool uses RDAP

DomainGenTool generates name ideas with AI, then your browser queries the registry’s RDAP server for each one, a few at a time. It shows “Registered” only when the registry returns a matching domain record, “Possibly available” only on a registry 404, and “Unconfirmed” for everything else: no RDAP server, rate limits, timeouts or blocked requests. The AI never decides registration status. See how it works for the full flow.

Generate domain names and check them with RDAP →