Go to content Go to main menu Idź do wersji polskojęzycznej Go to footer

General information about RDAP at NASK

NASK, as the main registry of the .pl national domain, provides data on registered Internet domains. This data can be obtained, among others, by using the RDAP protocol (Registration Data Access Protocol).

RDAP protocol

The RDAP (Registration Data Access Protocol) was developed by the IETF (Internet Engineering Task Force) community to enable users to access current registration data.

RDAP is based on a REST API. RDAP provides data in a standard, machine-readable JSON format. As this way of presenting data is not user-friendly, ICANN has created a service through which any Internet user can transparently get the registration data of a selected object - RDAP WEB Client.

More information regarding RDAP can be found in the individual RFCs:

  • RFC 7480, HTTP Usage in the Registration Data Access Protocol (RDAP)
  • RFC 7481, Security Services for the Registration Data Access Protocol (RDAP)
  • RFC 8056, Extensible Provisioning Protocol (EPP) and Registration Data Access Protocol (RDAP) Status Mapping
  • RFC 9082, Registration Data Access Protocol (RDAP) Query Format
  • RFC 9083, JSON Responses for the Registration Data Access Protocol (RDAP)
  • RFC 9224, Finding the Authoritative Registration Data Access Protocol (RDAP) Service

RDAP extensions

The RDAP protocol allows for the implementation of own extensions. Each registry using its own extensions must describe them, and then they are placed via IANA in the list of extensions, for any user to see.

The implementation of the RDAP protocol at NASK concerns the ‘domain’ object query and introduces NASK's own extensions, described in the document published on our website at: https://www.dns.pl//NASK_extension_of_RDAP_Response.

Using the RDAP protocol in the .pl Registry

Each user, using an appropriate query, may obtain information regarding a selected domain belonging to the zone managed by NASK.

The query path

https://rdap.dns.pl/domain/{nazwa domeny}

HTTP response codes

In RDAP, each response to a request made to the server contains the appropriate data in JSON format
(if applicable) along with one of four HTTP statuses:

  • 200 – valid query for an existing object in the registry,
  • 400 – invalid query,
  • 404 – valid query for a non-existing object in the registry,
  • 500 – server error.

Answer

The response to a query about an existing .pl domain name may contain the following elements:

  • rdapConformance - an array of strings, each of which contains a hint about the specification used,
  • notices – additional information about the service,
  • entities – contains information about entities related to the domain, such as Registrar or Registrant,
  • events – contains information about events that took place in the domain,
  • ldhName – textual representations of DNS names in which all domain labels are letters, digits, hyphens, as described in RFC5890,
  • port43 – the host name of the WHOIS server of the registry,
  • secureDNS – information about DNSSEC records,
  • nameservers – an array of nameserver objects,
  • remarks - additional information about the object class,
  • links – links to sources of information,
  • objectClassName – string "domain" representing the type of object in RDAP,
  • nask0_state - a string in the "domain" object, telling about the current state of the domain,
  • nask0_option – the registry system object, representing the priority right to register a domain name maintained at NASK, if it is made available for registration,
  • handle – unique object identifier.
Example of the returned response in JSON format:
{
    "rdapConformance": [
        "rdap_level_0",
        "nask0"
    ],
    "notices": [
        {
            "title": "Domain name life cycle",
            "links": [
                {
                    "value": "https://www.dns.pl/en/domain_name_life_cycle",
                    "rel": "related",
                    "href": "https://www.dns.pl/en/domain_name_life_cycle",
                    "type": "text/html"
                }
            ]
        }
    ],
    "entities": [
        {
            "vcardArray": [
                "vcard",
                [
                    [
                        "version",
                        {
                        },
                        "text",
                        "4.0"
                    ],
                    [
                        "fn",
                        {
                        },
                        "text",
                        ""
                    ],
                    [
                        "kind",
                        {
                        },
                        "text",
                        "individual"
                    ]
                ]
            ],
            "roles": [
                "registrant"
            ],
            "remarks": [
                {
                    "title": "REDACTED FOR PRIVACY",
                    "type": "object truncated due to authorization",
                    "description": [
                        "The object does not contain all data 
                        due to lack of authorization."
                    ]
                }
            ],
            "objectClassName": "entity"
        },
        {
            "vcardArray": [
                "vcard",
                [
                    [
                        "version",
                        {
                        },
                        "text",
                        "4.0"
                    ],
                    [
                        "fn",
                        {
                        },
                        "text",
                        "NASK"
                    ],
                    [
                        "kind",
                        {
                        },
                        "text",
                        "org"
                    ],
                    [
                        "adr",
                        {
                            "cc": "PL"
                        },
                        "text",
                        [
                            "",
                            "",
                            "ul. Kolska 12",
                            "Warszawa",
                            "",
                            "01-045",
                            ""
                        ]
                    ],
                    [
                        "tel",
                        {
                            "type": "VOICE"
                        },
                        "uri",
                        "tel:+48.223808300"
                    ],
                    [
                        "email",
                        {
                        },
                        "text",
                        "info@dns.pl"
                    ]
                ]
            ],
            "roles": [
                "registrar"
            ],
            "remarks": [
                {
                    "title": "REDACTED FOR PRIVACY",
                    "type": "object truncated due to authorization",
                    "description": [
                        "The object does not contain all data 
                        due to lack of authorization."
                    ]
                }
            ],
            "objectClassName": "entity"
        }
    ],
    "events": [
        {
            "eventDate": "1998-09-10T19:21:25Z",
            "eventAction": "registration"
        },
        {
            "eventDate": "2013-10-23T10:37:26Z",
            "eventAction": "last changed"
        },
        {
            "eventDate": "2025-01-16T13:20:14.741657257Z",
            "eventAction": "last update of RDAP database"
        }
    ],
    "links": [
        {
            "value": "https://rdap.dns.pl/domain/nask.pl",
            "rel": "self",
            "href": "https://rdap.dns.pl/domain/nask.pl",
            "type": "application/rdap+json"
        }
    ],
    "ldhName": "nask.pl",
    "port43": "whois.pl",
    "secureDNS": {
        "delegationSigned": false
    },
    "remarks": [
        {
            "title": "REDACTED FOR PRIVACY",
            "type": "object truncated due to authorization",
            "description": [
                "The object does not contain all data 
                 due to lack of authorization."
            ]
        }
    ],
    "nameservers": [
        {
            "ldhName": "eomer.nask.pl",
            "ipAddresses": [
                {
                    "v4": [
                        "193.59.201.24"
                    ]
                }
            ],
            "remarks": [
                {
                    "title": "REDACTED FOR PRIVACY",
                    "type": "object truncated due to authorization",
                    "description": [
                        "The object does not contain all data 
                        due to lack of authorization."
                    ]
                }
            ],
            "objectClassName": "nameserver"
        },
        {
            "ldhName": "kirdan.nask.pl",
            "ipAddresses": [
                {
                    "v4": [
                        "195.187.244.8"
                    ]
                }
            ],
            "remarks": [
                {
                    "title": "REDACTED FOR PRIVACY",
                    "type": "object truncated due to authorization",
                    "description": [
                        "The object does not contain all data 
                        due to lack of authorization."
                    ]
                }
            ],
            "objectClassName": "nameserver"
        }
    ],
    "objectClassName": "domain",
    "nask0_state": "registered",
    "nask0_option": {
        "ldhName": "nask.pl",
        "events": [
            {
                "eventDate": "2023-06-12T08:09:06Z",
                "eventAction": "registration"
            },
            {
                "eventDate": "2026-06-12T08:09:06Z",
                "eventAction": "expiration"
            }
        ],
        "remarks": [
            {
                "title": "REDACTED FOR PRIVACY",
                "type": "object truncated due to authorization",
                "description": [
                    "The object does not contain all data 
                     due to lack of authorization."
                ]
            }
        ],
        "objectClassName": "nask0_option"
    }
}