Description of ROOTPANEL.NET API for domain registration system HOSTETSKI:)


Содержание

1. Введение

Это справочное руководство описывает HTTP-шлюз к системе распределённой регистрации HOSTETSKI:) (далее ROOTPANEL.NET API).

HTTP-шлюз — это метод взаимодействия с системой распределённой регистрации ROOTPANEL.NET API, позволяющий осуществлять операции в реальном времени за один шаг.

Для осуществления одношаговых (одноэтапных) операций, вся информация должна быть представлена в одном единственном HTTP-запросе. В интерфейсе ROOTPANEL.NET API нет понятия "состояния" и все запросы независимы друг от друга. HTTP-интерфейс поддерживает такие операции как регистрация доменного имени, продление доменного имени, смена DNS серверов доменного имени, смена регистрационных данных доменого имени и т.п. Доступные операции описаны ниже в этом документе.

2. Описание HTTP шлюза

Компания HOSTETSKI:) предоставляет не только реальный доступ к HTTP-шлюзу, но также и тестовый доступ для отладки взаимодействия с системой ROOTPANEL.NET API.

2.1. Реальный доступ

Запросы к HTTP-шлюзу должны направляться на URL https://my.hostetski.com/api.php

Среднее время ответа при нормальных нагрузках сервера должно быть не более 5 или 10 секунд.

2.2. Тестовый доступ

HOSTETSKI:) предоставляет тестовый доступ к своему шлюзу для тестирования системы регистрации. Отличия тестового доступа от реального таковы:

Для использования тестовой системы, HTTP запросы должны направляться на тот же URL, что и для реальной системы. При этом используются следующие авторизационные данные:

3. Отправка HTTP-запросов

3.1. Команды

HTTP-шлюз позволяет выполнять различные команды. В таблице ниже приведён список команд, которые могут быть осуществлены с использованием HTTP-шлюза. Для каждой операции требуется указание различных параметров (полей), которые описаны ниже в этом документе.

Команда
(значение command)
Описание
createProfile Создание профайла
updateProfile Изменение профайла
getProfile Получение данных профайла
checkDomain Проверка доступности доменного имени
registerDomain Регистрация доменного имени
transferDomain Трансфер доменного имени
renewDomain Продление доменного имени
updateDomainContacts Изменение контактов для доменного имени
getDNS Получение DNS-серверов для доменного имени
updateDNS Изменение DNS-серверов для доменного имени
getDomainStatus Получение статуса регистрации доменного имени
getAvailZones Получение списка доступных доменных зон
getAvailOblast Получение списка областей для страны
getAvailRegistrators Получение списка регистраторов для доменной зоны
getBalance Получение суммы внутреннего баланса пользователя

3.2. Формат входных данных

Команды передаются в виде стандартного запроса HTTP/1.0 методом POST или GET. Параметры команды передаются в виде HTTP параметров. При этом действуют следующие правила:

3.3. Формат результата выполнения команды

Ответом интерфейса ROOTPANEL.NET API является сериализованная строка, содержащая в себе массив параметров, полученная с помощью PHP-функции serialize.

Кодировка строки ответа utf-8.

Для преобразования сериализованной строки обратно в массив параметров, необходимо использовать PHP-функцию unserialize.

Так же есть возмоность получать ответ в формате JSON.

3.4. Общие поля запросов

В таблице перечислены все обязательные поля, которые должны присутствовать в любом запросе.

Имя поляОписание
commandОпределяет команду, которая должна быть выполнена, например registerDomain
loginЛогин пользователя в биллинговой системе
passПароль пользователя в биллинговой системе. Поля pass и apikey являются взаимоисключающими и не могут встречаться в одном запросе.
См. раздел 3.6.
apikeyКлюч для доступа к интерфейсу ROOTPANEL.NET API. Поля pass и apikey являются взаимоисключающими и не могут встречаться в одном запросе.
См. раздел 3.6.
languageЯзык подробного описания ошибок (russian, english, ukrainian). Поле не обязательное. По умолчанию: russian
jsonЕсли для поля задано значение равное единице, то система будет выдавать ответ в JSON-формате. Поле не обязательное.
currency Трехбуквенный код валюты. Если для поля задано значение, все цены в ответах будут в заданной валюте, в противном случае цены будут в валюте, которая указана в настройках клиента. Поле не обязательное.

3.5. Сообщения об ошибках

Существует два типа ошибок - критические и не критические.

В случае критической ошибки считается, что команда не выполнена.

В случае не критической ошибки считается, что команда выполнена, либо будет выполнена позже.

В случае ошибки при выполнении команды, ROOTPANEL.NET API возвращает параметры, перечисленные в таблице ниже.

Имя поля Описание
status Результат выполнения команды. В случае критической ошибки значение всегда равно ERROR. В случае не критической SUCCESS.
errorCode Код ошибки
errorMsg Подробное описание ошибки

В таблице ниже приведены возможные критические ошибки при работе с ROOTPANEL.NET API.

Код ошибкиОписание
1Ошибка подключения к БД
2Ошибка сохранения данных в БД
3Не указан логин пользователя
4Пользователь не найден
5Доступ к API отключен
6Не указан пароль или ключ API
7Указан неправильный пароль или ключ API
8Неизвестная команда
9Запрещено использовать пароль и ключ API в одном запросе
10Профайл не найден
11Ошибки в полях профайла: {перечень полей}
12Не указано ни одно из полей профайла для изменения
13Не указано доменное имя
14Не указана доменная зона
15Доменная зона указана неверно, либо она не активна
16Длина доменного имени должна быть от {X} до {Y} символов
17Доменное имя может содержать только a-z0-9а-я и символ дефиса, при чем не должно начинаться с дефиса или заканчиваться на него
18Доменное имя занято
19Доменное имя уже заказано другим пользователем биллинговой системы
20Превышен лимит на количество регистрируемых бесплатных доменных имен в день
21Не указан срок регистрации доменного имени
22Допустимый срок регистрации доменного имени, лет - {X}-{Y}
23Возможность использования DNS-серверов по умолчанию отключена для доменной зоны
24Не указан или указан неверно первичный DNS-сервер
25Не указан или указан неверно вторичный DNS-сервер
26Указан неверно третий DNS-сервер
27Указан неверно четвертый DNS-сервер
28API не поддерживает работу с собственными DNS-серверами для данной доменной зоны
29Ошибка проверки DNS-серверов
31Недостаточно среств на внутреннем балансе
32Заказ на доменное имя не найден
33Доменная зона для заказа не найдена
34Не указан срок продления доменного имени
35Допустимый срок продления доменного имени, лет - {X}-{Y}
36Операция не возможна, т.к. для заказа есть неоплаченные счета
37Операция не возможна, т.к. заказ не обработан
38Продление не возможно ранее чем за {X} дней до окончания оплаченного периода
39Тип профайла не должен отличаться от типа профайла на который изначально регистрировался домен
40Операция не возможна, т.к. заказ просрочен
41Операция не поддерживается для данной доменной зоны
42Не указан ISO-код страны
43Список областей для страны не задан
44Для доменной зоны отсутствует возможность выбора регистратора
45Не указан IP-адрес для собственного NS1
46Указан IP-адрес для NS1, который не является собственным DNS-сервером домена
47Не указан IP-адрес для собственного NS2
48Указан IP-адрес для NS2, который не является собственным DNS-сервером домена
49Не указан IP-адрес для собственного NS3
50Указан IP-адрес для NS3, который не является собственным DNS-сервером домена
51Не указан IP-адрес для собственного NS4
52Указан IP-адрес для NS4, который не является собственным DNS-сервером домена
53Ошибка получения DNS-серверов
54Доступ запрещен. IP отсутствует в списке разрешенных
55Для данной доменной зоны трансфер не поддерживается
56Доменное имя не зарегистрировано
57API не поддерживает работу с собственными DNS-серверами при трансфере
58Не указан AUTH-CODE доменного имени
59ID профайла не должен отличаться от ID профайла на который изначально регистрировался домен
60Ошибка проверки доступности доменного имени
61Не указан номер свидетельства ТМ
62Не указаны дополнительные поля: {перечень полей}

В таблице ниже приведены возможные не критические ошибки при работе с ROOTPANEL.NET API.

Код ошибки Описание
30 Заявка принята, но по техническим причинам будет обработана в ручном режиме.

3.6. Способы аутентификации

В системе регистрации ROOTPANEL.NET API поддерживается два способа аутентификации: по логину и паролю, а также аутентификация по ключу API.

3.6.1. Аутентификация по паролю

Аутентификация осуществляется с использованием полей запроса login и pass. Пользователь с указанным логином и паролем должен существовать в биллинговой системе для успешного прохождения аутентификации. Так же для него должен быть включен доступ к API.

3.6.2. Аутентификация по ключу API

Аутентификация осуществляется с использованием полей запроса login и apikey. Пользователь с указанным логином и ключом API должен существовать в биллинговой системе для успешного прохождения аутентификации. Так же для него должен быть включен доступ к API.

4. Описание команд

4.1. Создание профайла

Эта команда служит для создания профайла (контакта) в биллинговой системе. В качестве значения поля command для этой команды должно быть указано createProfile.

Профайлы используются при регистрации доменных имен, а так же при изменении контактов доменного имени.

Профайлы бывают трех типов - физическое лицо, частный/индивидуальный предприниматель и организация.

В таблице ниже перечислены общие поля, используемые при создании профайла, а так же поля, необходимые для конкретных типов профайла.

Типы полей:

R - обязательное поле

RR - обязательное поле, если профайл используется для регистрации российских доменов

RPPUA - обязательное поле, если профайл используется для регистрации доменов PP.UA

R_XX - обязательное поле, если для профайла указана страна XX (XX - ISO код страны)

O - необязательное поле

O_XX - необязательное поле, если для профайла указана страна XX (XX - ISO код страны)

Общие поля для всех типов профайлов
Имя поляТипОписание
domainOДомен для владельца которого необходимо создать профайл. Поле не используется при работе под обычным клиентом и является не обязательным при работе под админом.
useridOID клиента для которого необходимо создать профайл. Поле не используется при работе под обычным клиентом и является обязательным при работе под админом если не указан domain.
orgRТип профайла:
1 - физическое лицо
2 - частный/индивидуальный предприниматель
3 - организация
surnameRДля организаций - фамилия директора / ответственного лица.
Для физ.лиц/ЧП/ИП - фамилия физ.лица/ЧП/ИП.
Пример: Иванов
nameRДля организаций - имя директора / ответственного лица.
Для физ.лиц/ЧП/ИП - имя физ.лица/ЧП/ИП.
Пример: Александр
genderOПол физического лица / директора / ответственного лица.
Может принимать значения male (мужской) или female (женский)
countryRДвухбуквенный ISO-код страны.
Пример: UA
oblastRОбласть.
Пример: Черкасская обл.
Список допустимых для конкретной страны областей можно получить, выполнив команду описанную в разделе 4.8.
postRПочтовый индекс.
Пример: 189343
cityRНазвание населенного пункта.
Пример: Москва
streetRПочтовый адрес.
Пример: ул. Саратовская, д. 5, кв. 34; ул. Крымская, д. 172 (частный дом); ул. Сумская, д. 2, офис 4
phoneRТелефон с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и дефисы не допускаются.
Пример: +7 495 8102233
mobileRPPUAМобильный телефон с международным кодом (включая символ +); международный код, код оператора и местный номер разделяются пробелами. Скобки и дефисы не допускаются.
Пример: +7 926 8102233
faxOФакс с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и дефисы не допускаются.
Пример: +7 495 8102233
emailRE-mail адрес.
Пример: ivan@krutov.ru
jabberOJabber ID.
Пример: jabber@jabber.ru
skypeO Логин Skype.
ripnORIPN-никхендел.
Поле может быть обязательным для определенных доменных зон.
Пример: RIP-RIPN
ripeORIPE-никхендел.
Поле может быть обязательным для определенных доменных зон.
Пример: RIP-RIPE
uanicOUANIC-никхендел.
Поле может быть обязательным для определенных доменных зон.
Пример: RIP-UANIC
dpnicODPNIC-никхендел.
Поле может быть обязательным для определенных доменных зон.
Пример: RIP-DPNIC
epnicOEPNIC-никхендел.
Поле может быть обязательным для определенных доменных зон.
Пример: RIP-EPNIC
Дополнительные поля для физического лица
Имя поляТипОписание
seriyaRСерия и номер паспорта.
Знак номера перед номером паспорта не ставится.
Пример, Россия: 34 02 651241; Пример, Украина: НС 223344
byRПолное наименование органа, выдавшего паспорт.
Пример: 48 о/м г.Москвы
dateRДата выдачи паспорта.
Пример: 23.07.1999
birthdayRДата рождения.
Пример: 20.07.1983
idnumR_BYИдентификационный номер.
socstrahnumberR_FIНомер социального страхования.
oibR_HRCompany or Personal ID (OIB).
oibR_GEPersonal ID.
Дополнительные поля для частного/индивидуального предпринимателя
Имя поляТипОписание
seriyaRСерия и номер паспорта.
Знак номера перед номером паспорта не ставится.
Пример, Россия: 34 02 651241; Пример, Украина: НС 223344
byRПолное наименование органа, выдавшего паспорт.
Пример: 48 о/м г.Москвы
dateRДата выдачи паспорта.
Пример: 23.07.1999
birthdayRДата рождения.
Пример: 20.07.1983
idnumR_BYИдентификационный номер.
edrpouR_UAЄДРПОУ
Код в Государственном реестре предприятий и организаций.
Пример: 2354231243
innR_RUИдентификационный номер налогоплательщика (ИНН).
Пример: 789012345678
ogrnR_HUРегистрационный номер частного предпринимателя.
oibR_HRCompany or Personal ID (OIB).
Дополнительные поля для организации
Имя поляТипОписание
firmaRПолное наименование организации на русском языке в соответствии с учредительными документами.
Пример: Общество с ограниченной ответственностью "Рога и Копыта"
firmaengRПолное наименование организации латинскими буквами.
Пример: "ROGA I KOPYTA", LTD.
address_orgRЮридический адрес организации в соответствии с учредительными документами.
Пример: 101000, Москва, ул.Пупкина, 1, стр. 2
innRИдентификационный номер налогоплательщика (ИНН).
Пример: 789012345678
kppR_RUКПП организации.
Пример: 632946014
oibR_HRCompany or Personal ID (OIB).
okpoR_BY
R_UZ
Код в Общем классификаторе областей народного хозяйства.
Пример: 72000
edrpouR_UAЄДРПОУ
Код в Государственном реестре предприятий и организаций.
Пример: 2354231243
positionR_UAДолжность ответственного лица
Пример: Директор
actingUnderR_UAНа основании чего действует ответственное лицо
Пример: Устава
ogrnR_RU
R_BY
R_FI
ОГРН. Сведения о документе, удостоверяющем регистрацию в соответствии с правилами страны инкорпорации (серия и номер документа).
ogrn_byR_RU
R_BY
R_FI
Кем выдан ОГРН.
ogrn_dateR_RU
R_BY
R_FI
Дата выдачи ОГРН.
bankOБанковские реквизиты: Банк
bank_bikOБанковские реквизиты: БИК (МФО)
bank_schetOБанковские реквизиты: Расчётный счет

В случае успешного выполнения команды, ROOTPANEL.NET API вернет поля, перечисленные в таблице ниже.

Имя поляОписание
statusЕсли команда выполнена успешно, значение всегда будет SUCCESS.
profileidID профайла.
Необходим для дальнейшего изменения профайла, а так же для регистрации доменов на данный профайл.

4.2. Изменение профайла

Эта команда служит для изменения профайла (контакта) в биллинговой системе. В качестве значения поля command для этой команды должно быть указано updateProfile.

Внимание! Контакт доменного имени при изменении профайла в биллинговой системе остается неизменным. Для изменения непосредственно контактов доменного имени, необохдимо использовать команду, описанную в разделе 4.5.

В таблице ниже перечислены поля, используемые при изменении профайла.

Имя поляОписание
profileidID профайла, возвращаемый командой createProfile.
Если не указать, то будет изменен профайл по умолчанию для пользователя.
domainДомен для владельца которого необходимо изменить профайл. Поле не используется при работе под обычным клиентом и является не обязательным при работе под админом.
useridID клиента для которого необходимо изменить профайл. Поле не используется при работе под обычным клиентом и является обязательным при работе под админом если не указан domain.
<параметры>В качестве параметров могут быть использованы любые поля, описанные в разделе 4.1., как по отдельности, так и вместе.
Запрещено изменять значение поля org (тип профайла).

В случае успешного выполнения команды, ROOTPANEL.NET API вернет поля, перечисленные в таблице ниже.

Имя поляОписание
statusЕсли команда выполнена успешно, значение всегда будет SUCCESS.
profileidID профайла.

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


Эта команда служит для регистрации доменного имени. В качестве значения поля command для этой команды должно быть указано registerDomain.
В таблице ниже перечислены поля, используемые при регистрации доменного имени.
Имя поляОписание
domainПолное доменное имя, которое необходимо зарегистрировать, например example.com. Допустимы алфавитно-цифровые символы и символ дефиса. Русские имена доменов указываются в кодировке utf-8.
registratoridID регистратора. Поле используется только в том случае, если для доменной зоны доступны несколько регистраторов. Если не задано, используется регистратор по умолчанию.
Список доступных регистраторов для доменной зоны можно получить, выполнив команду, описанную в разделе 4.9.
periodПериод на который производится регистрация домена. Допустимые значения для данного поля по каждой доменной зоне можно увидеть здесь. Значение необходимо указывать в годах. Пример: 1.
profileidID профайла, возвращаемый командой createProfile, данные из которого необходимо использовать для создания контактов владельца домена. Если не указано, то используется профайл по умолчанию для пользователя.
defaultns1 - использовать DNS-сервера компании (данная возможность может быть отключена)
0 - указать собственные DNS-сервера.
ns1Первичный DNS-сервер. Поле является обязательным, если не указано использование DNS-серверов компании.
ns2Вторичный DNS-сервер. Поле является обязательным, если не указано использование DNS-серверов компании.
ns3Третий DNS-сервер. Поле не обязательное.
ns4Четвертый DNS-сервер. Поле не обязательное.
ns1ipIP-адрес для первичного DNS-сервера. Поле является обязательным, только в том случае, если ns1 - собственный DNS-сервер регистрируемого домена.
ns2ipIP-адрес для вторичного DNS-сервера. Поле является обязательным, только в том случае, если ns2 - собственный DNS-сервер регистрируемого домена.
ns3ipIP-адрес для третьего DNS-сервера. Поле является обязательным, только в том случае, если ns3 - собственный DNS-сервер регистрируемого домена.
ns4ipIP-адрес для четвертого DNS-сервера. Поле является обязательным, только в том случае, если ns4 - собственный DNS-сервер регистрируемого домена.
licenseНомер свидетельства ТМ. Поле может быть как обязательным, так и нет, в зависимости от настроек доменной зоны.
useridID клиента для которого необходимо зарегистрировать домен. Поле не используется при работе под обычным клиентом и является обязательным при работе под админом.
Дополнительные поля (для доменов регистрируемых через NIC.KZ)
fieldArray[regPurpose]Цели использования. Обязательное поле.
fieldArray[srvlocCity]Месторасположение сервера (город). Обязательное поле.
fieldArray[srvlocSp]Месторасположение сервера (область/штат). Обязательное поле.
fieldArray[srvlocStreet]Месторасположение сервера (адрес). Обязательное поле.

В случае успешного выполнения команды, ROOTPANEL.NET API вернет поля, перечисленные в таблице ниже.

Имя поляОписание
statusЕсли команда выполнена успешно, значение всегда будет SUCCESS.
domainДоменное имя, которое было зарегистрировано.
periodПериод на который было зарегистрировано доменное имя.
profileidID профайла, который использовался при регистрации доменного имени.
defaultnsФлаг использования DNS-серверов компании. Если были использованы, то значение 1.
ns1Первичный DNS-сервер.
ns2Вторичный DNS-сервер.
ns3Третий DNS-сервер. Поле будет возвращено только в случае, если для него установлено значение.
ns4Четвертый DNS-сервер. Поле будет возвращено только в случае, если для него установлено значение.
ns1ipIP-адрес первичного DNS-сервера. Поле будет возвращено только в случае, если для него установлено значение.
ns2ipIP-адрес вторичного DNS-сервера. Поле будет возвращено только в случае, если для него установлено значение.
ns3ipIP-адрес третьего DNS-сервера. Поле будет возвращено только в случае, если для него установлено значение.
ns4ipIP-адрес четвертого DNS-сервера. Поле будет возвращено только в случае, если для него установлено значение.
balanceТекущий баланс пользователя.
costСтоимость регистрации домена.
currencyКод валюты в которой возвращены стоимость и баланс. Идентична валюте пользователя в биллинговой системе.

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

Эта команда служит для продления доменного имени. В качестве значения поля command для этой команды должно быть указано renewDomain.

В таблице ниже перечислены поля, используемые при продлении доменного имени.

Имя поляОписание
domainПолное доменное имя, которое необходимо продлить, например example.com. Допустимы алфавитно-цифровые символы и символ дефиса. Русские имена доменов указываются в кодировке utf-8.
periodПериод на который производится регистрация домена. Допустимые значения для данного поля по каждой доменной зоне можно увидеть здесь. Значение необходимо указывать в годах. Пример: 1.

В случае успешного выполнения команды, ROOTPANEL.NET API вернет поля, перечисленные в таблице ниже.

Имя поляОписание
statusЕсли команда выполнена успешно, значение всегда будет SUCCESS.
domainДоменное имя, которое было зарегистрировано.
periodПериод на который было зарегистрировано доменное имя.
balanceТекущий баланс пользователя.
costСтоимость регистрации домена.
currencyКод валюты в которой возвращены стоимость и баланс. Идентична валюте пользователя в биллинговой системе.

4.5. Изменение контактов для доменного имени

Эта команда служит для изменения контактов для доменного имени. В качестве значения поля command для этой команды должно быть указано updateDomainContacts.

В таблице ниже перечислены поля, используемые при изменении контактов для доменного имени.

Имя поляОписание
domainПолное доменное имя, например example.com. Допустимы алфавитно-цифровые символы и символ дефиса. Русские имена доменов указываются в кодировке utf-8.
profileidID профайла, возвращаемый командой createProfile, данные из которого необходимо использовать для изменения контактов владельца домена. Если не указано, то используется профайл по умолчанию для пользователя.

В случае успешного выполнения команды, ROOTPANEL.NET API вернет поля, перечисленные в таблице ниже.

Имя поляОписание
statusЕсли команда выполнена успешно, значение всегда будет SUCCESS.
domainДоменное имя, которое было зарегистрировано.

4.6. Получение DNS-серверов для доменного имени

Эта команда служит для получения DNS-серверов для доменного имени. В качестве значения поля command для этой команды должно быть указано getDNS.

В таблице ниже перечислены поля, используемые при получение DNS-серверов.

Имя поляОписание
domainПолное доменное имя, например example.com. Допустимы алфавитно-цифровые символы и символ дефиса. Русские имена доменов указываются в кодировке utf-8.

В случае успешного выполнения команды, ROOTPANEL.NET API вернет поля, перечисленные в таблице ниже.

Имя поляОписание
statusЕсли команда выполнена успешно, значение всегда будет SUCCESS.
domainДоменное имя для которого получаем DNS-сервера.
ns1Первичный DNS-сервер.
ns2Вторичный DNS-сервер.
ns3Третий DNS-сервер. Поле будет возвращено только в случае, если для него установлено значение.
ns4Четвертый DNS-сервер. Поле будет возвращено только в случае, если для него установлено значение.
ns1ipIP-адрес первичного DNS-сервера. Поле будет возвращено только в случае, если для него установлено значение.
ns2ipIP-адрес вторичного DNS-сервера. Поле будет возвращено только в случае, если для него установлено значение.
ns3ipIP-адрес третьего DNS-сервера. Поле будет возвращено только в случае, если для него установлено значение.
ns4ipIP-адрес четвертого DNS-сервера. Поле будет возвращено только в случае, если для него установлено значение.

4.7. Изменение DNS-серверов для доменного имени


Эта команда служит для изменения DNS-серверов для доменного имени. В качестве значения поля command для этой команды должно быть указано updateDNS.

В таблице ниже перечислены поля, используемые при изменении DNS-серверов.

Имя поляОписание
domainПолное доменное имя, например example.com. Допустимы алфавитно-цифровые символы и символ дефиса. Русские имена доменов указываются в кодировке utf-8.
defaultns1 - использовать DNS-сервера компании (данная возможность может быть отключена)
0 - указать собственные DNS-сервера.
ns1Первичный DNS-сервер. Поле является обязательным, если не указано использование DNS-серверов компании.
ns2Вторичный DNS-сервер. Поле является обязательным, если не указано использование DNS-серверов компании.
ns3Третий DNS-сервер. Поле не обязательное.
ns4Четвертый DNS-сервер. Поле не обязательное.
ns1ipIP-адрес для первичного DNS-сервера. Поле является обязательным, только в том случае, если ns1 - собственный DNS-сервер регистрируемого домена.
ns2ipIP-адрес для вторичного DNS-сервера. Поле является обязательным, только в том случае, если ns2 - собственный DNS-сервер регистрируемого домена.
ns3ipIP-адрес для третьего DNS-сервера. Поле является обязательным, только в том случае, если ns3 - собственный DNS-сервер регистрируемого домена.
ns4ipIP-адрес для четвертого DNS-сервера. Поле является обязательным, только в том случае, если ns4 - собственный DNS-сервер регистрируемого домена.

В случае успешного выполнения команды, ROOTPANEL.NET API вернет поля, перечисленные в таблице ниже.

Имя поляОписание
statusЕсли команда выполнена успешно, значение всегда будет SUCCESS.
domainДоменное имя, которое было зарегистрировано.
defaultnsФлаг использования DNS-серверов компании. Если были использованы, то значение 1.
ns1Первичный DNS-сервер.
ns2Вторичный DNS-сервер.
ns3Третий DNS-сервер. Поле будет возвращено только в случае, если для него установлено значение.
ns4Четвертый DNS-сервер. Поле будет возвращено только в случае, если для него установлено значение.
ns1ipIP-адрес первичного DNS-сервера. Поле будет возвращено только в случае, если для него установлено значение.
ns2ipIP-адрес вторичного DNS-сервера. Поле будет возвращено только в случае, если для него установлено значение.
ns3ipIP-адрес третьего DNS-сервера. Поле будет возвращено только в случае, если для него установлено значение.
ns4ipIP-адрес четвертого DNS-сервера. Поле будет возвращено только в случае, если для него установлено значение.

4.8. Получение списка областей для страны

Эта команда служит для получения списка корректных областей для страны. В качестве значения поля command для этой команды должно быть указано getAvailOblast.

В таблице ниже перечислены поля, используемые при получении списка областей для страны.

Имя поляОписание
countryДвухбуквенный ISO-код страны.
Пример: UA

В случае успешного выполнения команды, ROOTPANEL.NET API вернет поля, перечисленные в таблице ниже.

Имя поляОписание
statusЕсли команда выполнена успешно, значение всегда будет SUCCESS.
Успешное выполнение команды возможно только в том случае, если в системе для страны заданы области, которые необходимо использовать.
countryДвухбуквенный ISO-код страны.
oblastМассив полей, содержащих в себе корректные названия областей для страны.

4.9. Получение списка регистраторов для доменной зоны

Эта команда служит для получения списка доступных регистраторов для доменной зоны. В качестве значения поля command для этой команды должно быть указано getAvailRegistrators.

В таблице ниже перечислены поля, используемые при получении списка регистраторов для доменной зоны.

Имя поляОписание
zoneДоменная зона без точки в начале.
Пример: ru

В случае успешного выполнения команды, ROOTPANEL.NET API вернет поля, перечисленные в таблице ниже.

Имя поляОписание
statusЕсли команда выполнена успешно, значение всегда будет SUCCESS.
Успешное выполнение команды возможно только в том случае, если в системе для доменной зоны включена возможность выбора регистратора.
registratorsВ данном поле возвращается массив полей. Некоторые поля массива в свою очередь так же являются массивами и содержит в себе другие поля:

registratorid - ID регистратора
registratorname - название регистратора
registratorisdefault - если 1, то данный регистратор является регистратором по умолчанию для доменной зоны
zoneregcost - стоимость регистрации
zonerenewcost - стоимость продления
zoneregperiod - доступный срок регистрации
zonerenewperiod - доступный срок продления
currency - код валюты в которой указана стоимость

Если для доменной зоны разрешен трансфер, то выводятся дополнительные поля:

zonetransfercost - стоимость трансфера
zonetransferneedauthcode - если 1, то необходимо указать AUTH-CODE при оформлении заказа

4.10. Получение статуса регистрации доменного имени


Эта команда служит для получения статуса регистрации доменного имени. В качестве значения поля command для этой команды должно быть указано getDomainStatus.

В таблице ниже перечислены поля, используемые при получение статуса.

Имя поляОписание
domainПолное доменное имя, например example.com. Допустимы алфавитно-цифровые символы и символ дефиса. Русские имена доменов указываются в кодировке utf-8.

В случае успешного выполнения команды, ROOTPANEL.NET API вернет поля, перечисленные в таблице ниже.

Имя поляОписание
statusЕсли команда выполнена успешно, значение всегда будет SUCCESS.
domainДоменное имя для которого получаем статус.
domainStatusСтаутс регистрации доменного имени. Возможные значения:

unregistered - домен не зарегистрирован (не активен)
registered - домен зарегистрирован (активен)
expired - домен просрочен (не активен)
suspended - домен приостановлен (не активен)
inprocess - домен находится в процессе регистрации
todateДата до которой зарегистрировано доменное имя. Доступно только для статусов registered, suspended, expired
Пример: 20.07.1983
profileidID профайла к которому привязано доменное имя.

4.11. Получение данных профайла

Эта команда служит для получения данных профайла (контакта) в биллинговой системе. В качестве значения поля command для этой команды должно быть указано getProfile.

В таблице ниже перечислены поля, используемые при получении данных профайла.

Имя поляОписание
profileidID профайла, возвращаемый командой createProfile.
Если не указать, то будет получен профайл по умолчанию для пользователя.
domainДомен для владельца которого необходимо получить данные профайла. Поле не используется при работе под обычным клиентом и является не обязательным при работе под админом.
useridID клиента для которого необходимо получить данные профайла. Поле не используется при работе под обычным клиентом и является обязательным при работе под админом если не указан domain.

В случае успешного выполнения команды, ROOTPANEL.NET API вернет поля, перечисленные в таблице ниже.

Имя поляОписание
statusЕсли команда выполнена успешно, значение всегда будет SUCCESS.
profileidID профайла.
fieldsМассив полей профайла, описанных в разделе 4.1..

4.12. Получение суммы внутреннего баланса пользователя

Эта команда служит для получения суммы внутреннего баланса пользователя биллинговой системы. В качестве значения поля command для этой команды должно быть указано getBalance.

В таблице ниже перечислены поля, используемые при получение суммы внутреннего баланса.

Имя поляОписание
domainOДомен для владельца которого необходимо получить сумму внутреннего баланса. Поле не используется при работе под обычным клиентом и является не обязательным при работе под админом.
useridOID клиента для которого необходимо получить сумму внутреннего баланса. Поле не используется при работе под обычным клиентом и является обязательным при работе под админом если не указан domain.

В случае успешного выполнения команды, ROOTPANEL.NET API вернет поля, перечисленные в таблице ниже.

Имя поляОписание
statusЕсли команда выполнена успешно, значение всегда будет SUCCESS.
balanceТекущий баланс пользователя.
currencyКод валюты в которой возвращен баланс. Идентична валюте пользователя в биллинговой системе.

4.13. Трансфер доменного имени

Эта команда служит для запроса на трансфер доменного имени от другого регистратора. В качестве значения поля command для этой команды должно быть указано transferDomain.

В таблице ниже перечислены поля, используемые при трансфере доменного имени.

Имя поляОписание
domainПолное доменное имя, которое необходимо зарегистрировать, например example.com. Допустимы алфавитно-цифровые символы и символ дефиса. Русские имена доменов указываются в кодировке utf-8.
registratoridID регистратора. Поле используется только в том случае, если для доменной зоны доступны несколько регистраторов. Если не задано, используется регистратор по умолчанию.
Список доступных регистраторов для доменной зоны можно получить, выполнив команду, описанную в разделе 4.9.
periodПериод на который производится регистрация домена. Допустимые значения для данного поля по каждой доменной зоне можно увидеть здесь. Значение необходимо указывать в годах. Пример: 1.
authcodeAUTH-CODE доменного имени. Поле может быть как обязательным, так и нет, в зависимости от настроек доменной зоны.
profileidID профайла, возвращаемый командой createProfile, данные из которого необходимо использовать для создания контактов владельца домена. Если не указано, то используется профайл по умолчанию для пользователя.
defaultns1 - использовать DNS-сервера компании (данная возможность может быть отключена)
0 - указать собственные DNS-сервера.
ns1Первичный DNS-сервер. Поле является обязательным, если не указано использование DNS-серверов компании.
ns2Вторичный DNS-сервер. Поле является обязательным, если не указано использование DNS-серверов компании.
ns3Третий DNS-сервер. Поле не обязательное.
ns4Четвертый DNS-сервер. Поле не обязательное.
licenseНомер свидетельства ТМ. Поле может быть как обязательным, так и нет, в зависимости от настроек доменной зоны.
useridID клиента для которого необходимо выполнить трансфер домена. Поле не используется при работе под обычным клиентом и является обязательным при работе под админом.
Дополнительные поля (для доменов регистрируемых через NIC.KZ)
fieldArray[regPurpose]Цели использования. Обязательное поле.
fieldArray[srvlocCity]Месторасположение сервера (город). Обязательное поле.
fieldArray[srvlocSp]Месторасположение сервера (область/штат). Обязательное поле.
fieldArray[srvlocStreet]Месторасположение сервера (адрес). Обязательное поле.

В случае успешного выполнения команды, ROOTPANEL.NET API вернет поля, перечисленные в таблице ниже.

Имя поляОписание
statusЕсли команда выполнена успешно, значение всегда будет SUCCESS.
domainДоменное имя, которое было зарегистрировано.
periodПериод на который было зарегистрировано доменное имя.
profileidID профайла, который использовался при регистрации доменного имени.
defaultnsФлаг использования DNS-серверов компании. Если были использованы, то значение 1.
ns1Первичный DNS-сервер.
ns2Вторичный DNS-сервер.
ns3Третий DNS-сервер. Поле будет возвращено только в случае, если для него установлено значение.
ns4Четвертый DNS-сервер. Поле будет возвращено только в случае, если для него установлено значение.
balanceТекущий баланс пользователя.
costСтоимость регистрации домена.
currencyКод валюты в которой возвращены стоимость и баланс. Идентична валюте пользователя в биллинговой системе.

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

Эта команда служит для проверки доступности доменного имени для регистрации. В качестве значения поля command для этой команды должно быть указано checkDomain.

В таблице ниже перечислены поля, используемые при проверке доступности доменного имени.

Имя поляОписание
domainПолное доменное имя, например example.com. Допустимы алфавитно-цифровые символы и символ дефиса. Русские имена доменов указываются в кодировке utf-8.

В случае успешного выполнения команды, ROOTPANEL.NET API вернет поля, перечисленные в таблице ниже.

Имя поляОписание
statusЕсли команда выполнена успешно, значение всегда будет SUCCESS.
domainПроверяемое доменное имя.
avail1 - доменное имя доступно для регистрации
0 - доменное имя не доступно для регистрации

4.15. Получение списка доступных доменных зон

Эта команда служит для получения списка доступных доменных зон. В качестве значения поля command для этой команды должно быть указано getAvailZones.

В случае успешного выполнения команды, ROOTPANEL.NET API вернет поля, перечисленные в таблице ниже.

Имя поляОписание
statusЕсли команда выполнена успешно, значение всегда будет SUCCESS.
zonesВ данном поле возвращается массив полей. Некоторые поля массива в свою очередь так же являются массивами и содержит в себе другие поля:

id - ID доменной зоны
zone - доменная зона
registratorid - ID регистратора
registratorname - название регистратора
regcost - стоимость регистрации
renewcost - стоимость продления
regperiod - доступный срок регистрации
renewperiod - доступный срок продления
currency - код валюты в которой указана стоимость

Если для доменной зоны разрешен трансфер, то выводятся дополнительные поля:

transfercost - стоимость трансфера
transferneedauthcode - если 1, то необходимо указать AUTH-CODE при оформлении заказа