RDAP

Registration Data Access Protocol (RDAP) – це протокол доступу до реєстраційних даних із реєстра доменних імен. Він є наступником протоколу WHOIS. На відміну від WHOIS, RDAP надає дані в машиночитному форматі JavaScript Object Notation (JSON). RDAP базується на веб-службах RESTful API, що використовують протокол HTTPs.

Призначений для отримання інформації про об’єкти, зареєстровані в Реєстрі доменних імен:

Домени Хости (DNS-сервери) Реєстратори доменів Контакти доменів Help

Формат запитів до сервісу RDAP


Запити щодо доменів .UA та інших об’єктів, що обслуговується Реєстром, мають бути надіслані на сервер
https://rdap.hostmaster.ua
наступним чином:

Загальні вимоги


Клієнти можуть звертатися до сервера за протоколом HTTPs з використанням GET та HEAD методів, сервер на них формує відповіді. Запити з використанням інших методів не обробляються.

Допустиме значення заголовку Accept у HTTP-запиті: Accept: application/rdap+json

Якщо сервер має інформацію за отриманим запитом, він повертає код відповіді 200 OK та об’єкт відповіді JSON (RFC9083).

Якщо сервер не має інформації, що відповідає на запит, він повертає код відповіді 404 Not found.

Якщо на сервері немає інформації, яка є відповіддю на запит, але відомо, де інформація може бути знайдена, сервер повертає відповідь перенаправлення (3xx) із заголовком Location, що містить URL-адресу HTTP(S), що вказує на інший сервер, який може мати запитувану інформацію.

Якщо у запиті до сервера є додаткові параметри, вони ігноруються сервером.

Кодування запитів та відповідей сервера – UTF-8

Документація до сервісу RDAP


HTTP Status Codes


Залежно від результату обробки запиту сервер поверне код відповіді:

Інформація про домен:


Запит:

https://rdap.hostmaster.ua/domain/<domain>
Приклад відповіді у форматі JSON:
"rdapConformance": ["rdap_level_0"],
"objectClassName": "domain", тип об’єкта – domain
"handle": "example.ua", ідентифікатор об’єкта – доменне ім'я
"ldhName": "example.ua", доменне ім'я
"unicodeName": "" доменне ім'я в UNICODE (якщо доменне ім'я в punycode)
"nameservers": […] масив DNS-серверів
"entities": […] масив даних щодо реєстратора та контактів домену
"status": […] масив статусів домену
"secureDNS": […] інформація щодо DNSSEC
"events": […] масив подій (дати створення, закінчення реєстрації, останньої зміни)
"links": […] посилання на об’єкт
"remarks": […] примітки (номер ліцензії для доменів .UA тощо)
"port43": "whois.ua" whois сервер

Інформація про хост (DNS server):


Запит:

https://rdap.hostmaster.ua/nameserver/<hostname>
Приклад відповіді у форматі JSON:
"rdapConformance":
["rdap_level_0"],
"objectClassName":
"nameserver",
тип об’єкта – nameserver
"handle":
"ns1.example.ua",
ідентифікатор об’єкта – ім'я хоста
"ldhName":
"ns1.example.ua",
ім'я хоста
"unicodeName":
""
ім'я хоста в UNICODE (якщо ім'я хоста в punycode)
"ipAddresses":
[…]
IP-адреси хоста
"entities":
[…]
масив даних щодо реєстратора, що супроводжує об’єкт
"status":
[…]
"events":
[…]
масив подій (дати створення, останньої зміни)
"links":
[…]
посилання на об’єкт

Інформація про реєстратора:


Запит:

https://rdap.hostmaster.ua/entity/<registrar>
Приклад відповіді у форматі JSON:
"rdapConformance":
["rdap_level_0"],
"objectClassName":
"entity",
тип об’єкта – entity
"handle":
"ua.xxxxxx",
ідентифікатор реєстратора
"roles":
["registrar"]
роль: реєстратор
"vCardArray":
[…]
масив даних щодо реєстратора
"status":
["active"]
статус реєстратора

Інформація про контакт домену:


Запит:

https://rdap.hostmaster.ua/entity/<contact-id>
Приклад відповіді в форматі JSON:
"rdapConformance":
["rdap_level_0"],
"objectClassName":
"entity",
тип об’єкта – entity
"handle":
"",
ідентифікатор контакта не відображається у відповіді
"roles":
[…]
масив типів ролей контакта в домені
"vCardArray":
[…]
масив даних щодо контакта
"status":
[…]
"entities":
[…]
масив даних щодо реєстратора, що супроводжує об’єкт
"events":
[…]
масив подій (дати створення, останньої зміни)
"remarks":
[…]
примітки (повідомлення у випадку закриття деяких даних)

Варіанти "roles": ["registrant", "administrative", "technical"].

В окремому запиті entity element "roles" не використовується, тільки в інформації по домену.


Опис елементів відповіді


Загальні елементи, які можуть бути присутніми на всіх відповідях сервера:

Опис елементів vcardArray – дані про реєстраторів і контакти доменів:



DNSSEC


"secureDNS" - елемент об'єкта domain, що включає опис DS-записів домену (RFC4034). Блок завжди присутній в об'єкті, незалежно, чи є в реєстрі DS-записи для домену. Якщо DS-записів немає, то виводиться лише "delegationSigned":"false".

Масив складається з елементів: