Skip to main content

RDAP


The Registration Data Access Protocol (RDAP) is the successor to WHOIS. Like WHOIS, RDAP provides access to information about Internet resources (domain names, nameservers, entities, autonomous system numbers, and IP addresses). Unlike WHOIS, RDAP provides:

  • A machine-readable representation of registration data;
  • Differentiated access;
  • Structured request and response semantics;
  • Internationalization;
  • Extensibility.

Register.si operates an RDAP server for looking up registration data of .si domain names. It supports class objects of “Domain”, “Nameserver” and “Entities”. The answer is provided in JSON format. The RDAP server can be accessed via any HTTP client.

Anonymous users are not shown any information about holders or the technical contact for domain names. Authenticated users with an user account receive the full registration data, depending on their authorizations.

How does it work?

  • with a REST client (stand-alone or as a browser extension)
  • using Terminal (command line)
  • using a browser

See examples below.

In addition to GET, you can also use HEAD requests. These are used to ascertain whether a domain name is already registered, without providing further data.

What can be queried?

RDAP can be queried for:

  • domains – RDAP returns domain data such as namervers, status, etc. Result varies depending on user being authenticated or not.
    URL format for domains is https://rdap.register.si/domain/queriedDomain

  • nameservers – RDAP returns namerserver data such as status, IP addresses, etc.

    URL format for nameservers is https://rdap.register.si/nameserver/queriedNamerserver

  • entities – entities are domain contacts and registrars. RDAP result varies depending on user being authenticated or not

    URL format for domain contacts is https://rdap.register.si/entity/c-queriedContact

    URL format for registrars is https://rdap.register.si/entity/r-queriedRegistrar

Anonymous examples
  • With a REST client

    Method: GET (or HEAD)
    URL: https://rdap.register.si/domain/arnes.si

    URL: https://rdap.register.si/nameserver/ns1.arnes.si

    URL: https://rdap.register.si/entity/r-0d8eaedc-82a8-11ee-97b4-7cd30ae19050

  • Using Terminal (command line)

    curl https://rdap.register.si/domain/arnes.si

    curl https://rdap.register.si/nameserver/ns1.arnes.si

    curl https://rdap.register.si/entity/r-0d8eaedc-82a8-11ee-97b4-7cd30ae19050

    HEAD request:

    curl -I https://rdap.register.si/domain/arnes.si

    curl -I https://rdap.register.si/nameserver/ns1.arnes.si

    curl -I https://rdap.register.si/entity/r-0d8eaedc-82a8-11ee-97b4-7cd30ae19050

  • Using a browser
    Enter into address field:

    https://rdap.register.si/domain/arnes.si

    https://rdap.register.si/nameserver/ns1.arnes.si

    https://rdap.register.si/entity/r-0d8eaedc-82a8-11ee-97b4-7cd30ae19050

Examples with authentication
  • With a REST client

    Method: GET (or HEAD)
    URL: https://rdap.register.si/domain/arnes.si

    URL: https://rdap.register.si/nameserver/ns1.arnes.si

    URL: https://rdap.register.si/entity/r-0d8eaedc-82a8-11ee-97b4-7cd30ae19050

    Use “Basic Authentication” and enter the user name and password of your user account.

  • Using Terminal (command line)

    curl -u username https://rdap.register.si/domain/arnes.si

    curl -u username https://rdap.register.si/nameserver/ns1.arnes.si

    curl -u username https://rdap.register.si/entity/r-0d8eaedc-82a8-11ee-97b4-7cd30ae19050

    HEAD request:

    curl -I https://rdap.register.si/domain/arnes.si

    curl -I https://rdap.register.si/nameserver/ns1.arnes.si

    curl -I https://rdap.register.si/entity/r-0d8eaedc-82a8-11ee-97b4-7cd30ae19050

  • Search for authenticated users
    Wildcard is supported. Only one asterisk is allowed (*).
    Illegal queries get error code 422 (Unprocessable Entity).

    • Domains
      search by name
      domains?name=name or wildcard
      https://rdap.register.si/domains?name=arnes*.si

      search by nameserver
      domains?nsLdhName=namerserver or wildcard
      https://rdap.register.si/domains?nsLdhName=ns1.arnes*.si

      search by IP
      domains?nsIp=IP address
      https://rdap.register.si/domains?nsIp=192.0.2.0

    • Nameservers
      search by name
      nameservers?name=nameserver or wildcard
      https://rdap.register.si/nameservers?name=ns1.arnes*.si

      search by IP
      nameservers?ip=IP address
      https://rdap.register.si/nameservers?ip=192.0.2.0

    • Entities
      search by name
      entities?fn=name or wildcard
      https://rdap.register.si/entities?fn=Bobby%20Joe*

      search by ID handle
      entities?handle=ID handle or wildcard
      https://rdap.register.si/entities?handle=CID-40*

What do the responses look like?

If the domain name is registered, the RDAP server responds with data in JSON format and the HTTP status code 200 (or 401). If the domain name or input cannot be found, the server responds solely with HTTP status codes. In a browser lookup, these codes are not directly visible. The result may be an error message or a blank page. In a HEAD request, the server always responds solely with HTTP status codes, without data.

Meaning of HTTP status codes

404 (Not Found): The domain name as entered was not found. Usually, this means that the domain name isn’t registered. But that doesn’t always mean that the domain name can be registered.

200 (OK): The domain name is registered and/or cannot be registered at this time.

400 (Bad Request): Invalid request, for example, may contain prohibited characters or wrong TLD (change the query before next attempt).

401 (Unauthorized): Username/password incorrect. The domain name is registered, but you only receive the same data as an anonymous user would.

429 (Too Many Requests): Access restricted (wait for a while and try again).

References