Поддержка абонентов: support@thehost.ua
Ваши отзывы и предложения: #feedback

2.13. Реселлинг доменов: HTTP API

Взаимодействие с HTTP API для автоматизированного управления доменами в рамках программы реселлинга осуществляется по протоколу HTTPS, при этом все данные от API передаются клиентам в JSON формате.

Перечень основных переменных:

  • $API_URL - URL адрес HTTP API, которое доступно по статическому адресу my.thehost.com.ua/manager/billmgr
  • $LOGIN - Логин реселлера от личного кабинета
  • $PASSWORD - Пароль реселлера от личного кабинета

Получение актуального списка доменных имён

HTTP Запрос:
https:// $API_URL ?func=domain&authinfo= $LOGIN : $PASSWORD &out=json
HTTP Ответ:
{ "elem": [ { "id": "200", "name": "thedomain.com.ua", "account": "account (account name)", "account_id": "100", "expire": "2027-02-16", "autoperiod": "-", "domainstatus": "2" }, { "id": "220", "name": "thedomain2.com.ua", "account": "account (account name)", "account_id": "100", "expire": "2022-02-16", "autoperiod": "-", "domainstatus": "2" }] }
Статус домена кодируется полем "domainstatus":

  • 0 - Нет данных
  • 1 - Не оплачен
  • 2 - Делегирован (Активен)
  • 3 - Зарегистрирован (Не делегирован)
  • 4 - Удален
  • 5 - Обрабатывается (На регистрации)
  • 6 - Обрабатывается (Трансфер)
  • 7 - Обрабатывается (На продлении)

Изменение неймсерверов домена (NS)

https:// $API_URL ?func=domain.edit&elid= $DOMAIN_ID &ns0= $NS0 &ns1= $NS1 &ns2=$ NS2 &ns3= $NS3 &changens=on&sok=ok&authinfo= $LOGIN : $PASSWORD &out=json
Переменные запроса:

  • $DOMAIN_ID - Идентификтор домена (id)
  • $NS0 - Первый неймсервер
  • $NS1 - Второй неймсервер
  • $NS2 - Третий неймсервер
  • $NS3 - Четвёртый неймсервер
    HTTP Ответ:
    { "result" : "OK", "text": "\n ", "text": "\n", "ok": "" }

Создание контакта доменного имени

Состоит из двух этапов:
https:// $API_URL ?func=contcat.create.1 &ctype=generic &cname= $CONTACT_NAME &sok=ok &authinfo= $LOGIN : $PASSWORD &out=json
Переменные запроса:

  • $CONTACT_NAME - Название контакта
    HTTP Ответ в котором содержится $CONTACT_ID для второго этапа:
    { "result" : "OK", "domaincontact.id": $CONTACT_ID, "ok": "", "redirect": "location='billmgr?func=contcat.create.2 &authinfo= $LOGIN : $PASSWORD &cname=CONTACT%5FNAME &contactid= $CONTACT_ID &ctype=generic';" }
    Второй этап актуализирует данные контакта:
    https:// $API_URL ?func=domaincontact.edit &ctype=generic &name= $CONTACT_NAME &company= $COMPANY &firstname= $FIRSTNAME &lastname= $LASTNAME &email= $EMAIL &phone= $PHONE &fax= $PHONE &la_country= $ID_COUNTRY &la_state= $LA_STATE &la_postcode= $LA_POSTCODE &la_city= $LA_CITY &la_address= $LA_ADDRESS &elid= $CONTACT_ID &sok=ok &authinfo= $LOGIN : $PASSWORD &out=json
    Переменные запроса:
  • $CONTACT_NAME - Название контакта
  • $COMPANY - Название компании контакта. Для физических лиц необходимо указывать "Private Person"
  • $FIRSTNAME - Имя контактной особы в латинице (пример "Ivan")
  • $LASTNAME - Фамилия контактной особы в латинице (пример "Ivanov")
  • $EMAIL - Электронная почта контакта (пример "test@test.com")
  • $PHONE - Телефон контактного лица в нужном формате - в номере обязательно должны присутствовать + и 2 пробела, при этом "+" кодируется как %2B (пример "%2B380 67 1234567")
  • $ID_COUNTRY - Код страны. Полный перечень кодов стран доступен по ссылке
  • $LA_STATE - Название области в латинице (пример "Kyiv region")
  • $LA_POSTCODE - Почтовый код (пример "01001")
  • $LA_CITY - Название города в латинице (пример "Kyiv")
  • $LA_ADDRESS - Адрес в латинице (пример "Kreschatik 1")

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

https:// $API_URL ?func=domain.order.4 &contact= $CONTACT_ID &ctype=person &owner= $CONTACT_ID &domain= $DOMAIN_NAME_WITHOUT_TLD &domainname_0= $DOMAIN_NAME_WITHOUT_TLD &tld= $TLD &nslist_0= $NSLIST &operation=register &period_0= $PRICE_PERIOD_ID &price= $PRICE_ID &pricelist_0= $PRICE_ID &registrar= $REGISTRAR_ID &paynow=on &payfrom=account $ACCOUNT_ID &sok=ok &authinfo= $LOGIN : $PASSWORD &countdomain=1 &out=json
Переменные запроса:

  • $CONTACT_ID - Идентификтор контакта домена
  • $DOMAIN_NAME_WITHOUT_TLD - Доменное имя, без доменной зоны (пример "thehost" для домена "thehost.ua"
  • $NSLIST - Список неймсерверов, перечисленных через пробел (пример &nslist_0=ns1.thehost.ua ns2.thehost.ua)
  • $PRICE_PERIOD_ID и $PRICE_ID - Тарифный период и тарифный план для регистрируемого домена. Полный перечень идентификаторов тарифных планов доступен по ссылке
  • $TLD - Название доменной зоны (пример "com.ua", "com")
  • $REGISTRAR_ID - Код обработчика для соответствующей доменной зоны. Полный перечень кодов обработки для доменных зон доступен по ссылке
  • $ACCOUNT_ID - Код вашего плательщика в личном кабинете для формирования списаний средств за платные операции с доменными именами. Посмотреть можно в личном кабинете TheHost или по API:
    (https:// $API_URL /manager/billmgr?func=accountinfo&authinfo= $LOGIN : $PASSWORD &out=json)

Операция продления доменного имени

https:// $API_URL ?func=domain.renew &autoperiod= $PRICE_PERIOD &payfrom=account $ACCOUNT_ID &paynow=on &elid= $DOMAIN_ID &sok=ok &authinfo= $LOGIN : $PASSWORD &out=json