Данная документация содержит описание API-методов для управления доменными именами. API предоставляет возможности проверки доступности, регистрации, продления, трансфера и управления доменами.
Аутентификация
Все запросы к API должны содержать заголовок авторизации в формате Basic Authentication:
Authorization: Basic base64_encode("client:$token")
Где:
client
- всегда используется значение "client"$token
- ваш персональный токен доступа
Заголовок Authorization
должен быть включен во все запросы к API.
Содержание
- Проверка доступности домена
- Регистрация домена
- Создание контактного шаблона
- Получение контактных шаблонов
- Обновление контактного шаблона
- Продление домена
- Получение информации о домене
- Получение кода трансфера
- Трансфер домена
- Обновление периода домена
- Установка NS серверов
- Скрыть WHOIS
- Показать WHOIS
- Заблокировать домен
- Разблокировать домен
- Получение общего баланса
1. Проверка доступности домена
Проверяет доступность домена для регистрации.
Тело запроса:
{
"sld": "example-domain-2025",
"tld": ".com"
}
Пример успешного ответа:
{
"result": true,
"error": null
}
Пример ответа при недоступности домена:
{
"result": null,
"error": {
"message": "Domain is not available.",
"code": 9999
}
}
Параметр | Описание | Обязательный |
---|---|---|
sld | Имя домена второго уровня (без расширения) | Да |
tld | Доменное расширение (с точкой) | Да |
2. Регистрация домена
Регистрирует новый домен с указанными параметрами и контактными данными.
Тело запроса:
{
"domain": "example-shop-2025.store",
"register_years": "1",
"contactCustomer": {
"client_type": "l",
"tax_id": "123456789",
"org_name": "Example Corporation",
"bank_name": "Example Bank",
"bank_code": "EXAMPLEBANK123",
"passport_number": "AB123456",
"passport_date": "2020-01-01",
"passport_place": "Moscow",
"first_name": "Ivan",
"last_name": "Petrov",
"email": "ivan.petrov@example.com",
"state": "Moscow",
"phone_code": "7",
"phone": "9001234567",
"country": "RU",
"post_code": "123456",
"city": "Moscow",
"address": "Lenina str., 1, office 123"
},
"contactTech": {
"client_type": "l",
"tax_id": "123456789",
"org_name": "Example Corporation",
"bank_name": "Example Bank",
"bank_code": "EXAMPLEBANK123",
"passport_number": "AB123456",
"passport_date": "2020-01-01",
"passport_place": "Moscow",
"first_name": "Ivan",
"last_name": "Petrov",
"email": "tech@example.com",
"state": "Moscow",
"phone_code": "7",
"phone": "9001234567",
"country": "RU",
"post_code": "123456",
"city": "Moscow",
"address": "Lenina str., 1, office 123"
},
"contactBilling": {
"client_type": "l",
"tax_id": "123456789",
"org_name": "Example Corporation",
"bank_name": "Example Bank",
"bank_code": "EXAMPLEBANK123",
"passport_number": "AB123456",
"passport_date": "2020-01-01",
"passport_place": "Moscow",
"first_name": "Ivan",
"last_name": "Petrov",
"email": "billing@example.com",
"state": "Moscow",
"phone_code": "7",
"phone": "9001234567",
"country": "RU",
"post_code": "123456",
"city": "Moscow",
"address": "Lenina str., 1, office 123"
},
"contactAdmin": {
"client_type": "l",
"tax_id": "123456789",
"org_name": "Example Corporation",
"bank_name": "Example Bank",
"bank_code": "EXAMPLEBANK123",
"passport_number": "AB123456",
"passport_date": "2020-01-01",
"passport_place": "Moscow",
"first_name": "Ivan",
"last_name": "Petrov",
"email": "admin@example.com",
"state": "Moscow",
"phone_code": "7",
"phone": "9001234567",
"country": "RU",
"post_code": "123456",
"city": "Moscow",
"address": "Lenina str., 1, office 123"
},
"ns1": "ns1.example.com",
"ns2": "ns2.example.com"
}
Пример успешного ответа:
{
"result": true,
"error": null
}
Пример ответа при ошибке:
{
"result": null,
"error": {
"message": "Domain is not available.",
"code": 9999
}
}
Примечание: Вместо заполнения полной информации в каждом контактном блоке, можно использовать существующий контактный шаблон, указав его ID:
"contactCustomer": {
"contact_id": "107"
}
Или использовать данные клиента:
"contactTech": {
"use_customer": "1"
}
Параметр | Описание | Обязательный |
---|---|---|
domain | Полное имя домена включая расширение | Да |
register_years | Срок регистрации в годах | Да |
contactCustomer | Контактные данные клиента | Да |
contactTech | Технические контактные данные | Да |
contactBilling | Платежные контактные данные | Да |
contactAdmin | Административные контактные данные | Да |
ns1, ns2 | Первичный и вторичный NS-серверы | Да |
dnssec | Флаг использования DNSSEC (1 - включено) | Нет |
3. Создание контактного шаблона
Создает новый контактный шаблон для повторного использования при регистрации или управлении доменами.
Тело запроса:
{
"client_type": "l",
"tax_id": "987654321",
"org_name": "Digital Solutions LLC",
"bank_name": "International Bank",
"bank_code": "INTBANK123",
"passport_number": "CD987654",
"passport_date": "2022-03-15",
"passport_place": "New York",
"first_name": "John",
"last_name": "Smith",
"email": "john.smith@digitalsolutions.com",
"state": "NY",
"phone_code": "1",
"phone": "2125551234",
"country": "US",
"post_code": "10001",
"city": "New York",
"address": "123 Broadway St, Suite 456"
}
Пример успешного ответа:
{
"result": {
"id": 108,
"client_type": "l",
"tax_id": "987654321",
"org_name": "Digital Solutions LLC",
"bank_name": "International Bank",
"bank_code": "INTBANK123",
"passport_number": "CD987654",
"passport_date": "2022-03-15",
"passport_place": "New York",
"first_name": "John",
"last_name": "Smith",
"email": "john.smith@digitalsolutions.com",
"phone_code": "1",
"phone": "2125551234",
"country": "United States",
"country_code": "US",
"state": "NY",
"post_code": "10001",
"city": "New York",
"address": "123 Broadway St, Suite 456",
"iduzurl": "",
"nick": ""
},
"error": null
}
Пример ответа при ошибке:
{
"result": null,
"error": {
"message": "Invalid email format",
"code": 9999
}
}
Параметр | Описание | Обязательный |
---|---|---|
client_type | Тип клиента (l - юридическое лицо, p - физическое лицо) | Да |
tax_id | Идентификационный номер налогоплательщика | Да (для юр. лиц) |
org_name | Название организации | Да (для юр. лиц) |
bank_name | Название банка | Да (для юр. лиц) |
bank_code | Код банка | Да (для юр. лиц) |
passport_number | Номер паспорта | Да (для физ. лиц) |
passport_date | Дата выдачи паспорта | Да (для физ. лиц) |
passport_place | Место выдачи паспорта | Да (для физ. лиц) |
first_name | Имя | Да |
last_name | Фамилия | Да |
Электронная почта | Да | |
state | Регион/штат | Нет |
phone_code | Код страны телефона | Да |
phone | Телефонный номер | Да |
country | Код страны (ISO) | Да |
post_code | Почтовый индекс | Да |
city | Город | Да |
address | Адрес | Да |
4. Получение контактных шаблонов
Получает список всех сохраненных контактных шаблонов.
Запрос не требует тела
Пример ответа:
{
"result": [
{
"id": 2,
"client_type": "l",
"tax_id": "1",
"org_name": "Example Corporation",
"bank_name": "Example Bank",
"bank_code": "EXAMPLEBANK123",
"passport_number": "",
"passport_date": "",
"passport_place": "",
"first_name": "Ivan",
"last_name": "Ivanov",
"email": "ivan@example.com",
"phone_code": "998",
"phone": "935311050",
"country": "Uzbekistan",
"country_code": "UZ",
"state": "UZ",
"post_code": "100000",
"city": "Tashkent",
"address": "Example Street 123",
"iduzurl": "",
"nick": ""
},
{
"id": 108,
"client_type": "l",
"tax_id": "987654321",
"org_name": "Digital Solutions LLC",
"bank_name": "International Bank",
"bank_code": "INTBANK123",
"passport_number": "CD987654",
"passport_date": "2022-03-15",
"passport_place": "New York",
"first_name": "John",
"last_name": "Smith",
"email": "john.smith@digitalsolutions.com",
"phone_code": "1",
"phone": "2125551234",
"country": "United States",
"country_code": "US",
"state": "NY",
"post_code": "10001",
"city": "New York",
"address": "123 Broadway St, Suite 456",
"iduzurl": "",
"nick": ""
}
],
"error": null
}
5. Обновление контактного шаблона
Обновляет существующий контактный шаблон.
Тело запроса:
{
"template_id": 108,
"client_type": "l",
"tax_id": "987654321",
"org_name": "Digital Solutions International",
"bank_name": "Global Bank",
"bank_code": "GLOBBANK456",
"passport_number": "",
"passport_date": "",
"passport_place": "",
"first_name": "John",
"last_name": "Smith",
"email": "john.smith@digitalsolutions.com",
"state": "California",
"phone_code": "1",
"phone": "4155551234",
"country": "US",
"post_code": "94107",
"city": "San Francisco",
"address": "555 Market St, Suite 789"
}
Пример успешного ответа:
{
"result": {
"id": 108,
"client_type": "l",
"tax_id": "987654321",
"org_name": "Digital Solutions International",
"bank_name": "Global Bank",
"bank_code": "GLOBBANK456",
"passport_number": "",
"passport_date": "",
"passport_place": "",
"first_name": "John",
"last_name": "Smith",
"email": "john.smith@digitalsolutions.com",
"phone_code": "1",
"phone": "4155551234",
"country": "United States",
"country_code": "US",
"state": "California",
"post_code": "94107",
"city": "San Francisco",
"address": "555 Market St, Suite 789",
"iduzurl": "",
"nick": ""
},
"error": null
}
Параметр | Описание | Обязательный |
---|---|---|
template_id | ID шаблона, который нужно обновить | Да |
Остальные параметры аналогичны созданию контактного шаблона |
6. Продление домена
Продлевает срок регистрации домена.
Тело запроса:
{
"domain_id": "16"
}
Пример успешного ответа:
{
"result": true,
"error": null
}
Пример ответа при ошибке:
{
"result": null,
"error": {
"message": "Domain not found",
"code": 9999
}
}
Параметр | Описание | Обязательный |
---|---|---|
domain_id | Идентификатор домена | Да |
7. Получение информации о домене
Получает подробную информацию о домене.
Тело запроса:
{
"domain": "example-domain.com"
}
Пример успешного ответа:
{
"result": {
"domain": "example-domain.com",
"domain_id": 16,
"sld": "example-domain",
"tld": ".com",
"name_servers": {
"1": {
"address": "ns1.example.com",
"ip": ""
},
"2": {
"address": "ns2.example.com",
"ip": ""
},
"3": {
"address": "",
"ip": ""
},
"4": {
"address": "",
"ip": ""
},
"5": {
"address": "",
"ip": ""
}
},
"registrar": {
"id": 2,
"client_type": "l",
"tax_id": "123456789",
"org_name": "Example Corporation",
"bank_name": "Example Bank",
"bank_code": "EXAMPLEBANK123",
"passport_number": "",
"passport_date": "",
"passport_place": "",
"first_name": "Ivan",
"last_name": "Petrov",
"email": "ivan.petrov@example.com",
"phone_code": "7",
"phone": "9001234567",
"country": "Russian Federation",
"country_code": "RU",
"state": "Moscow",
"post_code": "123456",
"city": "Moscow",
"address": "Lenina str., 1, office 123",
"iduzurl": "",
"nick": ""
},
"tech": {
"id": 2,
"client_type": "l",
"tax_id": "123456789",
"org_name": "Example Corporation",
"bank_name": "Example Bank",
"bank_code": "EXAMPLEBANK123",
"passport_number": "",
"passport_date": "",
"passport_place": "",
"first_name": "Ivan",
"last_name": "Petrov",
"email": "tech@example.com",
"phone_code": "7",
"phone": "9001234567",
"country": "Russian Federation",
"country_code": "RU",
"state": "Moscow",
"post_code": "123456",
"city": "Moscow",
"address": "Lenina str., 1, office 123",
"iduzurl": "",
"nick": ""
},
"billing": {
"id": 2,
"client_type": "l",
"tax_id": "123456789",
"org_name": "Example Corporation",
"bank_name": "Example Bank",
"bank_code": "EXAMPLEBANK123",
"passport_number": "",
"passport_date": "",
"passport_place": "",
"first_name": "Ivan",
"last_name": "Petrov",
"email": "billing@example.com",
"phone_code": "7",
"phone": "9001234567",
"country": "Russian Federation",
"country_code": "RU",
"state": "Moscow",
"post_code": "123456",
"city": "Moscow",
"address": "Lenina str., 1, office 123",
"iduzurl": "",
"nick": ""
},
"admin": {
"id": 2,
"client_type": "l",
"tax_id": "123456789",
"org_name": "Example Corporation",
"bank_name": "Example Bank",
"bank_code": "EXAMPLEBANK123",
"passport_number": "",
"passport_date": "",
"passport_place": "",
"first_name": "Ivan",
"last_name": "Petrov",
"email": "admin@example.com",
"phone_code": "7",
"phone": "9001234567",
"country": "Russian Federation",
"country_code": "RU",
"state": "Moscow",
"post_code": "123456",
"city": "Moscow",
"address": "Lenina str., 1, office 123",
"iduzurl": "",
"nick": ""
},
"period": 1,
"dnssec": 0,
"status": "active",
"privacy": 0,
"locked": 0,
"hold": 0,
"update_prohibited": 0,
"registered_at": "2025-04-22 06:41:58",
"expires_at": "2026-04-22 06:41:58"
},
"error": null
}
Пример ответа при ошибке:
{
"result": null,
"error": {
"message": "Domain not found",
"code": 9999
}
}
Параметр | Описание | Обязательный |
---|---|---|
domain | Полное имя домена включая расширение | Да |
8. Получение кода трансфера
Получает код авторизации (EPP/AUTH код) для трансфера домена к другому регистратору.
Тело запроса:
{
"domain_id": "90"
}
Пример успешного ответа:
{
"result": "aA1My8=+IEIA****",
"error": null
}
Пример ответа при ошибке:
{
"result": null,
"error": {
"message": "Domain not found",
"code": 9999
}
}
Параметр | Описание | Обязательный |
---|---|---|
domain_id | Идентификатор домена | Да |
9. Трансфер домена
Инициирует трансфер домена от другого регистратора.
Тело запроса:
{
"transfer_sld": "example-domain",
"transfer_tld": ".com",
"transfer_code": "aA1My8=+IEIA****"
}
Пример успешного ответа:
{
"result": true,
"error": null
}
Пример ответа при ошибке:
{
"result": null,
"error": {
"message": "Invalid transfer code",
"code": 9999
}
}
Параметр | Описание | Обязательный |
---|---|---|
transfer_sld | Имя домена второго уровня (без расширения) | Да |
transfer_tld | Доменное расширение (с точкой) | Да |
transfer_code | Код авторизации трансфера (EPP/AUTH код) | Да |
10. Обновление периода домена
Изменяет срок регистрации домена.
Тело запроса:
{
"domain_id": "16",
"period": 2
}
Пример успешного ответа:
{
"result": true,
"error": null
}
Пример ответа при ошибке:
{
"result": null,
"error": {
"message": "Invalid period value",
"code": 9999
}
}
Параметр | Описание | Обязательный |
---|---|---|
domain_id | Идентификатор домена | Да |
period | Новый срок регистрации в годах | Да |
11. Установка NS серверов
Изменяет настройки серверов имен для домена.
Тело запроса:
{
"ns1": {
"address": "ns1.newprovider.com",
"ip": "203.0.113.1"
},
"ns2": {
"address": "ns2.newprovider.com",
"ip": "203.0.113.2"
},
"ns3": {
"address": "ns3.newprovider.com",
"ip": "203.0.113.3"
},
"ns4": {
"address": "",
"ip": ""
},
"ns5": {
"address": "",
"ip": ""
},
"domain_id": 90
}
Пример успешного ответа:
{
"result": true,
"error": null
}
Пример ответа при ошибке:
{
"result": null,
"error": {
"message": "Invalid nameserver format",
"code": 9999
}
}
Примечание: Можно указать до 10 NS-серверов (ns1-ns10). IP-адреса необязательны для большинства доменных зон, но могут потребоваться для некоторых специфических TLD.
Параметр | Описание | Обязательный |
---|---|---|
ns1-ns10 | Объекты с данными NS-серверов | ns1-ns2 обязательны |
ns*.address | Имя NS-сервера | Да (для указанных серверов) |
ns*.ip | IP-адрес NS-сервера | Нет |
domain_id | Идентификатор домена | Да |
12. Скрыть WHOIS
Включает защиту персональных данных в WHOIS (Privacy Protection).
Тело запроса:
{
"domain_id": 90
}
Пример успешного ответа:
{
"result": true,
"error": null
}
Пример ответа при ошибке:
{
"result": null,
"error": {
"message": "Domain not found",
"code": 9999
}
}
Параметр | Описание | Обязательный |
---|---|---|
domain_id | Идентификатор домена | Да |
13. Показать WHOIS
Отключает защиту персональных данных в WHOIS (Privacy Protection).
Тело запроса:
{
"domain_id": 90
}
Пример успешного ответа:
{
"result": true,
"error": null
}
Пример ответа при ошибке:
{
"result": null,
"error": {
"message": "Domain not found",
"code": 9999
}
}
Параметр | Описание | Обязательный |
---|---|---|
domain_id | Идентификатор домена | Да |
14. Заблокировать домен
Блокирует домен от трансфера к другому регистратору (устанавливает статус clientTransferProhibited).
Тело запроса:
{
"domain_id": 90
}
Пример успешного ответа:
{
"result": true,
"error": null
}
Пример ответа при ошибке:
{
"result": null,
"error": {
"message": "Domain not found",
"code": 9999
}
}
Параметр | Описание | Обязательный |
---|---|---|
domain_id | Идентификатор домена | Да |
15. Разблокировать домен
Разблокирует домен для трансфера к другому регистратору (снимает статус clientTransferProhibited).
Тело запроса:
{
"domain_id": 90
}
Пример успешного ответа:
{
"result": true,
"error": null
}
Пример ответа при ошибке:
{
"result": null,
"error": {
"message": "Domain not found",
"code": 9999
}
}
Параметр | Описание | Обязательный |
---|---|---|
domain_id | Идентификатор домена | Да |
16. Получение общего баланса
Получает информацию о текущем балансе клиента.
Запрос не требует тела
Пример успешного ответа:
{
"result": 1250.50,
"error": null
}
Пример ответа при ошибке:
{
"result": null,
"error": {
"message": "Authentication failed",
"code": 9999
}
}
Коды ошибок и обработка ответов
Все методы API возвращают ответ в формате JSON со следующей структурой:
{
"result": [данные ответа или true в случае успеха],
"error": null
}
В случае ошибки поле result
будет содержать null
, а поле error
будет содержать информацию об ошибке:
{
"result": null,
"error": {
"message": "Текст сообщения об ошибке",
"code": 9999
}
}
Примечание: В данной документации используется общий код ошибки 9999. В реальных ответах API каждая ошибка будет иметь свой уникальный код, который поможет точно идентифицировать причину проблемы.
Аутентификация
Для доступа к API необходимо использовать аутентификацию. Метод аутентификации не указан в данной документации, но обычно используется один из следующих способов:
- API ключ в заголовке запроса
- Базовая HTTP аутентификация
- OAuth 2.0 токен доступа
Важно: Перед началом использования API необходимо получить учетные данные для аутентификации у службы поддержки или через панель управления аккаунтом.
Ограничения и рекомендации
- Рекомендуется не превышать 100 запросов в минуту.
- Все запросы и ответы должны использовать кодировку UTF-8.
- Даты представлены в формате "YYYY-MM-DD HH:MM:SS" в часовом поясе UTC.
- Идентификаторы доменов и шаблонов контактов должны передаваться как строки, даже если они содержат только цифры.