HTTP API

Введение

HTTP API предоставляет простой способ интегрировать Ваш сайт или приложение с функциональностью нашего сервиса регистрации и обслуживания доменных имен Bestname.ua

Для интеграции Вы можете использовать существующие библиотеки для работы с HTTP запросами и обработки возвращаемых данных в формате JSON. Эти библиотеки доступны практически для всех языков программирования.

Хорошей практикой является кодирование данных при отправке команд API. Особенно важно использовать кодирование при отправке персональных данных владельца домена в которых могут присутствовать специальные символы.

Начало работы с API

Аутентификация реселлера посылающего запросы к API происходит по двум параметрам:
1. Один или несколько внесенных в белый список IP с которых будут производиться запросы к API.
2. Ко всем API запросам должен быть добавлен параметр API-KEY который можно получить в личном кабинете реселлера.

Все данные возвращаются в формате JSON. В случае успеха ответом будет номер заявки в очереди. Для проверки статуса заявки нужно выполнить соответствующую команду API.

Для некоторых команд предусмотрена возможность посылки запроса в тестовом режиме. Для этого в POST запросе нужно передать не пустой параметр debug. Тестовый режим предназначен для ознакомления с набором возвращаемых данных и возможностью предварительной валидации передаваемых данных. Доступность тестового режима указана в описании каждой команды ниже.

Техническая поддержка

Если у Вас возникнут вопросы технического характера, пожалуйста, обращайтесь по адресу dev@besthosting.ua

Список команд API

Проверка доступности доменного имени
Регистрация доменного имени
Продление доменного имени
Получение стоимости продления доменного имени
Смена NS
Получение списка клиентов реселлера
Получение списка доменов клиента
Получение данных клиента
Получение статуса ранее созданной заявки

Проверка доступности доменного имени

HTTP MethodPOST
URL запросаhttps://www.bestname.ua/api/check
Тестовый запросНедоступен
ПолеОбязательноеОписание
api-keyДаПерсональный ключ реселлера
domainДаНазвание домена

Пример передаваемых данных (POST):
api-key=YOURKEY
domain=domain.com

Ответ:

В случае успеха:
ПолеЗначениеОписание
successtrue
availabletrue / falseДомен свободен или занят (недоступен) для регистрации

В случае неудачи:
ПолеЗначениеОписание
successfalse
descrTextОписание ошибки

Регистрация доменного имени

HTTP MethodPOST
URL запросаhttps://www.bestname.ua/api/register
Тестовый запросДоступен
ПолеОбязательноеОписание
api-keyДаПерсональный ключ реселлера
domainДаНазвание домена
periodНетСрок регистрации (количество лет). По умолчанию: 1 год. Допустимые периоды регистрации для зоны.
protectionНетЗащита персональных данных. По умолчанию false. Доступно только для международных зон.
ns1НетName Server. По умолчанию ns1.bestname.com.ua
ip1НетIP для NS1. По умолчанию пустое значение.
ns2НетName Server. По умолчанию ns2.bestname.com.ua
ip2НетIP для NS2. По умолчанию пустое значение.
ns3НетName Server. По умолчанию ns3.bestname.com.ua
ip3НетIP для NS3. По умолчанию пустое значение.
user-idДа / НетДля регистрации домена на существующего пользователя указывается его id. Иначе поле не обязательно.
emailДа / НетОбязательно, если не указан user-id. Уникальный на Bestname.ua email для нового пользователя.
fioДа / НетОбязательно, если не указан user-id. Полное ФИО нового пользователя.
countryДа / НетОбязательно, если не указан user-id. Код страны по стандарту ISO_3166-1 alpha-2
regionДа / НетОбязательно, если не указан user-id. Название области.
cityДа / НетОбязательно, если не указан user-id. Название населенного пункта.
addressДа / НетОбязательно, если не указан user-id. Адрес.
zipДа / НетОбязательно, если не указан user-id. Почтовый индекс.
phoneДа / НетОбязательно, если не указан user-id. Телефон в полном формате (код страны + код оператора + номер). Пример: 380961234567, 79871234567
block-mailНетБлокировать отправку сервисных писем клиенту. По умолчанию false.
jurНетtrue - для юридического статуса нового пользователя. По умолчанию false (физическое лицо).
edrpouДа / НетОбязательно, если не указан user-id и указан jur=true. Код ЕГРПОУ.
companyДа / НетОбязательно, если не указан user-id и указан jur=true. Название организации.
license-uaДа / НетОбязательно для зоны UA. Номер лицензии торговой марки.

Пример передаваемых данных (POST):
api-key=YOURKEY
domain=domain.com
period=1
user-id=11111
Пример передаваемых данных в тестовом режиме (POST):
api-key=YOURKEY
domain=domain.com
period=1
user-id=11111
debug=true

Ответ:

В случае успеха:
ПолеЗначениеОписание
successtrue
order-idIntegerНомер заявки в очереди

В случае неудачи:
ПолеЗначениеОписание
successfalse
descrArrayОписание ошибки

Продление доменного имени

HTTP MethodPOST
URL запросаhttps://www.bestname.ua/api/prolong
Тестовый запросДоступен
ПолеОбязательноеОписание
api-keyДаПерсональный ключ реселлера
domainДаНазвание домена
periodНетСрок продления (количество лет). По умолчанию: 1 год. Допустимые периоды продления для зоны.

Пример передаваемых данных (POST):
api-key=YOURKEY
domain=domain.com
period=1
Пример передаваемых данных в тестовом режиме (POST):
api-key=YOURKEY
domain=domain.com
period=1
debug=true

Ответ:

В случае успеха:
ПолеЗначениеОписание
successtrue
order-idIntegerНомер заявки в очереди

В случае неудачи:
ПолеЗначениеОписание
successfalse
descrTextОписание ошибки

Получение стоимости продления доменного имени

HTTP MethodPOST
URL запросаhttps://www.bestname.ua/api/prolongprice
Тестовый запросНедоступен
ПолеОбязательноеОписание
api-keyДаПерсональный ключ реселлера
domainДаНазвание домена
periodНетСрок продления (количество лет). По умолчанию: 1 год. Допустимые периоды продления для зоны.

Пример передаваемых данных (POST):
api-key=YOURKEY
domain=domain.com
period=1

Ответ:

В случае успеха:
ПолеЗначениеОписание
successtrue
priceFloatСтоимость продления домена на указанный период в грн.

В случае неудачи:
ПолеЗначениеОписание
successfalse
descrTextОписание ошибки

Смена NS

HTTP MethodPOST
URL запросаhttps://www.bestname.ua/api/ns
Тестовый запросДоступен
ПолеОбязательноеОписание
api-keyДаПерсональный ключ реселлера
domainДаНазвание домена
ns1Даадрес Name Server
ns2Даадрес Name Server
ns3Даадрес Name Server

Пример передаваемых данных (POST):
api-key=YOURKEY
domain=domain.com
ns1=ns1.bestname.com.ua
ns2=ns2.bestname.com.ua
ns3=ns3.bestname.com.ua
Пример передаваемых данных в тестовом режиме (POST):
api-key=YOURKEY
domain=domain.com
ns1=ns1.bestname.com.ua
ns2=ns2.bestname.com.ua
ns3=ns3.bestname.com.ua
debug=true

Ответ:

В случае успеха:
ПолеЗначениеОписание
successtrue
order-idIntegerНомер заявки в очереди

В случае неудачи:
ПолеЗначениеОписание
successfalse
descrTextОписание ошибки

Получение списка клиентов реселлера

HTTP MethodPOST
URL запросаhttps://www.bestname.ua/api/clients
Тестовый запросНедоступен
ПолеОбязательноеОписание
api-keyДаПерсональный ключ реселлера

Пример передаваемых данных (POST):
api-key=YOURKEY

Ответ:

В случае успеха:
ПолеЗначениеОписание
successtrue
clientsArrayМассив клиентов с данными

В случае неудачи:
ПолеЗначениеОписание
successfalse
descrTextОписание ошибки

Получение списка доменов клиента

HTTP MethodPOST
URL запросаhttps://www.bestname.ua/api/domains
Тестовый запросНедоступен
ПолеОбязательноеОписание
api-keyДаПерсональный ключ реселлера
client-idДаID клиента полученный командой api/clients

Пример передаваемых данных (POST):
api-key=YOURKEY
client-id=1111

Ответ:

В случае успеха:
ПолеЗначениеОписание
successtrue
domainsArrayМассив доменов клиента

В случае неудачи:
ПолеЗначениеОписание
successfalse
descrTextОписание ошибки

Получение данных клиента

HTTP MethodPOST
URL запросаhttps://www.bestname.ua/api/contacts
Тестовый запросНедоступен
ПолеОбязательноеОписание
api-keyДаПерсональный ключ реселлера
client-idДаID клиента полученный командой api/clients

Пример передаваемых данных (POST):
api-key=YOURKEY
client-id=1111

Ответ:

В случае успеха:
ПолеЗначениеОписание
successtrue
contactsArrayМассив данных клиента

В случае неудачи:
ПолеЗначениеОписание
successfalse
descrTextОписание ошибки

Получение статуса ранее созданной заявки

HTTP MethodPOST
URL запросаhttps://www.bestname.ua/api/status
Тестовый запросНедоступен
ПолеОбязательноеОписание
api-keyДаПерсональный ключ реселлера
order-idДаНомер заявки

Пример передаваемых данных (POST):
api-key=YOURKEY
order_id=1111

Ответ:

В случае успеха:
ПолеЗначениеОписание
successtrue
statusTextОдин из вариантов PENDING | PROCESSING | REJECTED | DONE

В случае неудачи:
ПолеЗначениеОписание
successfalse
descrTextОписание ошибки

Онлайн чат :) x

Будь-ласка, виберіть відділ, до якого Ви б хотіли підключитись