Описание API системы регистрации доменов REG.RU

Содержание

  1. Введение
  2. Описание HTTP-Post шлюза
  3. Отправка HTTP-Post запросов
  4. Операции с доменами
  5. Операции по управлению DNS-зоной домена
  6. Операции по работе с пользователями
  7. Прочие операции
  8. Операции с сервисам
  9. Примеры
  10. Советы по эффективному использованию Reg.API

1. Введение

Это справочное руководство описывает HTTP-шлюз к системе распределённой регистрации Reg.Ru (далее RegruSRS) версии 1.
HTTP-шлюз — это синхронный итнтерфейс для взаимодействия с системой регистрации RegRuSRS, позволяющий осуществлять операции с с доменами, услугами и папками.

REG.API версии 1, описанная в этом документе, в настоящий момент не является текущей и её развитие заморожено. Более новой версией является REG.API v2, которая активно развивается и в которую добавляются все новые функции.

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

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

Компания REG.RU предоставляет не только "боевой" доступ к HTTP-шлюзу для осуществления реальных операций, но также и тестовый доступ для отладки взаимодействия с системой RegRuSRS.

2.1. Реальный ("боевой")доступ

Запросы к HTTP-шлюзу должны направляться на URL

https://api.reg.ru/api/regru
или
http://api.reg.ru/api/regru (только для тестирования системы!)

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

Предупреждение:
Не устанавливайте для Ваших клиентов web-формы, содержащие Ваши авторизационные данные, т.к. клиенты могут легко узнать Ваш login и пароль. Для обеспечения безопасности, запросы должны отправляться программой на стороне сервера.

Все запросы должны удовлетворять спецификации HTTP/1.0 или HTTP/1.1, описанной в RFC 1945:

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

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

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

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

username: test
password: test

2.3. Ограничения по использованию интерфейса

При использовании интерфейса RegRuSRS клиентом должен быть соблюдён ряд ограничений.

  1. Количество запросов, отправляемых через шлюз одним пользователем, а также подаваемых с одного IP-адреса ограничено: может быть подано не более 1200 запросов в час. В случае превышения лимита — последующие заявки отклоняются на соответствующий период (1 час).
  2. Одновременная (параллельная) подача нескольких запросов одного пользователя изменяющих баланс счёта этого пользователя (операции такие как domain_create, domain_renew, service_create ) через шлюз запрещена. По остальным функциям ограничений на параллельные запросы нет.
  3. Создание чрезмерной нагрузки на оборудование Регистратора (посредством чрезмерно интенсивных запросов к интерфейсу или любым иным образом) является основанием для прекращения предоставления доступа к сервису. В случае, если чрезмерная нагрузка на оборудование повлекла за собой сбои в его работе, и, как следствие, прямые или косвенные убытки для Регистратора — Регистратор оставляет за собой право для юридического преследования лиц, ответственных за действия, приведшие к сбоям.

См. Советы по эффективному использованию Reg.API

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

3.1. Операции

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

Операция
(значение action)
Описание Примеры Разрешения
Операции с доменами (см. раздел 4)
domain_create Подать заявку на регистрацию домена gtld, ru_org, ru_pp Партнёр
domain_trans_in Подать заявку на перенос домена от другого регистратора gtld, ru, ru (Perl) Партнёр
domain_check Проверка доступности домена для регистрации Пример, Php Партнёр
domain_whois Получение данных WHOIS домена Пример Партнёр
domain_renew Продление регистрации домена Пример Партнёр
domain_update_nss Смена списка DNS-серверов домена. Установка/снятие делегирования с домена. Пример Партнёр
domain_update_contacts Смена данных владельца домена gtld, ru_org, ru_pp Партнёр
domain_delete Отмена регистрации домена Не реализовано Партнёр
domain_owner_change Смена владельца домена Не реализовано Партнёр
domain_partcontrol_grant Дать полномочия по управлению доменом другому пользователю Пример Партнёр
domain_partcontrol_revoke Забрать полномочия по управлению доменом от другого пользователя Пример Партнёр
domain_get_info Получение информации о домене Пример; Perl Польз.
domain_get_contacts Получение данных владельца домена Пример Польз.
domain_get_nss Получение списка DNS-серверов домена Пример Польз.
domain_list Получение списка зарегистрированных доменов Пример Польз.
domain_update_private_person_flag Смена имени владельца домена на 'Private person' Пример Партнёр
domain_ns_register Зарегистрировать DNS-сервер в NSI-registry (для .com, .net, .org) Не реализовано Партнёр
domain_ns_unregister Удалить регистрацию DNS-сервера из NSI-registry (для .com, .net, .org) Не реализовано Партнёр
domain_move_to_another_account Перенос домена на другой аккаунт Пример Партнёр
 
Операции по работе с зоной (см. раздел 5)
zone_add_rr Добавление ресурсной записи A, CNAME, MX, NS, TXT Партнёр
zone_rm_rr Удаление записи Пример Партнёр
zone_update Обновление зоны Пример Партнёр
zone_get_info Получение информации о зоне Пример Партнёр
 
Операции по работе с пользователем (см. раздел 6)
user_create Создание пользователя Пример VIP-партнёр
user_update_details Обновление анкеты пользователя ru_org, ru_pp VIP-партнёр
 
Прочие операции (см. раздел 7)
nop «Пустая» операция pass.auth sign.auth Все
balance_get Проверка баланса пользователя Пример Польз.
balance_refill Выписка счёта на предоплату (пополнение баланса) Пример Партнёр
change_pay_type Смена способа оплаты счета Пример Партнёр
delete_bill Удаление счёта Пример Партнёр
folder_create Создание папки Пример Польз.
tld_price_get Получение цен на услуги Пример Польз.
 
Операции с сервисами (см. раздел 8)
service_create Заказ нового сервиса Пример отсутствует Все

Пояснения по колонке "Разрешения":

Все
Любой пользователь или партнёр, в т.ч. с использованием полномочий тестового экканута
Польз.
Любой зарегистрированный пользователь
Тест
Пользователь 'test' (тестовый режим)
Партнёр
Партнёр, заключивший бумажный договор
VIP-партнёр
Партнёр, заключивший дополнительное соглашение
Вл.
Только владелец домена (владелец аккаунта, на котором зарегистрирован домен, для которого совершается операция)
ПЧУ
Пользователь, которому данный домен дан в частичное управление.

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

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

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

  • Значения всех полей, если не указано особо, являются строками.
  • Значения полей передаются в кодировке windows-1251.
  • Все требуемые поля должны присутствовать в запросе и должны содержать как минимум один символ.
  • Значения полей не должны превышать допустимую длину.
  • Названия параметров HTTP-запроса должны в точности соответствовать названиям полей с учётом регистра символов.
  • Некоторые поля могут быть "многострочными" (состоящими из нескольких строк, отделённых друг от друга символом возврата каретки). В примерах, приводимых в этом документе, символ возврата каретки обозначен последовательностью символов "\n".

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

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

Имя поля Макс. длина Описание
action 80 Определяет операцию, которая должна быть произведена, например domain_check
username 80 Имя пользователя (login) в системе регистрации
password 80 Пароль пользователя (password) в системе регистрации RegRuSRS.
Поля password и signature являются взаимоисключающими и не могут встерчаться в одном запросе. См. раздел 3.6.
signature 32 Подпись запроса к API. Используется в качестве замены пароля в методе аутентификации «по цифровой подписи».
Поля password и signature являются взаимоисключающими и не могут встерчаться в одном запросе. См. раздел 3.6.
timestamp 32 Временной штамп операции / номер транзакции. Произвольная строка максимально длиной 32 символа.
В случае, если данное поле присутствует в запросе, обеспечивается «уникальность транзакции« (уникальность запроса), т. е. все запросы с аналогичным значением поля timestamp будут отвергаться.
domain_name 67 Полное имя домена, с которым производится операция, например example.com. Максимальная длина - 67 символов (63 + 4). Допустимы алфавитно-цифровые символы и символ дефиса. Русские имена доменов указываются в кодировке windows-1251 (CP1251).
extended_message_lang 2 Язык расширенных сообщений об ошибках ('ru', 'en' либо не указывается). Подробности см. раздел 3.5
fail_if_no_money 1 Возвращать ошибку, если денег на лицевом счёте для исполнения заявки недостаточно. По умолчанию (если данный флаг не выставлен) заявка в системе создаётся, однако эта заявка будет исполнена только после выполнения операции «сменить способ оплаты счёта» через web-интерфейс системы
no_bill_notify 1 Не высылать уведомление по электронной почте о заказе.
По умолчанию для каждого нового заказа (любая операция по регистрации, переносу и продлению домена регистрируется как отдельный заказ в системе регистрации) отсылается уведомление на email, указанный в настройках аккаунта партнёра. Если выставлен флаг no_bill_notify — уведомление по email не отсылается.
point_of_sale 80 Любая строка, идентифицирующая систему / интернет-сайт, через который покупателем сделан заказ на данный домен. Необязательное поле. Пример: "regpanel.ru".

3.4. Общие сообщения об ошибках

Ниже перечислены сообщения об ошибках системы RegRuSRS, общие для всех операций:

Текст ошибки Описание
Ошибки аутентификации
Error: No username given Значение поля "username" не указано.
Error: Username/password Incorrect Такого пользователя не существует либо пароль пользователя указан неверно.
Error: Signature authentication failed Аутентификация по подписи запроса прошла неудачно. Значение цифровой подписи не совпадает с содержимым запроса.
Error: No authorization mechanism selected Механизм аутентификации не задан. Иными словами, не указаны ни пароль, ни подпись запроса.
Ошибки, связанные с именем домена
Error: domain_name is invalid Значение поля "domain_name" не указано или указано неверно: т.е. содержит недопустимые символы, превышает допустимую длину и т.п.
Error: <domain name> not found Домен не существует или информация WHOIS по этому домену ещё не доступна.
Error: Domain name <domain name> not found or not owned by you Указанный домен не найден в системе, либо принадлежит другому пользователю.
Прочие ошибки
Error: No action given Значение поля "action" не указано.
Error: Unknown action: <action> Неверный / несуществующий код операции (функции).
Error: The following fields are invalid: <fields list> Значения перечисленных полей неверны. Исправьте данные и повторите запрос.
Error: Timestamp is not unique Номер транзакции не уникален. Операция не выполнена.
Error: System Unavailable Шлюз RegRuSRS не доступен. Операция не была произведена и запрос должен быть подан повторно.
Error: Internal error\n<error msg> Внутренняя ошибка системы RegRuSRS. Пожалуйста, свяжитесь с REG.RU (support[at]reg[dot]ru) для решения проблемы.

3.5. Расширенные ответы системы

Если указано значение поля "extended_message_lang", система выдаёт расширенные сообщения об успешных операциях и ошибках на указанном языке ('ru' или 'en') Если поле "extended_message_lang" отсутствует в запросе, то расширенные сообщения не возвращаются.

Подробности о режиме расширенных сообщений:
В данном режиме поддерживаются многострочные сообщения о выполненных операциях и об ошибках. Первая строчка имеет строгий формат, описанный в этом документе в списке возможных ответов системы для каждой команды.
За первой строчкой могут следовать (но не обязательно следуют) дополнительные строчки с развёрнутым описанием ошибки системы или комментария к операции. Формат описания свободный (не регламентирован) и предназначен для расшифровки ответов системы в удобной для восприятия человеком форме.
Язык развёрнутых сообщений зависит от значения поля "extended_message_lang", присутствующего в запросе. Допускаются русский ('ru') и английский ('en') языки.

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

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

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

Аутентификация осуществляется с использованием полей запроса username и password. Пользователь с указанным логином и паролем должен существовать в системе регистрации RegRuSRS для успешного прохождения аутентификации.

3.6.2 Аутентификация по подписи операции

Аутентификация осуществляется с использованием поля запроса signature (при этом поле password не используется!).

Значение поля signature формируется следующим образом:

secretkey_hash = SHA1_HEX( secretkey )
message_digest = "value1:value2:value2:value3:secretkey_hash"
signature = SHA1_HEX( message_digest )
Функции и значения переменных, участвующих в формуле:
SHA1_HEX
Хэш-функция SHA1, выдающая результат в шестнадцатиричном представлении
secretkey_hash
Захешированный пароль / секретный ключ
message_digest
Строка, содержащая дайджест сообщения — значения полей запроса (исключая поле signature, разделённые двоеточием).
secretkey
Строка с «секретным включом» пользователя (основной пароль пользователя в системе либо специальный пароль пользователя для API, если он задан)
value1, value2 ... valueX
Значение полей запроса, отсортированных по имени.

Пример задания значения полей запроса (на языке Perl):

my %query_fields = (
	action => 'nop',
	domain_name => 'testdom.ru',
	timestamp => 12345,
	username => 'test',
	signature => Digest::SHA1::sha1_hex('nop:testdom.ru:12345:test:'.Digest::SHA1::sha1_hex('test')),
);

Пример кода для генерации подписи для любого запроса (на языке Perl):

my @fields_to_sign =
	map { $query_fields{$_} }
	grep { $_ ne 'signature' && $_ !~ /^_/ }
	sort keys %query_fields;

push @fields_to_sign, $secretkey_hash;

my $string_to_sign = join ':', @fields_to_sign;
my $signature = Digest::SHA1::sha1_hex( $string_to_sign );

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

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

Общие параметры для всех запросов.

Имя поля Мин. длина Макс. длина Описание поля
folder 0 255 Папка, в которую будет добавлен домен. Указывается полное имя папки.
enduser_ip 11 15 IP-адрес конечного пользователя (пользователя, который сделал заказ). Необязательное поле до 01.06.2009. После 01.06.2009 — обязательное поле.

4.1.1. Регистрация доменов .ru и .su

Эта операция служит для регистрации доменов в зонах .ru и .su. В качестве значения поля action для этой операции должно быть указано domain_create.
Ниже перечислены значения других полей для этой операции.
Обратите внимание, что в этой операции допустимо использовать один из двух взаимоисключающих наборов полей — данные организации (если домен регистрируется на организацию) либо данные частного лица (если домен регистрируется на частное лицо).
Некоторые поля, обозначенные особо, могут быть многострочными.

Имя поля Мин. длина Макс. длина Описание поля
period 1 2 Период, на который производится регистрация домена. Единственное допустимое значение для доменов .ru и .su: 1.
descr 5 255 Описание домена. Заполняется по-английски. Необязательное поле.
Контактные данные организации (только при регистрации домена на организацию!)
org 6 255
много-
строчное
Полное наименование организации - администратора домена латинскими буквами, предназначенное для использования сервисом 'whois'. Запись может быть многострочной.
Пример1: Karla-Marla Uryupinsk State University
Пример2: "ROGA I KOPYTA", LTD.
org_r 10 255
много-
строчное
Полное наименование организации - администратора домена на русском языке в соответствии с учредительными документами. Для нерезидентов указывается написание на национальном языке (либо на английском языке). Запись может быть многострочной.
Пример1: Урюпинский государственный университет\nимени Карлы-Марлы
Пример2: Общество с ограниченной ответственностью "Рога и Копыта"
code 10 10 Идентификационный номер налогоплательщика (ИНН), присвоенный организации-администратору. Запись может содержать пустую строку, если администратором является нерезидент РФ, не имеющий идентификационного номера налогоплательщика.
Пример: 7701107259
kpp 9 9 КПП организации (для Российских организаций). Необязательное поле.
Пример: 632946014
country 2 2 Двухбуквенный ISO-код страны, в которой зарегистрирована организация
Пример: RU
address_r 15 255
много-
строчное
Юридический адрес организации в соответствии с учредительными документами. Запись может быть многострочной.
Пример: 101000, Москва, ул.Пупкина, 1, стр. 2
p_addr 15 255
много-
строчное
Почтовый адрес организации - администратора домена. Запись может быть многострочной.
Пример: 101000, Москва, ул.Пупкина, 1, стр. 2, отдел мебели,\n офис 433 (для В. Лоханкина)
phone 8 255
много-
строчное
Номер телефона администратора домена. Телефон указывается с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и дефисы не допускаются. Запись может быть многострочной.
Пример: +7 495 8102233\n+7 3432 811221
fax 8 255
много-
строчное
Номер телефакса администратора домена. Номер телефакса указывается с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и тире не допускаются. Запись может быть многострочной. Запись не является обязательной. Пример: +7 3432 811221\n+7 495 8102233
e_mail 6 255
много-
строчное
Адрес электронной почты администратора домена в формате RFC-822. Запись может быть многострочной. Пример: ncc@test.ru\ntest@test.ru
Контактные данные частного лица (только при регистрации домена на частное лицо!)
person 8 64 Имя, первая буква отчества (без точки) и фамилия администратора домена, записанные латинскими буквами. Предназначено для использования сервисом 'whois'. Для иностранцев поле содержит имя в оригинальном написании (или в английской транскрипции).
Пример: Vassily N Pupkin
private_person_flag 1 1 Скрывать/Показывать реальное имя администратора домена в WHOIS.
Для скрытия - установите в значение '1'.
Для показа реального имени - установите в значение '0'.
person_r 9 64 Фамилия, имя и отчество администратора домена на русском языке в соответствии с паспортными данными. Для иностранцев поле содержит имя в оригинальном написании (при невозможности в английской транскрипции).
Пример1: Пупкин Василий Николаевич
Пример2: John Smith
passport 20 255
много-
строчное
Серия и номер паспорта, а также наименование органа, выдавшего паспорт, и дата выдачи (в указанной последовательности, с разделением пробелами). В написании римских цифр допустимо использование только латинских букв. Дата записывается в формате ДД.ММ.ГГГГ. Знак номера перед номером паспорта не ставится. Паспорта СССР (паспорта старого образца) не принимаются. В случае использования документа, отличного от паспорта (допустимо ТОЛЬКО для нерезидентов России), в начале строки указывается наименование вида документа. Запись может быть многострочной.
Пример: 34 02 651241 выдан 48 о/м г.Москвы 26.12.1990
birth_date 10 10 Дата рождения администратора домена в формате ДД.ММ.ГГГГ.
Пример: 07.11.1917
country 2 2 Двухбуквенный ISO-код страны, гражданином которой является частное лицо
Пример: RU
p_addr 15 255
много-
строчное
Почтовый адрес администратора домена на русском языке. (Адрес может не совпадать с указанным в паспорте местом регистрации.) Запись может быть многострочной.
Пример: 101000, Москва, ул.Воробьянинова, 15,\n кв.22, В. Лоханкину.
phone 8 255
много-
строчное
Номер телефона администратора домена. Телефон указывается с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и дефисы не допускаются. Запись может быть многострочной.
Пример: +7 495 8102233\n+7 3432 811221
fax 8 255
много-
строчное
Номер телефакса администратора домена. Номер телефакса указывается с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и тире не допускаются. Запись может быть многострочной. Запись не является обязательной. Пример: +7 3432 811221\n+7 495 8102233
e_mail 6 255
много-
строчное
Адрес электронной почты администратора домена в формате RFC-822. Запись может быть многострочной. Пример: ncc@test.ru\ntest@test.ru
code 12 12 Идентификационный номер налогоплательщика (ИНН), присвоенный администратору домена. Параметр указывается только в том случае, если администратор выступает как индивидуальный предприниматель.
Пример: 789012345678
DNS-серверы домена (должно быть указано не менее двух серверов)
ns0 6 80 Имя хоста первого DNS-сервера.
ns1 6 80 Имя хоста второго DNS-сервера.
ns2 6 80 Имя хоста третьего DNS-сервера.
ns3 6 80 Имя хоста четвертого DNS-сервера.
ns0ip 8 15 IP-адрес первого DNS-сервера. Необязательное поле. Используется только если имя DNS-сервера содержит имя регистрируемого домена
ns1ip 8 15 IP-адрес первого DNS-сервера. Необязательное поле. Используется только если имя DNS-сервера содержит имя регистрируемого домена
ns2ip 8 15 IP-адрес первого DNS-сервера. Необязательное поле. Используется только если имя DNS-сервера содержит имя регистрируемого домена
ns3ip 8 15 IP-адрес первого DNS-сервера. Необязательное поле. Используется только если имя DNS-сервера содержит имя регистрируемого домена

Примечание:
Для поддержки DNS могут быть бесплатно использованы сервера REG.RU. Для этого в качестве DNS-серверов необходимо указать сервера ns1.reg.ru и ns2.reg.ru.
При этом на данных серверах будет прописана зона для Вашего домена. Управлять зоной впоследствии можно будет через web-интерфейс портала reg.ru.

4.1.2. Регистрация доменов в других зонах

Эта операция позволяет подавать заявки на регистрацию доменов .COM .NET .ORG .BIZ .INFO .BE .CC .TV .РУ .КОМ .НЕТ .ОРГ. Ниже перечислены поля, участвующие в запросе для этой операции.
В качестве значения параметра action для этой операции должно быть установлено domain_create.

Имя поля Мин. длина Макс. длина Описание поля
period 1 2 Период, на который производится регистрация домена. Интервал допустимых значений: 1 - 10
Данные владельца домена
o_company 5 80 Название организации - владельца домена. Указывать "Private person" (без кавычек!) в случае, если владельцем является частное лицо.
o_first_name 2 40 Имя контактного лица
o_last_name 2 40 Фамилия контактного лица
o_email 6 90 Контактный email-адрес владельца домена.
o_phone 8 20 Номер телефона владельца домена. Телефон указывается с международном формате.
(Пример: +7.4952171179).
o_fax 8 20 Номер факса владельца домена. Телефон указывается с международном формате. Необязательное поле.
(Пример: +7.4952171179).
o_addr 8 80 Адрес владельца домена: улица, дом, офис (квартира)
o_city 2 80 Адрес владельца домена: город
o_state 2 40 Адрес владельца домена: область/край/штат
o_postcode 3 10 Почтовый индекс владельца домена
o_country_code 2 2 Двухбуквенный ISO-код страны владельца домена. Список всех кодов стран можно найти тут
Данные администратора домена
a_company 5 80 Название организации - владельца домена. Указывать "Private person" (без кавычек!) в случае, если владельцем является частное лицо.
a_first_name 2 40 Имя контактного лица
a_last_name 2 40 Фамилия контактного лица
a_email 6 80 Контактный email-адрес владельца домена.
a_phone 8 20 Номер телефона контактного лица. Телефон указывается с международном формате.
(Пример: +7.4952171179).
a_fax 8 20 Номер телефакса контактного лица. Телефон указывается с международном формате.
(Пример: +7.4952171179).
a_addr 8 80 Адрес контактного лица: улица, дом, офис (квартира)
a_city 2 80 Адрес контактного лица: город
a_state 2 40 Адрес контактного лица: область/край/штат
a_postcode 3 10 Почтовый индекс контактного лица
a_country_code 2 2 Двухбуквенный ISO-код страны контактного лица. Список всех кодов стран можно найти тут
Данные техподдержки домена
t_company 5 80 Организация, осуществляющая техподдержку домена. Указывать "Private person" (без кавычек!) в случае, если техподдержку осуществляет частное лицо.
t_first_name 2 40 Имя контактного лица
t_last_name 2 40 Фамилия контактного лица
t_email 6 80 Контактный email-адрес контактного лица.
t_phone 8 20 Номер телефона контактного лица. Телефон указывается с международном формате.
(Пример: +7.4952171179).
t_fax 8 20 Номер телефакса контактного лица. Телефон указывается с международном формате.
(Пример: +7.4952171179).
t_addr 8 80 Адрес контактного лица: улица, дом, офис (квартира)
t_city 2 80 Адрес контактного лица: город
t_state 2 40 Адрес контактного лица: область/край/штат
t_postcode 3 10 Почтовый индекс контактного лица
t_country_code 2 2 Двухбуквенный ISO-код страны контактного лица. Список всех кодов стран можно найти тут
Биллинговые контакты домена
b_company 5 80 Организация. Указывать "Private person" (без кавычек!) в случае, если это частное лицо.
b_first_name 2 40 Имя контактного лица
b_last_name 2 40 Фамилия контактного лица
b_email 6 80 Контактный email-адрес контактного лица.
b_phone 8 20 Номер телефона контактного лица. Телефон указывается с международном формате.
(Пример: +7.4952171179).
b_fax 8 20 Номер телефакса контактного лица. Телефон указывается с международном формате.
(Пример: +7.4952171179).
b_addr 8 80 Адрес контактного лица: улица, дом, офис (квартира)
b_city 2 80 Адрес контактного лица: город
b_state 2 40 Адрес контактного лица: область/край/штат
b_postcode 3 10 Почтовый индекс контактного лица
b_country_code 2 2 Двухбуквенный ISO-код страны контактного лица. Список всех кодов стран можно найти тут
Дополнительные данные для доменов в зоне .US
RselnexusAppPurpose 2 2 Сфера использования домена Возможные значения:
P1 - Бизнес, для получения прибыли
P2 - Бизнес, не для получением прибыли
P3 - Для персонального использования
P4 - Для образовательных целей
P5 - Для государственных целей
RselnexusCategory 3 3 Владелец домена: Возможные значения:
C11 - Физическое лицо - Гражданин США
C12 - Физическое лицо - постоянный резидент США или любой из его территорий
C21 - Юридическое лицо или организация, инкорпорированная в одном из 50-ти штатов США
C31 - Юридическое лицо или организация, которую регулярно ведет законную деятельность в США
C32 - Юридическое лицо или организация, которая имеет офис или другое имущество в США
DNS-серверы домена (должно быть указано не менее двух серверов)
ns0 6 80 Имя хоста первого DNS-сервера.
ns1 6 80 Имя хоста второго DNS-сервера.
ns2 6 80 Имя хоста третьего DNS-сервера.
ns3 6 80 Имя хоста четвертого DNS-сервера.
ns0ip 8 15 IP-адрес первого DNS-сервера. Необязательное поле. Используется только если имя DNS-сервера содержит имя регистрируемого домена
ns1ip 8 15 IP-адрес первого DNS-сервера. Необязательное поле. Используется только если имя DNS-сервера содержит имя регистрируемого домена
ns2ip 8 15 IP-адрес первого DNS-сервера. Необязательное поле. Используется только если имя DNS-сервера содержит имя регистрируемого домена
ns3ip 8 15 IP-адрес первого DNS-сервера. Необязательное поле. Используется только если имя DNS-сервера содержит имя регистрируемого домена

Примечание:
Для поддержки DNS могут быть бесплатно использованы сервера REG.RU. Для этого в качестве DNS-серверов необходимо указать сервера ns1.reg.ru и ns2.reg.ru.
При этом на данных серверах будет прописана зона для Вашего домена. Управлять зоной впоследствии можно будет через web-интерфейс портала reg.ru.

4.1.3. Перенос домена от другого регистратора

Эта операция позволяет подавать заявки на перенос доменов .COM .NET .ORG .BIZ .INFO .US .RU и .SU от других регистраторов к ООО "Регистратор доменных имён РЕГ.РУ". В качестве значения параметра action для этой операции должно быть установлено domain_trans_in.

Для доменов .RU и .SU данные владельца домена и DNS-сервера не указываются. Эти данные будут автоматически получены из реестра в момент принятия домена. Также для доменов .RU и .SU поле "period" может принимать значение "0" (перенос доменов без продления). Для всех прочих доменов, при переносе указываются все поля, что и для операции регистрации доменов (см. раздел 4.1.2), при этом также указывается поле authinfo.

Имя поля Мин. длина Макс. длина Описание поля
authinfo 6 32 Ключ аутентификации для переноса домена (для международных доменов). Уточняется у предыдущего регистратора домена.

4.1.4. Ответы системы

Кроме общих сообщений об ошибках HTTP-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: Registration request accepted for <domain name> for <period> years Заявка на регистрацию домена была успешно принята. При установленном флаге "extended_message_lang" возвращаются дополнительные комментарии о том, достаточно ли средств на лицевом счёте для выполнения операции.
Возможные форматы сообщений: "Amount successfully charged", "Order not payed - not enough money at account".
Также система возвращает номер счета, выставленный за данную услугу.
Вы можете найти детали этого счета в разделе "мои заказы".
Формат этого ответа: Bill #<bill number> is created for this operation
Пример:  "Bill #12345 is created for this operation"
Success: Transfer request accepted for <domain name> Заявка на перенос домена была успешно принята. При установленном флаге "extended_message_lang" возвращаются дополнительные комментарии о том, достаточно ли средств на лицевом счёте для выполнения операции либо сообщение о том, что оплаты не требуется.
Возможные форматы сообщений: "No charge required", "Amount successfully charged", "Order not payed - not enough money at account".
Также система возвращает номер счета, выставленный за данную услугу.
Вы можете найти детали этого счета в разделе "мои заказы".
Формат этого ответа: Bill #<bill number> is created for this operation
Пример:  "Bill #12345 is created for this operation"
Error: Unavailable Domain Name: <domain_name> Домен уже зарегистрирован или регистрация домена недоступна по иным причинам.
Error: Registraion via the system unavailable in this TLD Регистрация в данной зоне в данный момент недоступна через систему регистрации RegRuSRS.
Error: Invalid name servers Указанные DNS-сервера не верны (например, указан всего один DNS-сервер или сервера не зарегистрированы в базе NSI-registry).
Error: Domain is already ordered by you Заявка на регистрацию этого домена уже присутствует в системе. Повторная заявка на одно и то же имя не допускается.
Error: Not enough money for operation Недостаточно денег на балансе для выполнения операции. При установленном флаге "extended_message_lang" возвращается также дополнительный комментарий в формате "<XXX> RUR needed".

4.2. Продление регистрации домена

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

Имя поля Мин. длина Макс. длина Описание поля
period 1 2 Период продления регистрации домена. Для доменов .ru и .su единственное допустимое значение: 1, для прочих доменов интервал допустимых значений: 1 - 10. Заявка на продление домена .ru или .su может быть подана не ранее чем за два месяца до окончания делегирования домена.

Ответы системы

Кроме общих сообщений об ошибках HTTP-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: Renewed <domain name> for <years> years Заявка на продление домена успешно принята.
При установленном флаге "extended_message_lang" возвращаются дополнительные комментарии о том, достаточно ли средств на лицевом счёте для выполнения операции.
Возможные форматы сообщений: "Amount successfully charged", "Order not payed - not enough money at account".
Также система возвращает номера счетов, начиная с самого нового, выставленных за данную услугу.
Вы можете найти детали этих счетов в разделе "мои заказы".
Формат этого ответа:
Bill #<bill number> with payment option <pay_type> is created for this operation
Пример: 
"Bill #12349 with payment option 'prepay' is created for this operation"
"Bill #12345 with payment option 'prepay' is created for this operation"
Error: Cannot renew domain <domain name>. Domain is not active Домен еще не активирован или не оплачен, или удален, или находится в стадии переноса.
Error: Domain <domain name> can't be renewed yet Домен еще не может быть продлён (домены .RU, .SU и .TJ не могут быть продлены ранее чем за 2 месяца до окончания срока их делегирования).

4.3. Проверка доступности домена для регистрации

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

Ответы системы

Кроме общих сообщений об ошибках HTTP-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: <domain name> is Available Домен доступен для регистрации.
Success: <domain name> is Unavailable Домен НЕ доступен для регистрации.

4.4. Получение данных WHOIS домена

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

Рекомендуем нашим партнёрам, использующим REG.API, дабы не перегружать серверы REG.RU «лишними» запросами, проверять whois-информацию на своей стороне: примеры на Perl, примеры на PHP.

Ответы системы

Кроме общих сообщений об ошибках HTTP-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Error: <domain name> not found Домен не существует или информация WHOIS по этому домену ещё не доступна.
<raw whois data> Текст с данными WHOIS, возвращаемый в формате HTML. Этот текст может быть без предварительной обработки включён в любую web-страницу без риска нарушения форматирования страницы.

4.5. Смена списка DNS-серверов домена

Эта операция позволяет сменить список DNS-серверов домена, находящегося под Вашим управлением. В качестве значения параметра action для этой операции должно быть указано domain_update_nss.

Важно: Как минимум два DNS-сервера должно быть указано. Максимальное количество DNS-серверов — 4. Если имена хостов DNS-серверов содержат имя самого домена (например, домен example.com обслуживается на DNS-серверах ns1.example.com и ns2.example.com), то для этих серверов обязательно должны быть указаны IP-адреса.

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

Имя поля Мин. длина Макс. длина Описание поля
ns0 6 80 Имя хоста первого DNS-сервера.
ns1 6 80 Имя хоста второго DNS-сервера.
ns2 6 80 Имя хоста третьего DNS-сервера.
ns3 6 80 Имя хоста четвертого DNS-сервера.
ns0ip 8 15 IP-адрес первого DNS-сервера. Необязательное поле. Используется только если имя DNS-сервера содержит имя регистрируемого домена
ns1ip 8 15 IP-адрес первого DNS-сервера. Необязательное поле. Используется только если имя DNS-сервера содержит имя регистрируемого домена
ns2ip 8 15 IP-адрес первого DNS-сервера. Необязательное поле. Используется только если имя DNS-сервера содержит имя регистрируемого домена
ns3ip 8 15 IP-адрес первого DNS-сервера. Необязательное поле. Используется только если имя DNS-сервера содержит имя регистрируемого домена
undelegate 1 1 Флаг снятия домена с делегирования. Необязательное поле.
0 - Делегировать
1 - Снять делегирование

Примечание:
Для поддержки DNS могут быть бесплатно использованы сервера REG.RU. Для этого в качестве DNS-серверов необходимо указать сервера ns1.reg.ru и ns2.reg.ru.
При этом на данных серверах будет прописана зона для Вашего домена. Управлять зоной впоследствии можно будет через web-интерфейс портала reg.ru.

Ответы системы

Кроме общих сообщений об ошибках HTTP-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: Redelegated <domain name> to <name server list> Домен успешно переделегирован на новые сервера имён
Success: Redelegated <domain name> to <name server list> Status set to <status> Домен успешно переделегирован на новые сервера имён и флаг делегирования снят/установлен
Error: Invalid name servers Сервера имён не существуют или указаны неверно

4.6. Смена данных владельца домена

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

4.6.1. Смена данных владельца домена .ru или .su

После прохождения ручной проверки данных владельца домена Вы не сможете изменить значения полей "org", "org_r", "code", "address_r", "person", "person_r", "passport", "birth_date" с помощью этой операции. Все изменения в этих полях будут игнорироваться.

Имя поля Мин. длина Макс. длина Описание поля
descr 5 255 Описание домена. Заполняется по-английски. Необязательное поле.
Контактные данные организации (только при регистрации домена на организацию!)
org 6 255
много-
строчное
Полное наименование организации - администратора домена латинскими буквами, предназначенное для использования сервисом 'whois'. Запись может быть многострочной.
Пример1: Karla-Marla Uryupinsk State University
Пример2: "ROGA I KOPYTA", LTD.
org_r 10 255
много-
строчное
Полное наименование организации - администратора домена на русском языке в соответствии с учредительными документами. Для нерезидентов указывается написание на национальном языке (либо на английском языке). Запись может быть многострочной.
Пример1: Урюпинский государственный университет\nимени Карлы-Марлы
Пример2: Общество с ограниченной ответственностью "Рога и Копыта"
code 10 10 Идентификационный номер налогоплательщика (ИНН), присвоенный организации-администратору. Запись может содержать пустую строку, если администратором является нерезидент РФ, не имеющий идентификационного номера налогоплательщика.
Пример: 7701107259
kpp 9 9 КПП организации (для Российских организаций). Необязательное поле.
Пример: 632946014
country 2 2 Двухбуквенный ISO-код страны, в которой зарегистрирована организация
Пример: RU
address_r 15 255
много-
строчное
Юридический адрес организации в соответствии с учредительными документами. Запись может быть многострочной.
Пример: 101000, Москва, ул.Пупкина, 1, стр. 2
p_addr 15 255
много-
строчное
Почтовый адрес организации - администратора домена. Запись может быть многострочной.
Пример: 101000, Москва, ул.Пупкина, 1, стр. 2, отдел мебели,\n офис 433 (для В. Лоханкина)
phone 8 255
много-
строчное
Номер телефона администратора домена. Телефон указывается с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и дефисы не допускаются. Запись может быть многострочной.
Пример: +7 495 8102233\n+7 3432 811221
fax 8 255
много-
строчное
Номер телефакса администратора домена. Номер телефакса указывается с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и тире не допускаются. Запись может быть многострочной. Запись не является обязательной. Пример: +7 3432 811221\n+7 495 8102233
e_mail 6 255
много-
строчное
Адрес электронной почты администратора домена в формате RFC-822. Запись может быть многострочной. Пример: ncc@test.ru\ntest@test.ru
Контактные данные частного лица (только при регистрации домена на частное лицо!)
person 8 64 Имя, первая буква отчества (без точки) и фамилия администратора домена, записанные латинскими буквами. Предназначено для использования сервисом 'whois'. Для иностранцев поле содержит имя в оригинальном написании (или в английской транскрипции).
Пример: Vassily N Pupkin
private_person_flag 1 1 Скрывать/Показывать реальное имя администратора домена в WHOIS.
Для скрытия - установите в значение '1'.
Для показа реального имени - установите в значение '0'.
person_r 9 64 Фамилия, имя и отчество администратора домена на русском языке в соответствии с паспортными данными. Для иностранцев поле содержит имя в оригинальном написании (при невозможности в английской транскрипции).
Пример1: Пупкин Василий Николаевич
Пример2: John Smith
passport 20 255
много-
строчное
Серия и номер паспорта, а также наименование органа, выдавшего паспорт, и дата выдачи (в указанной последовательности, с разделением пробелами). В написании римских цифр допустимо использование только латинских букв. Дата записывается в формате ДД.ММ.ГГГГ. Знак номера перед номером паспорта не ставится. Паспорта СССР (паспорта старого образца) не принимаются. В случае использования документа, отличного от паспорта (допустимо ТОЛЬКО для нерезидентов России), в начале строки указывается наименование вида документа. Запись может быть многострочной.
Пример: 34 02 651241 выдан 48 о/м г.Москвы 26.12.1990
birth_date 10 10 Дата рождения администратора домена в формате ДД.ММ.ГГГГ.
Пример: 07.11.1917
country 2 2 Двухбуквенный ISO-код страны, гражданином которой является частное лицо
Пример: RU
p_addr 15 255
много-
строчное
Почтовый адрес администратора домена на русском языке. (Адрес может не совпадать с указанным в паспорте местом регистрации.) Запись может быть многострочной.
Пример: 101000, Москва, ул.Воробьянинова, 15,\n кв.22, В. Лоханкину.
phone 8 255
много-
строчное
Номер телефона администратора домена. Телефон указывается с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и дефисы не допускаются. Запись может быть многострочной.
Пример: +7 495 8102233\n+7 3432 811221
fax 8 255
много-
строчное
Номер телефакса администратора домена. Номер телефакса указывается с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и тире не допускаются. Запись может быть многострочной. Запись не является обязательной. Пример: +7 3432 811221\n+7 495 8102233
e_mail 6 255
много-
строчное
Адрес электронной почты администратора домена в формате RFC-822. Запись может быть многострочной. Пример: ncc@test.ru\ntest@test.ru
code 12 12 Идентификационный номер налогоплательщика (ИНН), присвоенный администратору домена. Параметр указывается только в том случае, если администратор выступает как индивидуальный предприниматель.
Пример: 789012345678

4.6.2. Смена данных владельца домена в других зонах

Вы не можете изменить имя организации (o_company) с помощью этой операции. Изменение имени организации-владельца осуществляется с помощью операции domain_owner_change.

Имя поля Мин. длина Макс. длина Описание поля
Данные владельца домена
o_company 5 80 Название организации - владельца домена. Указывать "Private person" (без кавычек!) в случае, если владельцем является частное лицо.
o_first_name 2 40 Имя контактного лица
o_last_name 2 40 Фамилия контактного лица
o_email 6 90 Контактный email-адрес владельца домена.
o_phone 8 20 Номер телефона владельца домена. Телефон указывается с международном формате.
(Пример: +7.4952171179).
o_fax 8 20 Номер факса владельца домена. Телефон указывается с международном формате. Необязательное поле.
(Пример: +7.4952171179).
o_addr 8 80 Адрес владельца домена: улица, дом, офис (квартира)
o_city 2 80 Адрес владельца домена: город
o_state 2 40 Адрес владельца домена: область/край/штат
o_postcode 3 10 Почтовый индекс владельца домена
o_country_code 2 2 Двухбуквенный ISO-код страны владельца домена. Список всех кодов стран можно найти тут
Данные администратора домена
a_company 5 80 Название организации - владельца домена. Указывать "Private person" (без кавычек!) в случае, если владельцем является частное лицо.
a_first_name 2 40 Имя контактного лица
a_last_name 2 40 Фамилия контактного лица
a_email 6 80 Контактный email-адрес владельца домена.
a_phone 8 20 Номер телефона контактного лица. Телефон указывается с международном формате.
(Пример: +7.4952171179).
a_fax 8 20 Номер телефакса контактного лица. Телефон указывается с международном формате.
(Пример: +7.4952171179).
a_addr 8 80 Адрес контактного лица: улица, дом, офис (квартира)
a_city 2 80 Адрес контактного лица: город
a_state 2 40 Адрес контактного лица: область/край/штат
a_postcode 3 10 Почтовый индекс контактного лица
a_country_code 2 2 Двухбуквенный ISO-код страны контактного лица. Список всех кодов стран можно найти тут
Данные техподдержки домена
t_company 5 80 Организация, осуществляющая техподдержку домена. Указывать "Private person" (без кавычек!) в случае, если техподдержку осуществляет частное лицо.
t_first_name 2 40 Имя контактного лица
t_last_name 2 40 Фамилия контактного лица
t_email 6 80 Контактный email-адрес контактного лица.
t_phone 8 20 Номер телефона контактного лица. Телефон указывается с международном формате.
(Пример: +7.4952171179).
t_fax 8 20 Номер телефакса контактного лица. Телефон указывается с международном формате.
(Пример: +7.4952171179).
t_addr 8 80 Адрес контактного лица: улица, дом, офис (квартира)
t_city 2 80 Адрес контактного лица: город
t_state 2 40 Адрес контактного лица: область/край/штат
t_postcode 3 10 Почтовый индекс контактного лица
t_country_code 2 2 Двухбуквенный ISO-код страны контактного лица. Список всех кодов стран можно найти тут
Биллинговые контакты домена
b_company 5 80 Организация. Указывать "Private person" (без кавычек!) в случае, если это частное лицо.
b_first_name 2 40 Имя контактного лица
b_last_name 2 40 Фамилия контактного лица
b_email 6 80 Контактный email-адрес контактного лица.
b_phone 8 20 Номер телефона контактного лица. Телефон указывается с международном формате.
(Пример: +7.4952171179).
b_fax 8 20 Номер телефакса контактного лица. Телефон указывается с международном формате.
(Пример: +7.4952171179).
b_addr 8 80 Адрес контактного лица: улица, дом, офис (квартира)
b_city 2 80 Адрес контактного лица: город
b_state 2 40 Адрес контактного лица: область/край/штат
b_postcode 3 10 Почтовый индекс контактного лица
b_country_code 2 2 Двухбуквенный ISO-код страны контактного лица. Список всех кодов стран можно найти тут
Дополнительные данные для доменов в зоне .US
RselnexusAppPurpose 2 2 Сфера использования домена Возможные значения:
P1 - Бизнес, для получения прибыли
P2 - Бизнес, не для получением прибыли
P3 - Для персонального использования
P4 - Для образовательных целей
P5 - Для государственных целей
RselnexusCategory 3 3 Владелец домена: Возможные значения:
C11 - Физическое лицо - Гражданин США
C12 - Физическое лицо - постоянный резидент США или любой из его территорий
C21 - Юридическое лицо или организация, инкорпорированная в одном из 50-ти штатов США
C31 - Юридическое лицо или организация, которую регулярно ведет законную деятельность в США
C32 - Юридическое лицо или организация, которая имеет офис или другое имущество в США

4.6.3. Ответы системы

Кроме общих сообщений об ошибках HTTP-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: Modified contact details for <domain name> Операция произведена успешно

4.8. Дать полномочия по управлению доменом другому пользователю

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

Имя поля Мин. длина Макс. длина Описание поля
newlogin 4 32 Имя логина другого пользователя в системе, которому необходимо дать права на управление доменом

Ответы системы

Кроме общих сообщений об ошибках HTTP-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: Domain's management rights successfully granted to '<account>' Права на управление доменом переданы на аккаунт
Error: no newlogin given Значение поля newlogin не указано
Error: login '<newlogin>' not found Пользователь с указанным логином не найден

4.9. Забрать полномочия по управлению доменом от другого пользователя

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

Ответы системы

Кроме общих сообщений об ошибках HTTP-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: Domain management rights successfully revoked from another user Права на управление доменом были отменены для другого аккаунта

4.10. Получение информации о домене

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

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

Имя поля Мин. длина Макс. длина Описание поля
show_folder_names 1 1 Показывать папки, в которых находится домен. Возможные значения: "1"

Ответы системы

Кроме общих сообщений об ошибках HTTP-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
   state: <state>
   creation_date: <YYYY-MM-DD>
   expiration_date: <YYYY-MM-DD>
   future_periods: <years>;
   
Статусы доменов:
  • "N" – не активен (не зарегистрирован / не перенесён);
  • "A" – активен;
  • "S" – приостановлен;
  • "D" – удалён;
  • "O" – перенесён к другому регистратору;
folder_names: folder_name1, folder_name2 Список папок, в которых находится домен.

4.11. Получение данных владельца домена

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

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

Имя поля Мин. длина Макс. длина Описание поля
do_not_translate_newlines_to_spaces 1 1 По умолчанию все символы перевода каретки транслируются в символы пробела. При выставлении данного флага в «1» символы возврата каретки будут транслироваться в последовательность «\n».

Ответы системы

Кроме общих сообщений об ошибках HTTP-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
<field1>: <value1>;
<field2>: <value2>;
.....
<fieldN>: <valueN>;
Поля контактной информации домена в формате: поле: значение

4.12. Получение списка DNS-серверов домена

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

Имя поля Мин. длина Макс. длина Описание поля
showip 1 1 Показывать ли IP-адреса DNS-серверов в ответе системы

Ответы системы

Кроме общих сообщений об ошибках HTTP-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: <ns1.hostname>, <ns2.hostname>, ...
Список DNS-серверов домена, разделённый запятыми
Success: <ns1.hostname> <NS1 IP>, <ns2.hostname> <NS2 IP>, ...
Список DNS-серверов домена, разделённый запятыми, а также их IP, если они указаны

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

Эта операция позволяет получить список зарегистрированных доменов с указанием их статуса, даты регистрации и даты окончания обслуживания домена. В качестве значения параметра action для этой операции должно быть указано domain_list.
Внимание! Для данной операции поле domain_name указывать не требуется!
Дополнительно с помошью этой команда можно получить контактные данные администратора домена.

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

Имя поля Мин. длина Макс. длина Описание поля
credate_start 9 9 Показывать домены ОТ заданной даты регистрации. Формат даты: ГГГГ-ММ-ДД
credate_end 9 9 Показывать домены ДО заданной датой регистрации. Формат даты: ГГГГ-ММ-ДД
expdate_start 9 9 Показывать домены ОТ заданной даты окончания обслуживания. Формат даты: ГГГГ-ММ-ДД
expdate_end 9 9 Показывать домены ДО заданной даты окончания обслуживания. Формат даты: ГГГГ-ММ-ДД
domain_searchstr 1 63 Показывать домены соответствующие заданной строке поиска ("*" заменяет любую последовательность символов).
searchstr 1 63 Поиск доменов по ФИО/email или всем данным Администратора домена ("*" заменяет любую последовательность символов). Используется в связке с strict_search_option
folder_name 1 255 Поиск по имени доменной папки
strict_search_option 1 1 Задает тип поиска по ФИО/email или всем данным Администратора домена.
Возможные значения: '1' - поиск по ФИО/email
'0' - поиск по всем данным Администратора домена. Используется в связке с searchstr
export_details_yaml 1 1 Задает вывод записей по домену И контактных данных Администратора домена в формате YAML.
Возможные значения: '1' - использовать формат YAML.
'0' - не использовать формат YAML. В этом случае будет выводится ответ в стандарном формате БЕЗ контактных данных Администратора домена.

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: domain_name|status|create_date|expire_date|is_partcontrol Список доменов. Пример:
Success: aaa.com|A|2007-07-12|2008-07-12|partcontrol:NO
trans. transferred-domain.com|N|2001-01-01|2002-01-01|partcontrol:YES
Error: wrong date format for field '<date_filter>'\nCorrect date format: 'YYYY-MM-DD' Неверный формат даты для поля '<date_filter>'
Пример:
Error: wrong date format for field 'credate_start'\nCorrect date format: 'YYYY-MM-DD'

4.14. Смена имени администратора домена на 'Private person'

Эта операция позволяет сменить имя администратора домена на 'Private person'.
Данная операция возможна только для доменов в зонах .ru и .su. Домен должен быть зарегистрирован на частное лицо.
В качестве значения параметра action для этой операции должно быть указано domain_update_private_person_flag.

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

Имя поля Мин. длина Макс. длина Описание поля
private_flag 1 1 Скрывать/Показывать реальное имя администратора домена в WHOIS.
Для скрытия - установите в значение '1'.
Для показа реального имени - установите в значение '0'.

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: domain owner name set to "Private person" Данные владельца домена сменены на 'Private person' (private_flag = 1).
Success: domain owner name set to your real name Имя администратора домена сменено на реальное имя (private_flag = 0).
Error: can not set domain owner name to "Private person" Не удалось сменить имя администратора домена на 'Private person'. При установленном флаге "extended_message_lang" возвращаются дополнительные комментарии о том, почему именно не удалось произвести данную операцию.
Возможные ответы:
'Domain is not in .ru or .su zones' - Домен не зарегистрирован в .ru или .su зонах.
'Domain is not registered on private person' - Домен не зарегистрирован на частное лицо.

4.15. Перенос домена на другой аккаунт

Эта операция позволяет осуществить полную передачу (перенос) домена на другой аккаунт в REG.RU.
В качестве значения параметра action для этой операции должно быть указано domain_move_to_another_account.

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

Имя поля Мин. длина Макс. длина Описание поля
new_user_id 2 6 ID пользователя (в системе REG.RU), на чей аккаунт переносится домен.
При указании этого поля поле new_user_login игнорируется.
new_user_login 3 32 Логин пользователя (в системе REG.RU), на чей аккаунт переносится домен.
При указании этого поля значение поля new_user_id игнорируется.

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: domain <domain_name> successfully moved to another account Домен успешно перенесён на другой аккаунт.
Error: failed to move domain <domain_name> to another account Не удалось перенести домен на другой акккаунт.
Error: new_user_id or new_user_login required Не задан один из обязательных параметров (new_user_id или new_user_login).
Error: new user not found Аккаунт, на который передается домен, не найден в системе.

5. Операции по управлению DNS-зоной домена

Далее описаны различные операции по обслуживанию / изменению настроек зоны домена, которые могут быть осуществлены через HTTPS-шлюз.

5.1. Добавление ресурсной записи

Эта операция позволяет добавить для указанного домена / поддомена DNS-запись тип записи A, MX, CNAME, NS, TXT, SRV
В качестве значения параметра action для этой операции должно быть указано zone_add_rr.

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

Имя поля Мин. длина Макс. длина Описание поля
subname 2 50 Имя поддомена. Для изменения записи основного домена указывать "@"
rectype 1 5 Тип ресурсной записи. Допустимые значения: A, MX, NS, CNAME, TXT, SRV.
Для записи типа A
ipaddr 8 16 IP-адрес
Для записи типа CNAME
hostname 2 50 Canonical name
Для записи типа MX
hostname 2 50 Почтовый сервер
priority 1 2 Приоритет записи
Для записи типа NS
nsnum 1 1 номер NS сервера
hostname 2 50 DNS сервер
Для записи типа TXT
text 1 253 Текст
Для записи типа SRV
subname 1 253 Название сервиса
priority 1 2 Приоритет записи
weight 1 2 Вес
port 1 6 Порт
target 1 253 Target

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: Record added Запись добавлена.
Error: Uninplemented rectype Некорректный или неподдерживаемый тип записи
Error: Invalid subdomain Был введен некорректный поддомен
Error: Incorrect IP Был введен некорректный IP адрес (для записей A)
Error: Conflict with CNAME record Для одного поддомена нельзя указывать записи CNAME совместно с другими записями (для записей кроме CNAME)
Error: Invalid hostname Некорректное имя хоста (для записей CNAME, MX, NS).
Error: CNAME conflict with other record Для одного поддомена нельзя указывать записи CNAME совместно с другими записями (для записей CNAME)
Error: Incorrect text Введенный текст некорректной длины (для записей TXT)
Error: incorrect symbols in Service Были переданы некорректные данные в поле service (для записей SRV)
Error: Incorrect port Были переданы некорректные данные в поле port (для записей SRV)
Error: Incorrect target Были переданы некорректные данные в поле target (для записей SRV)
Error: Incorrect weight Были переданы некорректные данные в поле weight (для записей SRV)

5.2. Удаление записи

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

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

Имя поля Мин. длина Макс. длина Описание поля
subname 2 50 Имя поддомена
rectype 2 10 Тип записи
priority 1 6 Приоритет
content 1 255 Содержимое записи. Формат зависит от типа записи, которую удаляем.

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: Record removed Запись удалена
Success: Record not found Запись не найдена

5.3. Обновление зоны

Эта операция позволяет обновить зону на DNS-серверах (обновить запись SOA).
В качестве значения параметра action для этой операции должно быть указано zone_update.

Никаких дополнительных параметров она не требует.

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: Zone updated Обновление зоны инициировано.
Error: Can't update zone Невозможно обновить зону. Возможно, домен не активен (не оплачен или заблокирован).

5.4. Получение информации о зоне

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

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

Имя поля Мин. длина Макс. длина Описание поля
get_state 1 1 Вернуть статус зоны

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success:
subname: <subname>; priority: <priority>; address: <address>; rectype: <rectype>;
subname: <subname>; priority: <priority>; address: <address>; rectype: <rectype>;
....
Вывод ресурсных записей зоны
Success:
subname: <subname>; priority: <priority>; address: <address>; rectype: <rectype>; state: <state>;
subname: <subname>; priority: <priority>; address: <address>; rectype: <rectype>; state: <state>;
....
Вывод ресурсных записей и статусов зоны
Success: Ресурсных записей нет

6. Операции по работе с пользователем

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

6.1. Создание пользователя

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

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

Имя поля Мин. длина Макс. длина Описание поля
user_login 2 32 Логин нового пользователя в системе REG.RU.
Допустимые символы: латинские строчные буквы от "a" до "z", символы "0" - "9", "-", "_".
user_password 4 32 Пароль нового пользователя в системе REG.RU.
Допускается использование любых латинских символов.
user_email 7 128 Адрес электронной почты нового пользователя в системе REG.RU.
user_country_code 2 2 Двухбуквенный ISO-код страны проживания нового пользователя, например "RU".
Список всех кодов стран можно найти тут.
user_first_name 2 40 Имя контактного лица
user_last_name 2 40 Фамилия контактного лица
user_company 2 40 Компания, в которой работает новый пользователь
user_icq 5 9 ICQ UIN нового пользователя
user_phone 8 20 Номер телефона нового пользователя. Телефон указывается с международном формате.
(Пример: +7.4952171179).
user_fax 8 20 Номер факса нового пользователя. Телефон указывается с международном формате. Необязательное поле.
(Пример: +7.4952171179).
user_addr 8 80 Адрес нового пользователя: улица, дом, офис (квартира)
user_city 2 80 Адрес нового пользователя: город
user_state 2 40 Адрес нового пользователя: область/край/штат
user_postcode 3 10 Почтовый индекс нового пользователя
user_wmid 12 12 Webmoney ID нового пользователя
user_language 7 7 Язык интерфейса сайта reg.ru. Варианты: "russian" или "english".
user_website 12 128 Веб-сайт нового пользователя
user_subsribe 1 1 Подписать пользователя на рассылку по электронной почте от REG.RU (значение поля = "1").
user_mailnotify 1 1 Послать пользователю уведомление о регистрации (значение поля = "1").

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: new user is created. New user id: <user_id> Пользователь <user_id> создан
Error: USER_BAD_LOGIN Поле <user_login> содержит недопустимые символы.
Error: USER_ALREADY_EXISTS Логин <user_login> уже есть в системе.
Error: CONTACTS_CHECK_FAILED Какое-то из контактных полей заполнено неверно. При установленном флаге "extended_message_lang" возвращается также дополнительный комментарий в формате
"The following fields are invalid: <...>, <...>".

6.2. Обновление анкеты пользователя

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

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

Имя поля Мин. длина Макс. длина Описание поля
user_id 2 6 ID пользователя в системе REG.RU.
При указании этого поля поле user_login игнорируется.
user_login 3 32 Логин пользователя в системе REG.RU.
При указании этого поля значение поля user_id игнорируется.
profile_type 5 6 Тип анкеты. Возможные варианты: "gtld", "ru_org", "ru_pp"
Контактные данные организации (только при регистрации домена на организацию!)
org 6 255
много-
строчное
Полное наименование организации - администратора домена латинскими буквами, предназначенное для использования сервисом 'whois'. Запись может быть многострочной.
Пример1: Karla-Marla Uryupinsk State University
Пример2: "ROGA I KOPYTA", LTD.
org_r 10 255
много-
строчное
Полное наименование организации - администратора домена на русском языке в соответствии с учредительными документами. Для нерезидентов указывается написание на национальном языке (либо на английском языке). Запись может быть многострочной.
Пример1: Урюпинский государственный университет\nимени Карлы-Марлы
Пример2: Общество с ограниченной ответственностью "Рога и Копыта"
code 10 10 Идентификационный номер налогоплательщика (ИНН), присвоенный организации-администратору. Запись может содержать пустую строку, если администратором является нерезидент РФ, не имеющий идентификационного номера налогоплательщика.
Пример: 7701107259
kpp 9 9 КПП организации (для Российских организаций). Необязательное поле.
Пример: 632946014
country 2 2 Двухбуквенный ISO-код страны, в которой зарегистрирована организация
Пример: RU
address_r 15 255
много-
строчное
Юридический адрес организации в соответствии с учредительными документами. Запись может быть многострочной.
Пример: 101000, Москва, ул.Пупкина, 1, стр. 2
p_addr 15 255
много-
строчное
Почтовый адрес организации - администратора домена. Запись может быть многострочной.
Пример: 101000, Москва, ул.Пупкина, 1, стр. 2, отдел мебели,\n офис 433 (для В. Лоханкина)
phone 8 255
много-
строчное
Номер телефона администратора домена. Телефон указывается с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и дефисы не допускаются. Запись может быть многострочной.
Пример: +7 495 8102233\n+7 3432 811221
fax 8 255
много-
строчное
Номер телефакса администратора домена. Номер телефакса указывается с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и тире не допускаются. Запись может быть многострочной. Запись не является обязательной. Пример: +7 3432 811221\n+7 495 8102233
e_mail 6 255
много-
строчное
Адрес электронной почты администратора домена в формате RFC-822. Запись может быть многострочной. Пример: ncc@test.ru\ntest@test.ru
Контактные данные частного лица (только при регистрации домена на частное лицо!)
person 8 64 Имя, первая буква отчества (без точки) и фамилия администратора домена, записанные латинскими буквами. Предназначено для использования сервисом 'whois'. Для иностранцев поле содержит имя в оригинальном написании (или в английской транскрипции).
Пример: Vassily N Pupkin
person_r 9 64 Фамилия, имя и отчество администратора домена на русском языке в соответствии с паспортными данными. Для иностранцев поле содержит имя в оригинальном написании (при невозможности в английской транскрипции).
Пример1: Пупкин Василий Николаевич
Пример2: John Smith
passport 20 255
много-
строчное
Серия и номер паспорта, а также наименование органа, выдавшего паспорт, и дата выдачи (в указанной последовательности, с разделением пробелами). В написании римских цифр допустимо использование только латинских букв. Дата записывается в формате ДД.ММ.ГГГГ. Знак номера перед номером паспорта не ставится. Паспорта СССР (паспорта старого образца) не принимаются. В случае использования документа, отличного от паспорта (допустимо ТОЛЬКО для нерезидентов России), в начале строки указывается наименование вида документа. Запись может быть многострочной.
Пример: 34 02 651241 выдан 48 о/м г.Москвы 26.12.1990
birth_date 10 10 Дата рождения администратора домена в формате ДД.ММ.ГГГГ.
Пример: 07.11.1917
country 2 2 Двухбуквенный ISO-код страны, гражданином которой является частное лицо
Пример: RU
p_addr 15 255
много-
строчное
Почтовый адрес администратора домена на русском языке. (Адрес может не совпадать с указанным в паспорте местом регистрации.) Запись может быть многострочной.
Пример: 101000, Москва, ул.Воробьянинова, 15,\n кв.22, В. Лоханкину.
phone 8 255
много-
строчное
Номер телефона администратора домена. Телефон указывается с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и дефисы не допускаются. Запись может быть многострочной.
Пример: +7 495 8102233\n+7 3432 811221
fax 8 255
много-
строчное
Номер телефакса администратора домена. Номер телефакса указывается с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и тире не допускаются. Запись может быть многострочной. Запись не является обязательной. Пример: +7 3432 811221\n+7 495 8102233
e_mail 6 255
много-
строчное
Адрес электронной почты администратора домена в формате RFC-822. Запись может быть многострочной. Пример: ncc@test.ru\ntest@test.ru
code 12 12 Идентификационный номер налогоплательщика (ИНН), присвоенный администратору домена. Параметр указывается только в том случае, если администратор выступает как индивидуальный предприниматель.
Пример: 789012345678

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: profile <profile_type> succesfully updated for user id <user_id> Анкета <profile_type> обновлена. Было использовано поле "user_id" для указания пользователя.
Success: profile <profile_type> succesfully updated for user <user_login> Анкета <profile_type> обновлена. Было использовано поле "user_login" для указания пользователя.
Error: profile_type is missing or invalid Поле <profile_type> отсутствует или содержит неверное значение.
Error: operation enabled only for users with special contract signed Операция разрешена только партнёру, заключившему дополнительный бумажный договор.
Error: USER_ID_REQUIRED Поле <user_id> отсутствует или содержит неверное значение.
Error: CONTACTS_CHECK_FAILED Какое-то из контактных полей заполнено неверно. При установленном флаге "extended_message_lang" возвращается также дополнительный комментарий в формате
"The following fields are invalid: <...>, <...>".

7. Прочие операции

Далее описаны различные операции по обслуживанию / изменению настроек доменов, которые могут быть осуществлены через HTTPS-шлюз.

7.1. «Пустая» операция

Пустая операция, которая «не делает ничего полезного».
Однако, может быть полезна, например, для проверки наличия соединения с сервером шлюза или для отладки взаимодействия со шлюзам — в качестве наиболее простой операции. Значение параметра action для этой операции: nop.

Никаких дополнительных параметров не требуется.

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success Операция успешно выполнена

7.2. Проверка баланса пользователя

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

Никаких дополнительных параметров она не требует.

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: account balance is <balance> RUR Баланс пользователя в рублях (включая НДС)

7.3. Выписка счёта на предоплату (пополнение баланса)

Эта операция позволяет выписать счёт на предоплату (для пополнения баланса). В качестве значения параметра action для этой операции должно быть указано balance_refill. В настоящее премя поддерживается только пополнение баланса по WebMoney.

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

Имя поля Мин. длина Макс. длина Описание поля
pay_type 2 20 Способ оплаты счёта. В настоящее время поддерживается только WebMoney (значение поля — "WM")
amount 1 6 Сумма предоплаты в рублях (указывается без НДС)
currency 3 3 Валюта, в которой будет выставлен счет. Возможные значения: "RUR", "USD".
Поля для способа оплаты "WM"
wmid 12 12 WMID плательщика для выписки WM-счёта

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: New bill #<bill_id> drawn; wm_invid: <wm_inv_id> Счёт #<bill_id> выписан. Номер WM-счёта (при оплате WebMoney) — <wm_inv_id>

7.4. Смена способа оплаты счета

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

Важно! При изменении типа оплаты счета он меняется для ВСЕХ позиций в этом счете.
Если тип оплаты указан как "prepay" то в таком случае происходит попытка списания денег с баланса и пометка счета как оплаченного.

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

Имя поля Мин. длина Макс. длина Описание поля
bill_id 1 9 Номер счета. Система его выдает при регистрации, продлении или переноса домена.
pay_type 2 9 Способ оплаты счёта. На данный момент доступные такие варианты оплаты: ("WM", "bank", "pbank", "prepay", "yamoney", "rapida", "moneymail", "robox", "assist", "paymer", "cash", "chronopay")
currency 3 3 Тип расчетной валюты. Доступные значения: 'RUR', 'USD'

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: changed pay_type of bill #<bill_id> to '<pay_type>' Тип оплаты для счёта #<bill_id> изменен на тип оплаты <pay_type>
При установленном флаге "extended_message_lang" возвращаются дополнительные комментарии о том, достаточно ли средств на лицевом счёте для выполнения операции (только для типа оплаты 'prepay').
Пример: "Bill #bill_id processed successfully.
Amount of '<bill_cost>' in '<currency>' is deducted from your account"
Error: not enough funds to process bill #<bill_id> Данный ответ показывает, что при смене типа оплаты счета на "prepay"
не удалось списать деньги с аккаунта по причине отсутсвия нужной суммы.
Пример: "Error: not enough funds to process bill #12345"
Error: invalid pay_type Указан неверный тип оплаты
Error: invalid currency Указан неверный тип вылюты
Error: bill_id should contain digits only Поле <bill_id> должно состоять только из цифр.
Error: bill #<bill_id> not found Счет #<bill_id> не найден
Error: bill #<bill_id> already payed Счет #<bill_id> уже оплачен

7.5. Удаление счёта

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

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

Имя поля Мин. длина Макс. длина Описание поля
bill_id 1 9 Номер счета. Система его выдает при регистрации, продлении или переноса домена.

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: bill #<bill_id> is deleted Счёт #<bill_id> удален
Error: bill_id should contain digits only Поле <bill_id> должно состоять только из цифр.
Error: bill #<bill_id> not found Счет #<bill_id> не найден

7.6. Создание папки

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

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

Имя поля Мин. длина Макс. длина Описание поля
folder_name 0 255 Имя новой папки.

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: folder '<folder_name>' created #<folder_id> Папка с именем <folder_name> создана. ID папки <folder_id>.
Error: folder '<folder_name>' already exists Папка с таким именем уже существует.
Error: empty folder name Пустое имя папки.

7.7. Получение цен на услуги

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

Ответы системы

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success:
<tld1>:<reg_price1>:<renew_price2>
<tld2>:<reg_price1>:<renew_price2>
...
Список зон с ценами (в рублях) регистрации и продления доменов.
Формат записи: <имя TLD>:<цена регистрации>:<цена продления>

8. Операции с сервисами

8.1. Заказ нового сервиса

Для заказа нового сервиса поле action принимает значение "service_create", далее передаются указанные ниже праметры, посредством которых можно указать требуемый сервис и его характеристики.
Имя поля Мин. длина Макс. длина Описание поля
servtype 10 17 Тип заказываемого сервиса, может принимать значения: srv_dns_both (поддержка DNS для доменов, зарегистрированных у других Регистраторов), srv_hosting_ispmgr (хостинг), srv_webfwd (форвардинг), srv_parking (парковка).
domain_name 4 67 Домен, для которого заказывается сервис, поле обязательно для всех сервисов.
period 1 2 Период заказа услуги (если не указано, то 1). Для хостинга измеряется в месяцах, для остальных услуг в годах
plan 6 13 Тарифный план, используется только при заказе услуги хостинг, может принимать значения: Host-0-1209, Host-1-1209, Host-2-1209, Host-3-1209, Host-CMS-1209.
fail_if_no_money 1 1 Управляет поведением системы, в случае отсутствия необходимой для заказа суммы на счету. Подробное описание приведено выше.
email 6 255 Задаёт электронный адрес для хостинга, если параметр не указан, то адрес берётся из профиля пользователя.
admin_comment 0 255 Задаёт контактные данные клиента, заказывающего хостинг. Будет использоваться при необходимости оперативной связи с клиентом. Доступен только администрации Reg.Hosting

Кроме общих сообщений об ошибках HTTPS-шлюз может возвращать один из следующих ответов:

Ответ системы Описание
Success: service тип_сервиса is ordered for domain имя_домена" Сервис "тип_сервиса" был успешно заказан для домена "имя_домена"
Error: invalid service type Неизвестный тип сервиса, проверьте поле servtype
Error: plan field required Тарифный план хостинга либо не указан, либо неверен
Error: dname field required Не задано обязательное поле "домен"
Error: email address is incorrect Электронный адрес имеет некорректный формат

9. Примеры

Ссылки на HTML-формы, иллюстрирующие HTTP-запросы к шлюзу RegRuSRS даны в третьей колонке таблицы операций, приведённой в разделе 3.1 (список операций).

Также для некоторых операций в данной таблице приведены примеры на Perl.

Внимание! Не устанавливайте для Ваших клиентов web-формы, содержащие Ваши авторизационные данные, т.к. клиенты могут легко узнать Ваш login и пароль. Для обеспечения безопасности, запросы должны отправляться программой на стороне сервера.

10. Советы по эффективному использованию Reg.API

Считаем своим долгом дать ряд практических советов, которые позволят, с одной стороны, уменьшить вероятность превышения допустимого количества запросов к Reg.API и следующего за этим временного блокирования операций партнёра, и, с другой стороны, снизить нагрузку на систему регистрации RegRuSRS.

  • Рекомендуем осуществлять WHOIS-запросы по доменам не через Reg.API, а обращаясь напрямую к WHOIS-серверам соответствующих доменных зон.

    При этом Вы получаете следующие преимущества:

    1. ответ на WHOIS-запрос будет получен Вами быстрее,
    2. предлагаемая схема более надёжна, поскольку исключаются лишние звенья,
    3. уменьшается вероятность блокировки при превышении лимита запросов к API за счёт сокращения общего количества API-запросов.

    Мы предлагаем готовые программные решения, которые могут облегчить Ваши трудозатраты перехода на правильную схему реализации функционала для осуществления WHOIS-запросов. А именно, мы предлагаем готовый код для осуществления WHOIS-запросов для языка Perl и для PHP:

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

  • Рекомендуем обращаться к API только для совершения заказов / изменения данных, но не для получения информации.

    Программное обеспечение некоторых наших партнёров либо не хранит, либо хранит неполную информацию о доменах в локальной базе данных. В результате эта информация очень часто динамически скачивается с нашей системы регистрации: через функции domain_list, domain_get_info, domain_get_contacts, domain_get_nss и т. п. Рекомендуем хранить полную информацию о доменах и услугах локально и обращаться к Reg.API только при необходимости изменения информации в реестре. В этом случае Ваша система будет работать быстрее и надёжнее, будет меньше зависеть от доступности нашей системы регистрации с Вашего сервера.

  • Рекомендуем выполнять все запросы на изменение данных асинхронно.

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

    Подобная схема взаимодействия является крайне ненадёжной и в конечном итоге неудобной для Ваших клиентов.

    Рекомендуем осуществлять все запросы по заказу услуг / изменению данных асинхронно, через механизм очередей. В этом случае:

    1. исключаются блокировки API-запросов (параллельно выполняться только один API-запрос, поскольку очередь можно обрабатывать в один поток);
    2. в случае отсутствия связи запрос может повторяться, пока он не будет выполнен (таким образом существенно увеличивается надёжность системы);
    3. в случае ошибок при обработке запросов (если Reg.API вернул код ошибки) партнёр может решить проблему и повторить заявку, при этом клиент не получает лишних сообщений об ошибках: большинство проблем могут решаться партнёром самостоятельно, без ведома и участия клиента.

  • Рекомендуем выполнять на Вашей стороне логгирование всех API-запросов и ответов.

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

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