Документация на Рег.API 2
|
1. Введение
Для повышения удобства технического взаимодействия клиентов и партнёров компании «Регистратор доменных имён REG.RU» с распределённой системой регистрации (далее RegRuSRS) был реализован простой и доступный программный интерфейс — REG.API, работающий поверх протокола HTTP. Мы думаем, что использование REG.API делает наше техническое взаимодействие с клиентами и партнёрами более эффективным.
Данное руководство описывает интерфейс доступа к REG.API второй версии, являющейся развитием API предыдущих версий, и предназначено для программистов, автоматизирующих взаимодействие с RegRuSRS.
Предполагается, что читатель знаком с основами HTTP и имеет навыки программирования.
1.1. Преимущества API 2.0 по сравнению с API 1.0
- Унифицированная передача сложных структур данных.
- Большая гибкость в выборе форматов передачи данных: возможность передачи входных параметров в форматах plain HTTP, JSON или XML, выходных — в виде JSON, YAML, XML или plain text.
- Возможность параллельного выполнения нескольких нефинансовых операций одним пользователем.
- Возможность работы с различными кодировками (по умолчанию utf8; также поддерживаются cp1251, koi8-r, koi8-u, cp866).
- Многоязычные варианты ответов системы.
- Выдача расширенной информации об ошибках.
- Унифицированный способ идентификации доменов и услуг, с которыми производится операция.
- Различные способы идентификации услуг: кроме имени домена, теперь вы можете использовать наши идентификаторы услуг в системе, которые позволяют всегда точно и легко указать нужную услугу.
- Расширенные возможности отладки: различные тестовые функции, возможность просмотра входных параметров (с целью контроля правильности их передачи и декодирования).
- Возможность выставлять в поле Content-type в ответах системы любое удобное для Вас значение.
- Большая часть функций доступна и обычным пользователям! Вам необязательно быть партнёром!
1.2. Рекомендации по эффективному взаимодействию с API
За время более чем двухлетней эксплуатации REG.API был накоплен значительный опыт технического взаимодействия с партнёрами, выявлены типичные проблемы взаимодействия.
Одной из проблем, с которой сталкиваются партнёры, является превышение лимита запросов к REG.API (1200 запросов в час для клиента/ip). Оба лимита действуют единовременно. Если один из лимитов превышен, REG.API устанавливает код ошибки (в зависимости от типа лимита) в IP_EXCEEDED_ALLOWED_CONNECTION_RATE или ACCOUNT_EXCEEDED_ALLOWED_CONNECTION_RATE.
Анализ подобных ситуаций позволяет однозначно заключить, что проблема в подобных случаях заключается в неправильном / нецелевом использовании API в связи с ошибками либо архитектурными просчётами в программном обеспечении на стороне партнёров.
Считаем своим долгом дать ряд практических советов, которые позволят, с одной стороны, уменьшить вероятность превышения допустимого количества запросов к REG.API и следующего за этим временного блокирования операций партнёра и, с другой стороны, снизить нагрузку на систему регистрации RegRuSRS.
-
Рекомендуем осуществлять WHOIS-запросы по доменам (для отображения информации WHOIS на Ваших сайтах) не через REG.API, а обращаясь напрямую к WHOIS-серверам соответствующих доменных зон.
При этом Вы получаете следующие преимущества:
- ответ на WHOIS-запрос будет получен Вами быстрее,
- предлагаемая схема более надёжна, поскольку исключаются лишние звенья,
- уменьшается вероятность блокировки при превышении лимита запросов к API за счёт сокращения общего количества API-запросов.
Мы предлагаем готовые программные решения, которые могут облегчить Ваши трудозатраты перехода на правильную схему реализации функционала для осуществления WHOIS-запросов.
-
Рекомендуем обращаться к API только для совершения заказов / изменения данных, но не для получения информации. Программное обеспечение некоторых наших партнёров либо не хранит, либо хранит неполную информацию о доменах в локальной базе данных. В результате эта информация очень часто динамически скачивается с нашей системы регистрации через функции domain_list, service/get_info, service/get_details, domain/get_nss и т. п. Рекомендуем хранить полную информацию о доменах и услугах локально и обращаться к REG.API только при необходимости изменения информации в реестре. В этом случае Ваша система будет работать быстрее и надёжнее, будет меньше зависеть от доступности нашей системы регистрации с Вашего сервера.
-
Рекомендуем выполнять все запросы на изменение данных асинхронно.
Программное обеспечение некоторых наших партнёров осуществляет операции по регистрации доменов и услуг и изменению данных непосредственно в момент обработки HTTP-запроса от клиента. При этом если API-запрос не выполняется по каким-либо причинам сразу (отсутствие связи, превышение лимита запросов, блокировки параллельных запросов), то соответствующий запрос фактически теряется и клиент партнёра получает сообщение об ошибке.
Подобная схема взаимодействия является крайне ненадёжной и в конечном итоге неудобной для Ваших клиентов.
Рекомендуем осуществлять все запросы по заказу услуг / изменению данных асинхронно, через механизм очередей. В этом случае:
- исключаются блокировки API-запросов (параллельно выполняется только один API-запрос, поскольку очередь можно обрабатывать в один поток);
- в случае отсутствия связи запрос может повторяться, пока он не будет выполнен (таким образом существенно увеличивается надёжность системы);
- в случае ошибок при обработке запросов (если REG.API вернул код ошибки) партнёр может решить проблему и повторить заявку, при этом клиент не получает лишних сообщений об ошибках — большинство проблем могут решаться партнёром самостоятельно, без ведома и участия клиента.
-
Используйте массовые операции по мере возможности. Многие методы поддерживают операции над несколькими услугами и доменами одновременно.
-
Рекомендуем выполнять на Вашей стороне логирование всех API-запросов и ответов. При этом в случае возникновения каких-либо проблем в процессе взаимодействия наличие журнала позволит гораздо эффективнее диагностировать проблемы на Вашей стороне, а также более грамотно обращаться в нашу службу технической поддержки, приводя выдержки из журналов, описывающие проблему.
2. Общее описание REG.API 2.0
2.1. Общий принцип взаимодействия
Транспортным протоколом для вызова функций REG.API является HTTP (HTTPS). В REG.API поддерживаются запросы методом POST, т.к. он не имеет ограничений на длину запроса и является более безопасным, с передачей параметров в form data.
ВНИМАНИЕ! HTTP GET и передача параметров в строке запроса DEPRECATED. Поддержка GET-запросов прекращена в связи с требованиями безопасности.
Каждый вызов является атомарным и синхронным, то есть все запросы независимы друг от друга. Также все операции являются синхронными: результат операции возвращается сразу же, нет промежуточных состояний при выполнении операции. Выбор в пользу такого способа взаимодействия был сделан для удобства подключения к REG.API со стороны клиентов.
Параллельная обработка вызовов доступна для запросов, не изменяющих балланс клиента на счёте провайдера REG.API.
2.2. Формат запроса
URL для вызова функций выглядит следующим образом:
https://api.reg.ru/api/regru2/<имя_категории_функции>/<имя_функции>
Таким образом, для каждой функции имеем собственный URL для её вызова (в API 1.0 URL для всех функций был одинаковым, а вызываемая функция идентифицировалась с помощью параметра action
).
Практически все функции требуют дополнительных параметров для своего вызова.
2.2.1. Виды входных параметров
Передаваемые параметры можно разделить на несколько категорий:
- параметры аутентификации;
- параметры идентификации услуги;
- параметры управления работой API;
- параметры, специфичные для конкретной функции.
Из перечисленных четырех видов входных параметров обязательными практически для всех функций являются параметры аутентификации. Конкретный набор необходимых параметров варьируется от функции к функции и документирован в описании конкретных функций.
2.2.2. Передача входных параметров
Все дополнительные параметры, если они есть, можно передавать в виде стандартных HTTP-параметров POST, где передаваемые данные кодируются как x-www-form-urlencoded.
Пример передачи параметров через POST запрос:
https://api.reg.ru/api/regru2/nop
output_content_type=plain
password=test
username=test
При использовании curl необходимо значения всех параметров заключать в кавычки во избежание интерпретации shell-интерпретатором спецсимволов.
Пример запроса через curl:
curl -X POST -H 'Content-Type: application/x-www-form-urlencoded' -d 'username=test&password=test&output_content_type=plain' 'https://api.reg.ru/api/regru2/nop'
Параметры функции также можно передавать в форматах JSON или XML В этом случае все параметры, сериализованные в строку, передаются как один HTTP-параметр через поле input_data.
Пример передачи сериализованных параметров с помощью curl через запрос POST:
curl -X POST -H 'Content-Type: application/x-www-form-urlencoded' -d 'input_format=json&input_data=%7B%22username%22%3A%22test%22%2C%22password%22%3A%22test%22%2C%22output_content_type%22%3A%22plain%22%7D' 'https://api.reg.ru/api/regru2/nop'
Пример вызова со сложной структурой можно посмотреть, например, в описании функции set_rereg_bids.
При необходимости передачи сложных структур данных использование JSON и XML — единственный способ их передать.
2.2.3. Форматы входных параметров
Передача данных возможна в нескольких форматах: как простые параметры HTTP-запроса POST, который далее условно будет называться «PLAIN», так и JSON и XML. Для наглядности их лучше рассмотреть на примерах передачи данных с ответом в JSON и выводом всех полученных данных, дополнительно указав для этого входной параметрshow_input_params = 1
. Чтобы показать возможность передачи списка данных, в запрос добавлен список leftdata
, не несущий никакой функциональности.
2.2.3.1. Формат «PLAIN» (простые параметры HTTP)
Поля input_format и input_data
отсутствуют
Пример запроса:
https://api.reg.ru/api/regru2/domain/nop
domain_name=qqq.ru
leftdata=3
output_content_type=plain
password=test
show_input_params=1
username=test
Пример успешного ответа:
{
"answer" : {
"service_id" : "123456"
},
"input_params" : {
"domain_name" : "qqq.ru",
"leftdata" : [
"1",
"2",
"3"
],
"output_content_type" : "plain",
"password" : "test",
"show_input_params" : "1",
"username" : "test"
},
"result" : "success"
}
2.2.3.2. Формат JSON
Значение поля input_format
json
Пример запроса:
https://api.reg.ru/api/regru2/domain/nop
input_data={"output_content_type":"plain","show_input_params":1,"domain_name":"qqq.ru","leftdata":[1,2,3]}
input_format=json
password=test
username=test
Пример успешного ответа:
{
"input_params" : {
"show_input_params" : "1",
"output_content_type" : "plain",
"domain_name" : "qqq.ru",
"password" : "test",
"leftdata" : [
"1",
"2",
"3"
],
"username" : "test"
},
"answer" : {
"service_id" : "123456"
},
"result" : "success"
}
2.2.3.3. Формат XML
Значение поля input_format
xml
Пример запроса:
https://api.reg.ru/api/regru2/domain/nop
input_data=<opt%20domain_name="qqq.ru"%20output_content_type="plain"%20show_input_params="1"><leftdata>1</leftdata><leftdata>2</leftdata><leftdata>3</leftdata></opt>
input_format=xml
password=test
username=test
Пример успешного ответа:
{
"input_params" : {
"domain_name" : "qqq.ru",
"show_input_params" : "1",
"output_content_type" : "plain",
"password" : "test",
"input_format" : "xml",
"leftdata" : [
"1",
"2",
"3"
],
"username" : "test",
},
"answer" : {
"service_id" : "123456"
},
"result" : "success"
}
2.2.4. Общие входные параметры
Конкретный набор необходимых параметров варьируется от функции к функции, однако часть параметров применима ко всем или к большинству функций. Эти параметры описаны в данном разделе.2.2.4.1. Параметры для аутентификации
Эти параметры являются необходимыми для функций, требующих аутентификации. Это поля username
+ password
либо username
+ signature
(выбор варианта зависит от используемого способа авторизации). Если включена дополнительная проверка SSL-сертификата, то необходимо передавать его в заголовке каждого запроса к API при любом способе аутентификации. Примеры приведены ниже.
Аутентификация по паролю
Параметр | Описание |
---|---|
username | Имя пользователя (login) в системе RegRuSRS. |
password | Основной пароль пользователя в системе регистрации REG.RU, либо альтернативный пароль для API, который задаётся на странице «Настройки Партнёра». |
Пример запроса:
Ещё примеры использования см. ниже.
Аутентификация по сигнатуре
Параметр | Описание |
---|---|
username | Имя пользователя (login) в системе RegRu. |
sig | Закодированная Base64 RSA сигнатура sha1 хеша, подписанная ssl-сертификатом |
Сигнатура (подпись) создаётся на основе передаваемых параметров. Текст для подписи — объединенный через символ "точка с запятой" отсортированный массив UTF-8 строк, полученных из значений передаваемых параметров. Ноль, пустая строка и неопределенное значение следует игнорировать. Не забудьте включить сюда также значения username
Подпись осуществляется приватным RSA ключом, соответствующий которому сертификат был ранее загружен при настройках безопасности.
В качестве примера рассмотрим получение данных следующим запросом:
https://api.reg.ru/api/regru2/domain/nop
username=test
output_content_type=plain
show_input_params=1
domain_name=qqq.ru
leftdata=1
leftdata=2
leftdata=3
В этом запросе участвуют значения параметров: test, test, plain, 1, qqq.ru, 1, 2, 3. Отсортируем их и объединим через точку с запятой, получив строку: "1;1;2;3;plain;qqq.ru;test;test", которую подписываем при помощи личного ключа в командной строке:
echo -n "1;1;2;3;plain;qqq.ru;test" | openssl dgst -sign my.key -sha1 | openssl enc -base64 -out my.sig
В результате мы получили в файле my.sig закодированную base64 подпись для вышеприведенного запроса. Обращаем внимание на параметр -n команды echo, чтобы в подписываемый текст не попал символ перевода строки.
Теперь отправим запрос на сервер при помощи curl:
curl -X POST -F 'sig=<my.sig' -F 'username=test' -F 'output_content_type=plain' -F 'show_input_params=\
1' -F 'domain_name=qqq.ru' -F 'leftdata=1' -F 'leftdata=2' -F 'leftdata=\
3' 'https://api.reg.ru/api/regru2/domain/nop'
Вместо логина test нужно использовать своё имя пользователя. Для логина test доступ к API по сигнатуре не активирован.
Ещё один пример, а так же готовую функцию генерации подписи см. ниже.
Аутентификация c дополнительным использованием SSL сертификата
Дополнительная проверка может использоваться как при аутентификации по паролю, так и при аутентификации по сигнатуре. Для дополнительной аутентификации используется тот же ssl-сертификат, что и для сигнатуры — пример генерации сертификата приведен выше. Данная проверка включается в настройках безопасности в ЛК чекбоксом "Использовать SSL cертификат для доступа к API.". При активированной проверке SSL-сертификата, в каждом запросе необходимо в заголовке передавать публичный ключ сертификата.
Пример запроса с авторизацией по паролю при помощи curl:
curl -X POST -k --key my.key --cert my.crt -d 'username=test&password=test&output_content_type=\
plain&show_input_params=1&domain_name=qqq.ru&leftdata=1&leftdata=2&leftdata=\
3' 'https://api.reg.ru/api/regru2/domain/nop'
Пример запроса на сервер с авторизацией по сигнатуре при помощи curl:
curl -X POST -k --key my.key --cert my.crt -F 'sig=<my.sig' -F 'username=test' -F \
'output_content_type=plain' -F 'show_input_params=1' -F 'domain_name=qqq.ru' -F 'leftdata=\
1' -F 'leftdata=2' -F 'leftdata=3' 'https://api.reg.ru/api/regru2/domain/nop'
Вместо test нужно использовать свой логин. Для логина test доступ к API с использованием SSL сертификата не возможен.
Общий пример php-кода, где приведены авторизация с использованием сигнатуры и SSL-сертификата. Вызов идет к методу проверки доступности домена для регистрации.
#!/usr/bin/php
<?php
$params =
[
'dname' => 'yayayayayaya.ru',
'input_format' => 'plain',
'username' => 'test',
];
$sig_params = $params;
sort($sig_params);
$pkeyid = openssl_pkey_get_private("file:///path/my.key");
openssl_sign( implode(';', $sig_params), $sig, $pkeyid );
$params['sig'] = base64_encode($sig);
$url = 'https://api.reg.ru/api/regru2/domain/check';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_SSLCERT, getcwd() . "/my.crt");
curl_setopt($curl, CURLOPT_SSLKEY, getcwd() . "/my.key");
curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $params);
$result = curl_exec($curl);
curl_close($curl);
$result = json_decode(urldecode($result),true);
echo "\n";
print_r($result);
echo "\n";
?>
Код на PHP для обращения к тому же методу, но с аутентификацией только по сигнатуре, без проверки клиентского SSL-сертификата.
#!/usr/bin/php
<?php
$params =
[
'dname' => 'yayayayayaya.ru',
'input_format' => 'plain',
'username' => 'test',
];
$sig_params = $params; # clone
sort($sig_params);
$pkeyid = openssl_pkey_get_private("file:///path/my.key");
openssl_sign( implode(';', $sig_params), $sig, $pkeyid );
$params['sig'] = base64_encode($sig);
$url = 'https://api.reg.ru/api/regru2/domain/check';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $params);
$result = curl_exec($curl);
curl_close($curl);
$result = json_decode(urldecode($result),true);
echo "\n";
print_r($result);
echo "\n";
?>
Общий пример perl-кода, где приведены авторизация по паролю и с использованием сигнатуры, вызовы nop-ов и более сложный вариант — регистрация домена.
#!/usr/bin/perl
use Data::Dumper;
use MIME::Base64;
use JSON::XS;
use Crypt::OpenSSL::X509;
use Crypt::OpenSSL::RSA;
use LWP;
use strict;
use warnings;
my $ua = LWP::UserAgent->new(
parse_head => 0,
timeout => 5,
keep_alive => 30,
);
my $url = 'https://api.reg.ru';
print "login by password\n";
my %pas_form = (
username => 'test',
password => 'test',
show_input_params => '1',
);
my $response = $ua->post( $url . '/api/regru2/reseller_nop', \%pas_form );
if ( $response->code == 200 ) {
print "req ok: code 200\n";
}
else {
print "req fail: code " . $response->code . "\n";
exit;
}
print "answer:\n" . $response->content . "\n";
print "login by signature\n";
# for get RSA PRIVATE KEY from pem PRIVATE KEY need use openssl
my $private_key = '-----BEGIN RSA PRIVATE KEY-----
MII< hidden data >A==
-----END RSA PRIVATE KEY-----';
# or read private_key from file
my %sig_form = (
username => 'test',
show_input_params => '1',
show_sig_params => '1',
);
my $sigtext = make_text_for_sig( \%sig_form );
print "$sigtext\n";
my $rsa_priv = Crypt::OpenSSL::RSA->new_private_key( $private_key );
$rsa_priv->use_sha1_hash();
my $signature = $rsa_priv->sign( $sigtext );
my $sig = encode_base64( $signature );
print "$sig\n";
$sig_form{sig} = $sig;
$response = $ua->post( $url . '/api/regru2/reseller_nop', \%sig_form );
if ( $response->code == 200 ) {
print "req ok: code 200\n";
}
else {
print "req fail: code " . $response->code . "\n";
exit;
}
print "answer:\n" . $response->content . "\n";
print "create using login by signature\n";
my %cre_form = (
username => 'pppp',
input_format => 'json',
input_data => {
'contacts' => {
'b_fax' => '+7.9665443322',
't_addr' => 'Bolshoy sobachiy, 33',
'a_state' => 'Moskva',
'o_fax' => '+7.9665443322',
'o_postcode' => '291000',
't_phone' => '+7.9665443322',
'a_fax' => '+7.9665443322',
'o_addr' => 'Bolshoy sobachiy, 33',
'a_email' => 'sig@ya.ru',
'a_addr' => 'Bolshoy sobachiy, 33',
't_company' => 'FirmA, LLC',
'b_phone' => '+7.9665443322',
'o_company' => 'FirmA, LLC',
'o_city' => 'Moscow',
'b_first_name' => 'Ivan',
't_city' => 'Moscow',
'b_state' => 'Moskva',
'a_postcode' => '291000',
't_first_name' => 'Ivan',
't_state' => 'Moskva',
't_email' => 'sig@ya.ru',
'a_country_code' => 'RU',
'o_phone' => '+7.9665443322',
'a_city' => 'Moscow',
't_country_code' => 'RU',
'b_last_name' => 'Ivanoff',
'a_phone' => '+7.9665443322',
't_postcode' => '291000',
't_last_name' => 'Ivanoff',
'b_addr' => 'Bolshoy sobachiy, 33',
'b_company' => 'FirmA, LLC',
'o_last_name' => 'Ivanoff',
'b_country_code' => 'RU',
'a_company' => 'FirmA, LLC',
'b_email' => 'sig@ya.ru',
'a_last_name' => 'Ivanoff',
't_addr' => 'Bolshoy sobachiy, 33',
'b_city' => 'Moscow',
'o_state' => 'Moskva',
'o_first_name' => 'Ivan',
't_fax' => '+7.9665443322',
'b_postcode' => '291000',
'o_country_code' => 'RU',
'o_email' => 'sig@ya.ru',
'a_first_name' => 'Ivan'
},
'domain_name' => '', # not to register the domain and to receive a registration error
'nss' => {},
'enduser_ip' => '10.11.12.13',
},
show_input_params => '1',
show_sig_params => '1',
);
# or use this data:
# 'domains' => [ { 'dname' => 'test.com' } ],
# 'nss' => { 'ns0' => 'ns1.reg.ru', 'ns1' => 'ns2.reg.ru' },
my $sigtext = make_text_for_sig( \%cre_form );
print "$sigtext\n";
$rsa_priv->use_sha1_hash();
$signature = $rsa_priv->sign( $sigtext );
$sig = encode_base64( $signature );
print "$sig\n";
$cre_form{sig} = $sig;
$cre_form{input_data} = JSON::XS->new->utf8->encode( $cre_form{input_data} );
$response = $ua->post( $url . '/api/regru2/domain/create', \%cre_form );
if ( $response->code == 200 ) {
print "req ok: code 200\n";
}
else {
print "req fail: code " . $response->code . "\n";
exit;
}
print "answer:\n" . $response->content . "\n";
# functions for generation of a signature
sub make_text_for_sig {
return join ';', sort( _make_text_for_sig(@_) );
}
sub _make_text_for_sig {
my ( $d ) = @_;
if ( ref $d eq 'ARRAY' ) {
return map { _make_text_for_sig( $_ ) } @$d;
}
elsif ( ref $d eq 'HASH' ) {
return map { _make_text_for_sig( $$d{$_} ) } grep { $_ ne 'sig' } keys %$d;
}
elsif ( not ref $d and $d ) {
return $d;
}
return ();
}
2.2.4.2. Параметры для управления работой API
К дополнительным параметрам можно отнести общие параметры управления работой API и параметры идентификации услуги.
К общим параметрам управления работой API относятся функции управления форматом входных и выходных параметров функции, выбора рабочей кодировки и языка.
2.2.4.3. Параметры для идентификации услуги
Параметры идентификации услуги требуются при выполнении операций над конкретной ранее заказанной услугой, когда её надо сначала идентифицировать.
Возможны следующие варианты идентификации:
- по ID услуги (как для доменов, так и для услуг),
- по имени домена (для доменов),
- по имени домена и типу услуги (для услуг),
- по ID родительской услуги, типу услуги и подтипу услуги (для услуг).
Наиболее точной и быстрой является идентификация по числовому идентификатору услуги, поэтому мы рекомендуем хранить на своей стороне и использовать ID домена/услуги и при вызовах передавать идентификатор услуги.
Параметр | Описание |
---|---|
Идентификация по ID-услуги (рекомендуется) | |
service_id | Числовой идентификатор услуги. |
Идентификация по ID-услуги, задаваемому пользователем | |
user_servid | Число-буквенный идентификатор услуги, для его использования надо сам идентификатор задать при создании услуги/домена. Получить ранее заданный идентификатор можно используя функцию service/get_info. |
Идентификация доменов по имени | |
domain_name | Имя домена. Русские имена доменов передаются в кодировке punycode либо в национальной кодировке. |
Идентификация услуг по имени домена и типу услуги (кроме VPS) | |
domain_name | Имя домена, к которому привязана услуга. Русские имена доменов передаются в кодировке punycode либо в национальной кодировке. |
servtype | Тип услуги. Например «srv_hosting_ispmgr» для хостинга или «srv_webfwd» для услуги web-forwarding. |
Идентификация услуг по ID родительской услуги, типу услуги и подтипу услуги | |
uplink_service_id | ID родительской услуги, с которой связана искомая услуга. |
servtype | Тип услуги. Например «srv_hosting_ispmgr» для хостинга или «srv_webfwd» для услуги web-forwarding. |
subtype | Подтип услуги. Например «pro» для лицензии ISP Manager Pro. |
2.2.4.4. Параметры для идентификации списка услуг
Параметр | Описание |
---|---|
domains | Список, каждый элемент которого содержит имя домена или его service_id в соответствии со стандартными параметрами идентификации услуги. В одном запросе можно обратиться не более чем к 1000 услугам. |
services | Список, каждый элемент которого содержит имя домена + тип сервиса или его service_id в соответствии со стандартными параметрами идентификации услуги. |
В общем виде input_data в формате JSON для такого запроса выглядит так:
input_data={"services":[{"параметр_идентификации_услуги_1":"значение",...},
{"параметр_идентификации_услуги_2":"значение",...}]}
Ответ при запросе со списком услуг будет так же содержать список и для каждой услуги будет указан результат в поле result
. В случае успеха это будет success, в случае ошибки — текст самой ошибки, а также поле error_code со стандартным кодом ошибки, совпадающим с кодом при запросе 1 домена.
Пример: получение service_id услуг используя service/nop с ошибками в двух последних значениях
{
"answer" : {
"services" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : 12345,
"servtype" : "domain"
},
{
"dname" : "test.su",
"result" : "success",
"service_id" : 12346,
"servtype" : "srv_hosting_ispmgr"
},
{
"dname" : "test12347.ru",
"result" : "success",
"service_id" : "111111",
"servtype" : "domain"
},
{
"error_code" : "INVALID_SERVICE_ID",
"error_text" : "service_id is invalid",
"result" : "error",
"service_id" : "22bug22"
},
{
"error_code" : "NO_DOMAIN",
"error_text" : "domain_name not given or empty",
"result" : "error",
"surprise" : "surprise.ru"
}
]
},
"charset" : "utf-8",
"messagestore" : null,
"result" : "success"
}
Ниже, при детальном описании каждой функции, будет указана поддержка обработки списка услуг.
2.2.4.5. Параметры для идентификации папки
В данном разделе описаны способы идентификации папок.
Наиболее точной и быстрой идентификацией папок является идентификация по числовому идентификатору папки folder_id
, поэтому мы рекомендуем хранить на своей стороне и использовать ID папки и при вызовах передавать числовой идентификатор папки.
Параметр | Описание |
---|---|
folder_id | Числовой идентификатор папки (рекомендуется). |
folder_name | Имя папки. |
2.2.4.6. Параметры оплаты
В данном разделе описаны общие параметры для функций, связанных с заказом или продлением услуг, т. е. функций, которые задействуют оплату.
Параметр | Описание |
---|---|
pay_type | Способ оплаты счёта. На данный момент доступные такие варианты оплаты: (bank, pbank, prepay, yacard) Значение по умолчанию: prepay. Заметьте, что автоматически счёт может быть оплачен только при выборе способа оплаты prepay и наличии достаточного количества средств на лицевом счёте. В противном случае заявка будет помечена как неоплаченная и Вам нужно убдет вручную оплачивать её из «Личного кабинета». |
ok_if_no_money | Разрешает создавать счет, если денег для оплаты недостаточно. В этом случае заявка в системе создаётся, однако эта заявка будет исполнена только после выполнения операции «сменить способ оплаты счёта» через web-интерфейс системы. Если флаг не установлен и денег на счёте недостаточно - возвращается ошибка и заявка не создается. |
2.3. Формат ответа
2.3.1. Передача выходных параметров
Все функции могут возвращать ответы в форматах JSON, YAML, XML и plain text. По умолчанию используется JSON. Выходной формат передачи данных переключается с помощью опции output_format.
Некоторые функции имеют дополнительные форматы вывода, помимо перечисленных. Например, функция get_rereg_data может отдавать данные в CSV формате.
2.3.1.1. Формат JSON
Значение поля output_format
- json
Примеры запросов:
https://api.reg.ru/api/regru2/nop
password=test
username=test
https://api.reg.ru/api/regru2/nop
output_format=json
password=test
username=test
Пример ответа:
{
"answer" : {
"login" : "test",
"user_id" : 0
},
"charset" : "utf-8",
"messagestore" : null,
"result" : "success"
}
2.3.1.2. Формат YAML
Значение поля output_format
- yaml
Пример запроса:
https://api.reg.ru/api/regru2/nop
output_format=yaml
password=test
username=test
Пример ответа:
---
answer:
login: test
user_id: 0
charset: utf-8
messagestore: !!perl/hash:SRS::MessageStore
_messages: {}
result: success
2.3.1.3. Формат XML
Значение поля output_format
- xml
Пример запроса:
https://api.reg.ru/api/regru2/nop
output_format=xml
password=test
username=test
Пример ответа:
<opt charset="utf-8" result="success">
<answer login="test" user_id="0" />
<messagestore name="_messages" />
</opt>
2.3.1.4. Формат PLAIN
В данном формате ответ возвращается в упрощённом виде: не возвращаются сложные / вложенные структуры данных. В связи с данным ограничением не рекомендуется использовать этот формат.
Значение поля output_format
- plain
Пример запроса:
https://api.reg.ru/api/regru2/nop
output_format=plain
password=test
username=test
Пример ответа:
Success: ; login: test; user_id: 0
2.3.2. Общие выходные параметры
Все ответы API функций (как ошибки, так и успешные ответы) стандартизованы.
Обязательным полем для любого ответа является result. Оно может иметь значения "error" или "success".
Поля, присутствующие в положительном ответе:
Поле | Описание |
---|---|
result | Имеет значение success. |
answer | Хеш, содержащий результат работы функции. |
input_params | Хеш с параметрами, переданными при вызове функции. Присутствует, если вызов был с show_input_params=1 . |
Пример положительного ответа:
{
"answer" : {
"login" : "test",
"user_id" : "0"
},
"charset" : "utf-8",
"messagestore" : null,
"result" : "success"
}
Поля, возвращаемые в случае ошибки:
Поле | Описание |
---|---|
result | Имеет значение error. |
error_code | Код ошибки, который представляет собой предложение в верхнем регистре с использованием "_" в качестве разделителей и является уникальным внутри системы. Предназначен для анализа ошибок на уровне программ. Для пользователей создано поле error_text. |
error_text | Подробное описание ошибки на английском или русском, в зависимости от входного параметра lang. |
error_params | Параметры, подставляемые в стандартный текст ошибки, могут быть полезны при автоматическом разборе ошибок. |
input_params | Хеш с параметрами, переданными при вызове функции. Присутствует, если вызов был с show_input_params=1. |
Пример ответа, возвращающего ошибку:
{
"error_code" : "PASSWORD_AUTH_FAILED",
"error_text" : "Username/password incorrect",
"result" : "error"
}
Обращаем Ваше внимание на то, что тексты в поле error_text не предназначены для автоматической обработки и могут быть изменены без дополнительного уведомления с нашей стороны. Не рекомендуем использовать данное поле для автоматической обработки результатов выполнения запросов.
Также следует обратить внимание что существует 2 уровня ошибок: 1 - уровень всей команды, 2 - уровень конкретных услуг в командах, которые оперируют не одной, а несколькими услугами.
Например, в нижеприведенном ответе первый уровень был выполнен успешно, а во втором уровне успех зависел от идентификатора услуги:
{
"answer" : {
"services" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : 12345,
"servtype" : "domain"
},
{
"dname" : "test.su",
"result" : "success",
"service_id" : 12346,
"servtype" : "srv_hosting_ispmgr"
},
{
"dname" : "test12347.ru",
"result" : "success",
"service_id" : "111111",
"servtype" : "domain"
},
{
"error_code" : "INVALID_SERVICE_ID",
"error_text" : "service_id is invalid",
"result" : "error",
"service_id" : "22bug22"
},
{
"error_code" : "NO_DOMAIN",
"error_text" : "domain_name not given or empty",
"result" : "error",
"surprise" : "surprise.ru"
}
]
},
"charset" : "utf-8",
"messagestore" : null,
"result" : "success"
}
В целом команда выполнена успешно, о чем говорит результат "success", но для услуг (доменов) "22bug22" и "surprise.ru" были возвращены коды ошибок "INVALID_SERVICE_ID" и "NO_DOMAIN", соответственно.
То есть в отличии от ответов на простые команды:
{
"service_id" : "22bug22",
"result" : "service_id is invalid",
"error_code" : "INVALID_SERVICE_ID"
}
и
{
"surprise" : "surprise.ru",
"result" : "domain_name not given or empty",
"error_code" : "NO_DOMAIN"
}
для команд, работающих с несколькими услугами, необходимо также проверять результаты и коды ошибок по каждой услуги отдельно:
{
"answer" : {
"domains" : [
{
"dname" : "ya.ru",
"error_code" : "DOMAIN_ALREADY_EXISTS",
"result" : "Domain already exists, use whois service"
},
{
"dname" : "yayayayayaya.ru",
"result" : "Available"
},
{
"dname" : "xn--000.com",
"error_code" : "INVALID_DOMAIN_NAME_PUNYCODE",
"result" : "Invalid punycode value for domain_name"
}
]
},
"charset" : "utf-8",
"messagestore" : null,
"result" : "success"
}
2.3.3. Общие коды ошибок
Ошибки запроса
Код ошибки | error_text | Описание |
---|---|---|
ONLY_POST_ALLOWED | Only HTTP method POST allowed | Допускается только HTTP метод POST. |
QUERY_PARAMS_DISALLOWED | Query string parameters are disallowed. Pass parameters in form data. | Передача параметров в строке запроса не допускается. Необходимо передавать параметры в form data. |
Ошибки авторизации
Код ошибки | error_text | Описание |
---|---|---|
NO_USERNAME | No username given | Не указано имя пользователя |
NO_AUTH | No authorization mechanism selected | Не определён способ авторизации |
PASSWORD_AUTH_FAILED | Username/password Incorrect | Ошибка аутентификации по паролю |
RESELLER_AUTH_FAILED | Only resellers can access to this function | Только партнёры имеют доступ к этой функции |
ACCESS_DENIED | Your access to API denied. Please, contact us | Ваш доступ к API заблокирован, обратитесь, пожалуйста, в тех.поддержку |
PURCHASES_DISABLED | Purchases disabled for this account | Покупки/заказы для этого аккаунта запрещены |
ACCESS_DENIED_FROM_IP | Access to API from this IP denied | Доступ к API с этого IP заблокирован |
ACCOUNT_BLOCKED | Account is blocked. The instructions on how to retrieve access can be found in Profile Page. | Аккаунт заблокирован. Инструкции по восстановлению доступа можно получить в Личном Кабинете. |
USER_AUTHENTICATION_FAILED | Login or password is incorrect. | Неверная почта/логин или пароль. |
MORE_THAN_ONE_ACCOUNT_WITH_THE_SAME_EMAIL | More than one account with the same e-mail found. Please provide a login. | Обнаружено несколько аккаунтов с указанным e-mail адресом. Пожалуйста, введите логин. |
Ошибки идентификации доменов, сервисов, папок
Код ошибки | error_text | Описание |
---|---|---|
DOMAIN_NOT_FOUND | Domain $domain_name not found or not owned by You | Домен $domain_name не найден или вы не являетесь его владельцем |
SERVICE_NOT_FOUND | Service $servtype for ext domain $domain_name not found | Услуга $servtype для домена $domain_name не найдена |
SERVICE_NOT_SPECIFIED | Service identification failed | Ошибка идентификации сервиса |
SERVICE_ID_NOT_FOUND | Service $service_id not found or not owned by You | Услуга с $service_id не найдена или вы не является её владельцем |
NO_DOMAIN | domain_name not given or empty | domain_name не указано или пустое |
INVALID_DOMAIN_NAME_FORMAT | $domain_name is invalid or unsupported zone | Формат $domain_name неверен или необслуживаемая зона |
INVALID_SERVICE_ID | service_id is invalid | Формат service_id неверен |
INVALID_DOMAIN_NAME_PUNYCODE | Invalid punycode value for domain_name | Значение punycode для $domain_name не верно |
BAD_USER_SERVID | Invalid value for user_servid. | Недопустимое значение для user_servid. |
USER_SERVID_IS_NOT_UNIQUE | Field servid is not unique | Поле servid с таким значением уже есть в системе |
TOO_MANY_OBJECTS_IN_ONE_REQUEST | Too many objects (more than $max_objects) specified in one request | Указано слишком много объектов (более $max_objects в одном запросе) |
CLIENT_NOT_FOUND | Customer $client_uid is not found | Клиент с идентификатором $client_uid не найден |
DOMAIN_PROTECTION | Domain protection turn on for this domain or service. API operations disabled | Для данного домена или сервиса включена защита домена. Операции через API запрещены |
NOT_ALLOWED_ORDER_BY_API | Service can't be ordered by API. It's only able in Account | Сервис не может быть заказан через API. Заказ возможен только через аккаунт |
PARTCONTROL_GRANT_DISABLED | Partial control is disabled for this service | Передача данного сервиса в частичное управление запрещена |
Ошибки доступности
Код ошибки | error_text | Описание |
---|---|---|
SERVICE_UNAVAILABLE | Reg.API is temporarily unavailable | Рег.API временно недоступен |
BILLING_LOCK | You have another active connection for billing operation to Reg.API | У вас активно другое соединение c Рег.API, связанное с биллинговыми операциями |
DOMAIN_BAD_NAME | Domain $domain_name is reserved or disallowed by the registry, or is a premium domain offered by special price | Домен $domain_name является зарезервированным или недопустимым к регистрации по правилам реестра, либо premium-доменом, предлагаемым по специальной цене |
DOMAIN_BAD_NAME_ONLYDIGITS | Domain names that contains only digits can not be registered in this zone | Регистрация доменов, имя которых состоит только из цифр, в данной зоне не допускается |
HAVE_MIXED_CODETABLES | You can't mix latin and cyrillic letters in domain names | Недопустимо смешивать кириллические и латинские буквы в имени домена |
DOMAIN_BAD_TLD | Registration in $tld TLD is not available | Регистрация доменов в зоне .$tld не доступна |
TLD_DISABLED | Registration in $tld TLD is not available | Регистрация доменов в зоне .$tld не доступна |
DOMAIN_NAME_MUSTBEENG | Russian letters are not allowed in chosen TLD (.$tld) | Русские буквы недопустимы в названии домена для выбранной зоны (.$tld) |
DOMAIN_NAME_MUSTBERUS | Latin letters are not allowed in chosen TLD (.$tld) | Латинские буквы недопустимы в названии домена для выбранной зоны (.$tld) |
DOMAIN_ALREADY_EXISTS | Domain already exists, use whois service | Домен уже существует, проверьте через whois |
DOMAIN_INVALID_LENGTH | Invalid domain name length, You have entered too short or too long name | Недопустимая длина имени домена, вы ввели либо слишком короткое, либо слишком длинное имя |
DOMAIN_STOP_LIST | Domain is unavailable, this domain name is either reserved or this is premium-domain with special price | Недоступное имя, Этот домен является зарезервированным, либо premium-доменом, предлагаемым по специальной цене |
DOMAIN_STOP_PATTERN | Unfortunately domain name ($domain_name) can't be registered | К сожалению, имя ($domain_name) невозможно зарегистрировать |
FREE_DATE_IN_FUTURE | Domain freeing date is in the long time future | Дата освобождения домена $domain_name наступает в будущем, ПОСЛЕ следующей даты массового освобождения доменов |
NO_DOMAINS_CHECKED | You have chosen no domains for registration | Вы не выбрали ни одного домена для регистрации |
NO_CONTRACT | Filing preschedule for the domain registration after freeing is impossible before You signing up the contract on the domain registration | Подача ДОСРОЧНОЙ заявки на регистрацию домена после освобождения невозможна до заключения вами договора о регистрации доменов |
INVALID_PUNYCODE_INPUT | Invalud Punycode name (error while converting from punycode) | Неверно заданное имя в punycode (ошибка при попытке перекодировки из Punycode) |
CONNECTION_FAILED | Domain check failed: can't connect to server. Please, try again later | Не удалось проверить состояние домена: невозможно установить соединение. Попробуйте повторить попытку позднее |
DOMAIN_ALREADY_ORDERED | The domain name $domain_name was order by you, You can pay for the registration and domain will be registered | Доменное имя $domain_name уже заказано вами ранее к регистрации, вы можете оплатить его и заявка на регистрацию будет исполнена |
DOMAIN_EXPIRED | Domain $domain_name is either expired or will expire in near future | К сожалению, срок делегирования домена $domain_name либо уже истёк, либо истекает в ближайшее время |
DOMAIN_TOO_YOUNG | From registration date of domain $domain_name passed less than 60 days. Please, try to transfer domain later | К сожалению, с момента регистрации домена $domain_name прошло менее 60-ти дней, попробуйте перенести домен позже |
CANT_OBTAIN_EXPDATE | Can't determine expiration date of domain $domain_name | Невозможно определить дату окончания делегирования домена $domain_name |
DOMAIN_CLIENT_TRANSFER_PROHIBITED | Domain $domain_name prohibited for transfer, contact previous registrar to unlock domain transfer | Домен $domain_name запрещён к переносу, cвяжитесь с предыдущим регистратором для разблокирования домена |
DOMAIN_TRANSFER_PROHIBITED_UNKNOWN | Domain $domain_name transfer prohibited, contact our technical support staff for details | Домен $domain_name запрещён к переносу вышестоящим регистратором, cвяжитесь со службой технической поддержки для выяснения подробностей |
DOMAIN_REGISTERED_VIA_DIRECTI | Automatical internal transfers are unavailable in present time | Автоматический перенос доменного имени $domain_name внутри DirectI запрещен |
NOT_FOUND_UNIQUE_REQUIRED_DATA | Not found all data for check unique: dname, servtype or user_id | Не найдены данные для проверки уникальности: dname, servtype или user_id |
NOT_FOUND_UNIQUE_REQUIRED_DATA_IN_MARKET | Not found all data for check unique: market_lot_id, servtype | Not found all data for check unique: market_lot_id, servtype |
ORDER_ALREADY_PAYED | Order on $dname $servtype is already payed | Заказ $dname $servtype уже оплачен ранее $ssru |
DOUBLE_ORDER | You already have not payed order on $dname $servtype | У вас уже есть неоплаченный заказ на $dname $servtype |
DOMAIN_ORDER_LOCKED | The order or renew of the domain is disabled since processing of other operation for the same domain isn't completed yet | Заказ или продление домена заблокировано т.к. ещё не завершена другая операция на этот же домен |
INSTALMENT_NOT_ALLOWED_FOR_SU | Instalment is not allowed for .SU | Частичная оплата недоступна для зоны .SU |
UNAVAILABLE_DOMAIN_ZONE | $tld is unavailable domain zone | $tld не относится к списку поддерживаемых доменных зон |
Ошибки при работе с DNS-зонами
Код ошибки | error_text | Описание |
---|---|---|
DOMAIN_IS_NOT_USE_REGRU_NSS | This domain not use REG.RU name services: ns1.reg.ru and ns2.reg.ru | Этот домен не использует DNS-сервера: ns1.reg.ru и ns2.reg.ru |
REVERSE_ZONE_API_NOT_SUPPORTED | Reverse zone not supported now | Настройка реверсных зон на данный момент не поддерживается |
IP_INVALID | Invalid IP address | Ошибка в IP адресе |
SUBD_INVALID | Invalid subdomain | Неверный поддомен |
CONFLICT_CNAME | Can not set CNAME record together with other record for one subdomain | Для одного поддомена нельзя указывать записи CNAME совместно с другими записями |
UNSUPPORTED_UNICODE_SYMBOL |
Ошибки при работе с DNSSEC
Код ошибки | error_text | Описание |
---|---|---|
DOMAIN_DOESNT_SUPPORT_DNSSEC | This domain doesn't support DNSSEC | Этот домен не поддерживает DNSSEC |
CANT_GET_INFO_FROM_REGISTRY | Can't get information from provider's registry | Невозможно получить информацию из реестра провайдера |
DNSSEC_UPDATING_IN_PROGRESS | DNSSEC updating for domain already in progress | DNSSEC для домена уже находится в процессе обновления |
DOMAIN_USES_REGRU_NSS | This domain uses REG.RU nameservers | Этот домен использует DNS-сервера Рег.ру |
DOMAIN_IS_NOT_USE_REGRU_NSS | This domain not use REG.RU name services: ns1.reg.ru and ns2.reg.ru | Этот домен не использует DNS-сервера: ns1.reg.ru и ns2.reg.ru |
INVALID_RECORDS | Invalid records | Неверные записи |
Другие ошибки
Код ошибки | error_text | Описание |
---|---|---|
NO_SUCH_COMMAND | Command $command_name not found | Команда $command_name не найдена |
HTTPS_ONLY | Access to api over non secure interface (http) prohibited! Please use https only | Доступ к API по небезопасному интерфейсу (http) запрещён! Используйте, пожалуйста, https |
PARAMETER_MISSING | $param required | $param не найден(ы) |
PARAMETER_INCORRECT | $param has incorrect format or data | $param имеет неверный формат или данные |
NOT_ENOUGH_MONEY | Not enough money at account for this operation | Недостаточно денег для этой операции |
INTERNAL_ERROR | Internal error: $error_detail | Внутренняя ошибка: $error_detail |
SERVICE_OPERATIONS_DISABLED | Operations on this service disabled | Операции с услугой запрещены |
UNSUPPORTED_CURRENCY | Unsupported currency | Валюта не поддерживается в системе |
PRICES_NOT_FOUND | Prices not found for servtype $servtype | Для $servtype цены не найдены |
SERVICE_ALREADY_EXISTS | Service already exists | Сервис уже существует |
DOMAIN_IS_NOT_ACTIVE | This domain is not activated yet | Домен не активирован |
DOMAIN_IS_NOT_VERIFIED | Email of the domain name has not been verified | Email домена не верифицирован |
2.4. Аутентификация
Если не добавлено ни одного ip-адреса, то работа с API невозможна. Добавить ip-адрес в список разрешенных можно в «Настройках безопасности».
Для доступа к большей части API функций требуется проведение аутентификации. Возможны следующие способы:
- По логину и паролю.
- По логину и сигнатуре
- Дополнительная проверка ssl-сертификата для способов, приведенных выше
2.4.1. Аутентификация по паролю
Для доступа по логину/паролю оба поля передаются в явном виде как значения для username
, password
:
https://api.reg.ru/api/regru2/nop
password=test
username=test
Список полей с описанием, используемых для аутентификации, перечислен в разделе «Параметры для аутентификации».
Возможные ошибки аутентификации см. в стандартных кодах ошибок.
2.5. Тестовый и рабочий (боевой) доступ к REG.API
Для отладки работы с API предусмотрен тестовый доступ; для этого имя пользователя и пароль должны иметь значение «test».
При таком режиме работы осуществляются все проверки входных параметров, выдаётся ответ, но никаких действий не производится, и деньги за операции не снимаются. Ответ сервера при работе в тестовом режиме носит ознакомительный характер, в некоторых случаях может содержать неактуальные значения и не соответствовать реальной картине, имеющей место при использовании боевого доступа. При вызове функций в тестовом режиме никаких реальных данных о доменах не возвращается.
Также для отладочных целей есть несколько специализированных функций, которые предназначены для вызовов под реальными идентификационными данными. Это nop
, reseller_nop
, user/nop
, bill/nop
, domain/nop
, zone/nop
, service/nop
, folder/nop
. Они не выполняют никаких действий, но позволяют проверить доступность системы без её дополнительной нагрузки и, соответственно, с минимальным временем отклика. Ниже каждая из этих функций описана подробнее.
3. Общее описание функций
3.1. Виды функций
Все функции API в данный момент делятся на пять видов:
- Пользовательские функции (им соответствует относительный путь user/) предназначены для получения данных, тем или иным образом связанных с конкретным пользователем (запросы баланса, статистики регистраций и проч.).
- Функции работы с доменами (им соответствует относительный путь domain/) позволяют производить различные манипуляции с доменами.
- Функции работы с услугами (им соответствует относительный путь service/) содержат всё необходимое для осуществления операция с услугами.
- Функции работы с папками (им соответствует относительный путь folder/) позволяют группировать домены и услуги по собственным критериям.
- Несколько отладочных функций вне категорий.
В зависимости от того, какая функция Вам нужна, требуется указывать различные адреса. Общий вид адреса такой:
https://api.reg.ru/api/regru2/<имя_категории>/
где имя_категории может принимать значения: user, domain, service, folder, bill, zone.
3.2. Доступность функций
Все функции REG.API условно можно разделить на три категории по доступности.
Первая категория — это общедоступные функции, при вызове которых не требуется указывать username. Как правило, это функции получения общих сведений, которые не зависят от того, кто их вызвал. В нижеприведенной таблице у таких функций графа «доступность» имеет значение «все».
Другая категория — это функции требующие аутентификации, но доступные для всех клиентов, зарегистрировавшихся на нашем сайте.
Третья категория ограничена клиентами, заключившими с нами партнёрское соглашение.
3.3. Список функций
Здесь приведен перечень доступных функций с кратким описанием и указанием их доступности. Полное, детальное описание каждой функции с примерами использования см. ниже.
Функция | Краткое описание | Доступность |
---|---|---|
Функции общего назначения | ||
nop | возвращает login | Клиенты |
reseller_nop | возвращает login | Партнёры |
get_user_id | получение идентификатора авторизованного пользователя | Клиенты |
get_service_id | возвращает service_id домена или услуги | Клиенты |
Функции для работы с учётной записью | ||
user/nop | тестовая функция | Все |
user/create | регистрация нового пользователя | Партнёры |
user/get_statistics | получение статистики по пользователю | Клиенты |
user/get_balance | просмотр баланса | Клиенты |
user/set_reseller_url | установка URL для редиректа из внешней услуги | Партнёры |
user/get_reseller_url | получение URL для редиректа из внешней услуги | Партнёры |
Функции для работы cо счетами (категория bill) | ||
bill/nop | тестовая функция | Клиенты |
bill/get_not_payed | просмотр всех неоплаченных счетов | Клиенты |
bill/get_for_period | просмотр счетов за указанный период | Партнёры |
bill/change_pay_type | смена способа оплаты | Клиенты |
bill/delete | удаление неоплаченных счетов | Клиенты |
Функции для работы с услугами | ||
service/nop | тестовая функция | Клиенты |
service/get_prices | получение цен на активацию/продление услуг | Все |
service/get_servtype_details | получение цен для услуги | Все |
service/create | заказ услуги | Все |
service/check_create | валидация параметров заказа услуги | Все |
service/delete | удаление услуги | Клиенты |
service/resend_startup_mail | повторно выслать стартовое письмо активации услуги | Клиенты |
service/get_info | получить информацию об услугах | Клиенты |
service/get_list | получить список активных услуг | Клиенты |
service/get_folders | Получить список папок в которые входит сервис | Клиенты |
service/get_details | получение параметров услуги | Клиенты |
service/service_get_details | получение параметров услуги | Клиенты |
service/get_dedicated_server_list | получение списка выделенных серверов доступных для заказа | Клиенты |
service/update | настройка услуги | Клиенты |
service/renew | продление услуги | Клиенты |
service/get_bills | получение списка счетов, связанных с указанными услугами | Партнёры |
service/check_readonly | Клиенты | |
service/set_autorenew_flag | установить/снять флаг автопродления | Клиенты |
service/suspend | приостановить услугу (для домена - снятие делегирования) | Клиенты |
service/resume | возобновить услугу (для домена - установить делегирование) | Клиенты |
service/get_depreciated_period | расчитать дробное число периодов до истечения срока действия услуги | Клиенты |
service/upgrade | произвести повышение подтипа (тарифа) услуги | Клиенты |
service/partcontrol_grant | предоставить право частичного управления услугой другому пользователю | Клиенты |
service/partcontrol_revoke | отключить право частичного управления услугой | Клиенты |
service/resend_mail | повторить email сообщение | Клиенты |
service/refill | пополнить счёт услуги | Клиенты |
service/refund | вывести средства со счета внешней услуги | Партнёры |
service/get_balance | Получить баланс внешней услуги | Клиенты |
service/seowizard_manage_link | получить ссылку на панель управления Seowizard'ом | Партнёры |
service/get_websitebuilder_link | Партнёры | |
Функции для работы с доменами | ||
domain/nop | тестовая функция | Все |
domain/get_prices | получение цен на регистрацию/продление доменов во всех доступных зонах | Все |
domain/get_suggest | подбор имени домена | Партнёры |
domain/get_premium_prices | Партнёры | |
domain/get_deleted | список освобождённых доменов | Партнёры |
domain/check | проверка доступности регистрации домена | Партнёры |
domain/create | подать заявку на регистрацию домена | Клиенты |
domain/transfer | подать заявку на перенос домена от другого регистратора | Клиенты |
domain/get_transfer_status | Клиенты | |
domain/set_new_authinfo | Клиенты | |
domain/cancel_transfer | Отменить перенос домена | Партнёры |
domain/get_rereg_data | получить список освобождающихся доменов с характеристиками, после регистрации или продления домены удаляются из списка | Партнёры |
domain/set_rereg_bids | сделать ставки на освобождающиеся домены | Клиенты |
domain/get_user_rereg_bids | получить свои ставки на освобождающиеся домены, после регистрации или продления домены удаляются из списка | Клиенты |
domain/get_docs_upload_uri | получение ссылки на закачивание документов из интернета для .RU/.SU/.РФ доменов | Клиенты |
domain/update_contacts | обновление контактных данных доменов | Клиенты |
domain/update_private_person_flag | изменение флага «Private Person» скрытия/отображения контактных данных в whois | Клиенты |
domain/register_ns | внести nameserver в NSI-registry | Все |
domain/delete_ns | удалить nameserver из NSI-registry | Все |
domain/get_nss | Получение DNS серверов доменов | Клиенты |
domain/update_nss | Изменение списка DNS серверов | Клиенты |
domain/delegate | Установка флага делегирования домена | Все |
domain/undelegate | Снятие флага делегирования домена | Партнёры |
domain/transfer_to_another_account | Передача домена на другой аккаунт | Партнёры |
domain/look_at_entering_list | Просмотр списка передаваемых доменов | Партнёры |
domain/accept_or_refuse_entering_list | Принять или отклонить передаваемый домен | Партнёры |
domain/request_to_transfer | Отправить заявку на перенос доменов на свой аккаунт | Партнёры c сервис планом "Партнёр 2" или выше |
domain/get_tld_info | Клиенты | |
domain/send_email_verification_letter | Партнёры | |
Функции для управления DNS-зоной | ||
zone/nop | тестовая функция | Клиенты |
zone/add_alias | cвязать поддомен с IPv4-адресом | Клиенты |
zone/add_aaaa | cвязать поддомен с IPv6-адресом | Клиенты |
zone/add_caa | указать правила выпуска SSL сертификатов для поддомена | Клиенты |
zone/add_cname | cвязать поддомен с именем другого домена | Клиенты |
zone/add_https | указать правила для выполнения HTTPS запроса к домену | Клиенты |
zone/add_mx | указать почтовый сервер в виде доменного имени или IP-адреса, который будет принимать почту для вашего домена | Клиенты |
zone/add_ns | передать управление поддоменами на другие DNS-сервера | Клиенты |
zone/add_txt | добавить произвольную текстовую запись (TXT) для поддомена | Клиенты |
zone/add_srv | добавить сервисную запись | Клиенты |
zone/get_resource_records | получение ресурсных записей зоны для каждого поддомена | Клиенты |
zone/update_records | добавить/удалить несколько ресурсных записей одним запросом | Партнёры |
zone/update_soa | изменить время жизни кеша для зоны | Клиенты |
zone/tune_forwarding | настройка зоны для web-форвардинга | Клиенты |
zone/clear_forwarding | удалить записи настройки зоны для web-форвардинга | Клиенты |
zone/tune_parking | настройка зоны для парковки | Клиенты |
zone/clear_parking | удалить записи настройки зоны для парковки | Клиенты |
zone/remove_record | удалить ресурсную запись | Клиенты |
zone/clear | удалить все ресурсные записи зоны | Клиенты |
Функции для управления DNSSEC | ||
dnssec/nop | проверка доступности управления DNSSEC доменов | Клиенты |
dnssec/get_status | получение статуса DNSSEC домена | Клиенты |
dnssec/enable | включение DNSSEC для домена, использующего DNS сервера REG.RU | Клиенты |
dnssec/disable | выключение DNSSEC для домена, использующего DNS сервера REG.RU | Клиенты |
dnssec/renew_ksk | обновление KSK ключа для домена, использующего DNS сервера REG.RU | Клиенты |
dnssec/renew_zsk | обновление ZSK ключа для домена, использующего DNS сервера REG.RU | Клиенты |
dnssec/get_records | Получение списка DNSSEC записей домена | Клиенты |
dnssec/add_keys | Передача информации о KSK ключах в родительскую зону | Клиенты |
Функции для работы с хостингом | ||
hosting/nop | проверка работоспособности API | Клиенты |
hosting/get_os_templates | получение списка операционных систем | Все |
Функции для работы с папками | ||
folder/nop | тестовая функция | Все |
folder/create | создание папки | Все |
folder/remove | удаление папки | Все |
folder/rename | переименование папки | Все |
folder/get_services | выдать список услуг в папке | Все |
folder/add_services | добавление услуг в папку | Все |
folder/remove_services | удаление услуг из папки | Все |
folder/replace_services | перезаписывание услуг в папке | Все |
folder/move_services | перенос услуг из одной папки в другую | Все |
Функции для работы с Магазином доменов | ||
shop/nop | тестовая функция | Клиенты |
shop/delete_lot | удаление лота | Все |
shop/get_info | получение информации о лоте | Все |
shop/get_lot_list | получение списка лотов | Все |
shop/get_category_list | получение списка категорий лотов | Все |
shop/get_suggested_tags | получение списка ключевых слов лотов | Все |
4. Функции общего назначения
4.1. Функция: nop
Доступность:
Назначение
для тестирования, здесь — ничегонеделание + получение логина и идентификатора залогиненого пользователя
Поля запроса:
нет
Поля ответа:
Поле | Описание |
---|---|
login |
Имя пользователя, переданное в запросе как username. |
user_id |
Идентификатор пользователя в системе. |
Пример запроса:
https://api.reg.ru/api/regru2/nop
password=test
username=test
Пример успешного ответа:
{
"answer" : {
"login" : "test",
"user_id" : "0"
},
"result" : "success"
}
Возможные ошибки:
пример ответа с ошибкой (неверное имя пользователя / пароль)
{
"error_code" : "PASSWORD_AUTH_FAILED",
"error_text" : "Username/password incorrect",
"result" : "error"
}
Также см. другие cтандартные коды ошибок
4.2. Функция: reseller_nop
Доступность:
Поддержка обработки списка услуг:
Назначение:
полностью аналогична функции nop за исключением двух следующих пунктов
Режим доступа:
только защищённый HTTPS
Поля запроса:
нет
Поля ответа:
Поле | Описание |
---|---|
login |
Имя пользователя, переданное в запросе как username. |
user_id |
Идентификатор пользователя в системе. |
Пример запроса:
https://api.reg.ru/api/regru2/reseller_nop
password=test
username=test
Возможные ошибки:
Пример ошибки, если обычный пользователь пытается получить доступ к функциям только для партнёров:
{
error_text: 'Only resellers can access to this function',
error_code: 'RESELLER_AUTH_FAILED',
result: 'error'
}
Такая ошибка будет в случае попытки доступа не по HTTPS соединению:
{
error_text: 'Access to api over non secure interface (http) prohibited!',
error_code: 'HTTPS_ONLY',
result: 'error'
}
4.3. Функция: get_user_id
Доступность:
Поддержка обработки списка услуг:
Назначение:
для тестирования, возвращает идентификатор залогиненого пользователя
Поля запроса:
нет
Поля ответа:
Поле | Описание |
---|---|
user_id |
Идентификатор пользователя в системе |
Пример запроса:
https://api.reg.ru/api/regru2/get_user_id
password=test
username=test
Пример успешного ответа:
{
"answer" : {
"user_id" : "0"
},
"result" : "success"
}
Возможные ошибки:
4.4. Функция: get_service_id
Доступность:
Поддержка обработки списка услуг:
Назначение:
получение id домена или услуги
Поля запроса:
стандартные параметры идентификации сервисов
Поля ответа:
Поле | Описание |
---|---|
service_id |
идентификатор домена или услуги |
Пример запроса:
https://api.reg.ru/api/regru2/get_service_id
domain_name=qqq.ru
password=test
username=test
Пример успешного ответа:
{
"answer" : {
"service_id" : "123456"
},
"result" : "success"
}
Возможные ошибки:
5. Функции для работы с учётной записью
5.1. Функция: user/nop
Доступность:
Поддержка обработки списка услуг:
Назначение:
для тестирования доступности
Поля запроса:
нет
Поля ответа:
нет
Пример запроса:
https://api.reg.ru/api/regru2/user/nop
output_content_type=plain
Пример ответа:
{
"result" : "success"
}
Пример кода:
Возможные ошибки:
5.2. Функция: user/create
Доступность:
Поддержка обработки списка услуг:
Назначение:
регистрация нового пользователя
Поля запроса:
Обязательные поля
Для регистрации с логином/паролем
Параметр | Описание |
---|---|
user_login |
Логин нового пользователя в системе REG.RU, допустимые символы: латинские строчные буквы от "a" до "z", цифры "0" - "9", символы "-", "_" |
user_password |
Пароль нового пользователя, допускается использование любых латинских символов |
user_email |
Адрес электронной почты нового пользователя |
user_ip |
IP-адрес нового пользователя. Нужен для автоматического определения страницы проживания пользователя. |
default_country_code |
Код страны по умолчанию - используется, если не удалось определить страну автоматически по IP-адресу пользователя. |
Обязательные поля для упрощенной регистрации с указанием только email
Пароль будет сгенерирован автоматически и отправлен на указанный email.
Параметр | Описание |
---|---|
email_only |
Флаг упрощенной регистрации с указанием только email-а. Установить в значение 1, если выбран вариант упрощенной регистрации нового пользователя |
user_email |
Адрес электронной почты нового пользователя |
user_ip |
IP-адрес нового пользователя. Нужен для автоматического определения страницы проживания пользователя. |
default_country_code |
Код страны по умолчанию - используется, если не удалось определить страну автоматически по IP-адресу пользователя. |
Необязательные поля — анкета пользователя
Параметр | Описание |
---|---|
user_first_name |
Имя контактного лица |
user_last_name |
Фамилия контактного лица |
user_company |
Компания, в которой работает новый пользователь |
user_jabber_id |
Jabber ID нового пользователя |
user_icq |
ICQ UIN нового пользователя |
user_phone |
Номер телефона нового пользователя, телефон указывается с международном формате, например: +7.4951234567 |
user_fax |
Номер факса нового пользователя, телефон указывается с международном формате, например: +7.4951234567 |
user_addr |
Адрес нового пользователя: улица, дом, офис/квартира |
user_city |
Адрес нового пользователя: город |
user_state |
Адрес нового пользователя: область/край/штат |
user_postcode |
Почтовый индекс нового пользователя |
user_wmid |
Webmoney ID нового пользователя |
user_website |
Веб-сайт нового пользователя |
user_language |
Двухбуквенный код языка пользователя. Допустимы только 2 значения - ru/en |
Необязательные поля — другие параметры
Параметр | Описание |
---|---|
user_subsribe |
Подписать пользователя на рассылку по электронной почте от REG.RU, допустимые значения 1 или 0 значение по умолчанию 0 |
user_mailnotify |
Послать пользователю уведомление о регистрации, допустимые значения 1 или 0, значение по умолчанию 1 |
set_me_as_referrer |
Сделать регистрируемого пользователя рефералом регистратора, допустимые значения 1 или 0, значение по умолчанию 0 |
check_only |
Не регистрировать пользователя, только проверить контакты, допустимые значения 1 или 0, значение по умолчанию 0, при check_only=1 в ответе будет user_id=777 |
white_list_ips |
Один или несколько диапазонов IP-адресов, с которых будет доступна работа по API для данного пользователя. Примеры: одиночный IP-адрес: 192.168.0.1, 32-битная CIDR-нотация: 192.168.0.1/32, с маской подсети: 192.168.0.1/255.255.255.255, неполный IP-адрес (пустые биты являются адресом сети): 192.168. |
Поля ответа:
Поле | Описание |
---|---|
user_id |
идентификатор только что созданного пользователя |
Пример запроса:
https://api.reg.ru/api/regru2/user/create
output_content_type=plain
password=test
set_me_as_referrer=1
user_country_code=RU
user_email=test@example.com
user_login=othertest
user_mailnotify=0
user_password=xxxxx
username=test
Пример ответа:
{
"answer" : {
"user_id" : "777"
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
USER_LOGIN_NOT_UNIQUE | This login already is busy | Этот логин уже занят |
5.3. Функция: user/get_statistics
Доступность:
Поддержка обработки списка услуг:
Назначение:
получение статистики по пользователю
Поля запроса:
Параметр | Описание |
---|---|
date_from |
задать начальную дату для параметров, необязательный параметр |
date_till |
задать конечную дату для параметров, необязательный параметр |
Поля ответа:
Поле | Описание |
---|---|
costs_for_period |
потрачено средств за указанный период |
active_domains_cnt |
кол-во активных доменов, в т.ч. полученных в частичное управление |
active_domains_get_ctrl_cnt |
кол-во доменов, полученных в частичное управление |
renew_domains_cnt |
кол-во доменов, требующих продления |
renew_domains_get_ctrl_cnt |
кол-во доменов, требующих продления из полученных в частичное управление |
trans_in_domains_cnt |
кол-во доменов, ожидающих переноса в REG.RU, если такие есть |
undelegated_domains_cnt |
кол-во неделегированных доменов |
reg_domains_cnt |
кол-во зарегистрированных доменов за период |
domain_folders_cnt |
кол-во доменных папок |
Пример запроса:
https://api.reg.ru/api/regru2/user/get_statistics
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"active_domains_cnt" : "5",
"active_domains_get_ctrl_cnt" : "3",
"domain_folders_cnt" : "2",
"renew_domains_cnt" : "4",
"renew_domains_get_ctrl_cnt" : "1",
"undelegated_domains_cnt" : "6"
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
5.4. Функция: user/get_balance
Доступность:
Поддержка обработки списка услуг:
Назначение:
просмотр суммы на счёте
Поля запроса:
Параметр | Описание |
---|---|
currency |
указать валюту в которой выводится сумма, пересчёт из рублей производится по текущему курсу; доступные варианты: RUR, USD, EUR, UAH; значение по умолчанию — RUR |
Поля ответа:
Поле | Описание |
---|---|
currency |
валюта в которую пересчитаны суммы в момент запроса |
prepay |
сумма предоплаты, находящаяся на счёте |
blocked |
сумма заблокированная на счёте, например, на время торгов для участия в акуционе доменов, отображается при ненулевом значении |
credit |
сумма предоставляемого кредита, доступно для Партнёров |
Пример запроса:
https://api.reg.ru/api/regru2/user/get_balance
currency=RUR
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"credit" : "10",
"currency" : "RUR",
"prepay" : "1000"
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
5.5. Функция: user/set_reseller_url
Доступность:
Поддержка обработки списка услуг:
Назначение:
Установка URL для редиректа из внешней услуги
Поля запроса:
Параметр | Описание |
---|---|
servtype |
тип услуги, для которой будет выставлен URL. Доступные типы: |
url_type |
тип URL для редиректа. Доступные типы: |
url |
URL для редиректа. Может содержать следующие токены (вместо токена будет подставлено соответствующее значение): |
Поля ответа:
нет
Пример запроса:
https://api.reg.ru/api/regru2/user/set_reseller_url
password=test
servtype=srv_seowizard
url=http://test2.com
url_type=refill
username=test
Пример ответа:
{
"result" : "success"
}
Пример кода:
Возможные ошибки:
5.6. Функция: user/get_reseller_url
Доступность:
Поддержка обработки списка услуг:
Назначение:
Получение URL для редиректа из внешней услуги.
Поля запроса:
Параметр | Описание |
---|---|
servtype |
тип услуги, для которой нужно получить URL. Доступные типы: |
url_type |
тип URL для редиректа. Доступные типы: |
Поля ответа:
Поле | Описание |
---|---|
url |
URL для редиректа. Может содержать следующие токены (вместо токена будет подставлено соответствующее значение): |
Пример запроса:
https://api.reg.ru/api/regru2/user/get_reseller_url
password=test
servtype=srv_seowizard
url_type=refill
username=test
Пример ответа:
{
"answer" : {
"url" : "http://test2.com"
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
6. Функции для работы cо счетами (категория bill)
6.1. Функция: bill/nop
Доступность:
Поддержка обработки списка счетов:
Назначение:
для тестирования
Поля запроса:
Параметр | Описание |
---|---|
bill_id |
номер счёта при запросе с одиночным счётом |
bills |
список номеров счетов |
Поля ответа:
Поле | Описание |
---|---|
bills |
список счетов |
bill_id |
номер счёта |
pay_status |
статус оплаченности счёта, варианты статусов см. ниже |
Примеры запросов:
https://api.reg.ru/api/regru2/bill/nop
bill_id=12345
output_content_type=plain
password=test
username=test
https://api.reg.ru/api/regru2/bill/nop
input_data={"bills":["12345","12346"],"output_content_type":"plain"}
input_format=json
password=test
username=test
https://api.reg.ru/api/regru2/bill/nop
input_data={"bills":[{"bill_id":"12345"},{"bill_id":"12346"}],"output_content_type":"plain"}
input_format=json
password=test
username=test
Возможные ошибки:
6.2. Функция: bill/get_not_payed
Доступность:
Поддержка обработки списка счетов:
Назначение:
получение списка неоплаченных счетов
Поля запроса:
Параметр | Описание |
---|---|
limit |
количество позиций счётов, допустимых к выводу за 1 раз, значение по умолчанию 100, максимальное значение 1024 |
offset |
смещение от начальной позиции, если количество счетов превышает указанный limit |
Поля ответа:
Поле | Описание |
---|---|
bills |
список счетов |
bill_id |
номер счёта |
bill_date |
дата создания счёта |
currency |
валюта (RUR - рубли, USD - доллары США, EUR - евро, UAH - украинские гривны) |
payment |
сумма счёта без процентов платёжных систем в рублях |
total_payment |
полная сумма к оплате в указанной Вами валюте, состоит из суммы цен услуг счёта, процентов за перевод денег в указанной системе оплаты, и процентов за конвертацию указанной валюты в рубли, если платёж осуществляется не в рублях |
pay_type |
способ платежа, варианты оплаты: prepay – использование предоплаты, bank – банковский перевод, pbank – безналичный перевод через банк, yacard – ЮMoney |
pay_status |
статус оплаченности счёта, здесь будут только notpayed — не оплачено |
items |
состав счёта |
itemtype |
тип позиции счёта: prepayment - предоплата, service - заказ услуги |
dname |
имя домена сервиса, если применимо |
servtype |
тип сервиса |
service_id |
id сервиса |
action |
заказ нового или продление уже имеющегося сервиса |
Пример запроса:
https://api.reg.ru/api/regru2/bill/get_not_payed
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"bills" : [
{
"payment" : "100",
"pay_status" : "notpayed",
"currency" : "RUR",
"bill_date" : "1917-10-26",
"pay_type" : "bank",
"pay_date" : null,
"bill_id" : "12345",
"orig_payment" : "100",
"items" : [
{
"dname" : "october.org",
"itemtype" : "service",
"action" : "new",
"service_id" : "12345",
"servtype" : "domain"
},
{
"dname" : "october.org",
"itemtype" : "service",
"action" : "new",
"service_id" : "12346",
"servtype" : "srv_certificate"
}
]
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
6.3. Функция: bill/get_for_period
Доступность:
Поддержка обработки списка счетов:
Назначение:
получение списка счетов за указанный период
Поля запроса:
Параметр | Описание |
---|---|
start_date |
начальная дата периода для запроса счетов в ISO формате, обязательное поле |
end_date |
конечное дата периода для запроса счетов в ISO формате, обязательное поле |
pay_type |
способ оплаты счёта, допустимые варианты см. в описании полей ответа |
limit |
количество позиций счётов, допустимых к выводу за 1 раз, значение по умолчанию 100, максимальное значение 1024 |
offset |
смещение от начальной позиции, если количество счетов превышает указанный limit |
all |
так же показывать неактивные счета, т.е. у которых истекли сроки действия заказываемых сервисов или по которым был осуществлён возврат средств из-за невозможности выполнения заказа |
Поля ответа:
Поле | Описание |
---|---|
bills |
список счетов |
bill_id |
номер счёта |
bill_date |
дата создания счёта |
currency |
валюта (RUR - рубли, USD - доллары США, EUR - евро, UAH - украинские гривны) |
payment |
сумма счёта без процентов платёжных систем в рублях |
total_payment |
полная сумма к оплате в указанной Вами валюте, состоит из суммы цен услуг счёта, процентов за перевод денег в указанной системе оплаты, и процентов за конвертацию указанной валюты в рубли, если платёж осуществляется не в рублях |
pay_type |
способ платежа, варианты оплаты: prepay – использование предоплаты, bank – банковский перевод, pbank – безналичный перевод через банк, yacard – ЮMoney |
pay_status |
статус оплаченности счёта, возможные варианты: notpayed – счёт не оплачен, confirmed – оплата подтверждена, но деньги ещё не получены (например долгий перевод через банк), payed – оплачено, cancelled – оплата отменена на стороне платёжной системы |
items |
состав счёта |
itemtype |
тип позиции счёта: prepayment - предоплата, service - заказ услуги |
dname |
имя домена сервиса, если применимо |
servtype |
тип сервиса |
service_id |
id сервиса |
action |
заказ нового или продление уже имеющегося сервиса |
Пример запроса:
https://api.reg.ru/api/regru2/bill/get_for_period
end_date=1917-11-07
output_content_type=plain
password=test
start_date=1917-10-26
username=test
Пример кода:
Возможные ошибки:
6.4. Функция: bill/change_pay_type
Доступность:
Поддержка обработки списка счетов:
Назначение:
изменение способа оплаты счёта, для некоторых способов возможно выставление счёта в указанной системе оплаты, для prepay оплата производится сразу
Поля запроса:
Параметр | Описание |
---|---|
bill_id |
номер счёта при запросе с одиночным счётом |
bills |
список номеров счетов |
pay_type |
новый тип платежа, обязательное поле, возможные варианты: |
currency |
валюта, обязательное поле, для ЮMoney доступно только RUR, для bank и prepay — RUR и USD |
Поля ответа:
Поле | Описание |
---|---|
bills |
список счетов |
bill_id |
номер счёта |
currency |
валюта (RUR - рубли, USD - доллары США) |
payment |
сумма счёта без процентов платёжных систем в рублях |
total_payment |
полная сумма к оплате в указанной Вами валюте, состоит из суммы цен услуг счёта, процентов за перевод денег в указанной системе оплаты, и процентов за конвертацию указанной валюты в рубли, если платёж осуществляется не в рублях |
pay_type |
способ платежа |
pay_status |
статус оплаченности счёта: notpayed – счёт не оплачен, payed – оплачено, cancelled – оплата отменена на стороне платёжной системы |
Пример запроса:
https://api.reg.ru/api/regru2/bill/change_pay_type
input_data={"bills":["123456"],"pay_type":"prepay","currency":"RUR","output_content_type":"plain"}
input_format=json
password=test
username=test
Пример ответа:
{
"answer" : {
"bills" : [
{
"bill_id" : "123456",
"currency" : "RUR",
"old_pay_type" : "bank",
"pay_status" : "payed",
"pay_type" : "prepay",
"payment" : "100",
"result" : "success",
"total_payment" : "100"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
6.5. Функция: bill/delete
Доступность:
Поддержка обработки списка счетов:
Назначение:
Удаление неоплаченных счетов
Поля запроса:
Параметр | Описание |
---|---|
bill_id |
номер счёта при запросе с одиночным счётом |
bills |
список номеров счетов |
Поля ответа:
Поле | Описание |
---|---|
bills |
список счетов |
bill_id |
номер счёта |
status |
статус счёта, выставляется только реальных счетов, deleted для удалённого счёта, active для уже оплаченного счёта не подлежащего удалению |
pay_status |
статус оплаченности счёта, варианты статусов см. выше |
Пример запроса:
https://api.reg.ru/api/regru2/bill/delete
bill_id=12345
output_content_type=plain
password=test
username=test
https://api.reg.ru/api/regru2/bill/delete
input_data={"bills":["12345","12346","12347"],"output_content_type":"plain"}
input_format=json
https://api.reg.ru/api/regru2/bill/delete
input_data={"bills":[{"bill_id":"12345"},{"bill_id":"12346"},{"bill_id":"12347"}],"output_content_type":"plain"}
input_format=json
password=test
username=test
Пример ответа:
{
"answer" : {
"bills" : [
{
"bill_id" : "12345",
"pay_status" : "notpayed",
"result" : "success",
"status" : "deleted"
},
{
"bill_id" : "12346",
"error_code" : "BILL_CAN_NOT_REMOVED",
"pay_status" : "payed",
"status" : "active"
},
{
"bill_id" : "12347",
"error_code" : "BILL_ID_NOT_FOUND"
}
]
},
"result" : "success"
}
Возможные ошибки:
7. Функции для работы с услугами
7.1. Функция: service/nop
Доступность:
Поддержка обработки списка услуг:
Назначение:
для тестирования, позволяет проверить доступность списка услуг и получить их id
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
service_id |
идентификатор услуги, если переданы dname+servtype |
Пример запроса:
https://api.reg.ru/api/regru2/service/nop
domain_name=test.ru
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"services" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345",
"servtype" : "domain"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
7.2. Функция: service/get_prices
Доступность:
Назначение:
Получение цен на регистрацию/продление услуг.
Поля запроса:
Параметр | Описание |
---|---|
Используйте аутентификацию для получения партнёрских цен. |
|
show_renew_data |
Флаг возврата цен для продления (1/0). Необязательное поле. |
currency |
Идентификатор валюты, в которой будут возвращаться цены (rur, uah, usd, eur). Необязательное поле, по умолчанию цены указываются в рублях. |
Пример запроса:
https://api.reg.ru/api/regru2/service/get_prices
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" => {
"currency" => "RUR",
"pricegroup" => "0",
"show_renew_data" => "0",
"prices" => [
{
"servortld" => "srv_addip",
"unit" => "month",
"subtype" => "",
"price" => "30"
},
{
"servortld" => "srv_addip",
"unit" => "month",
"subtype" => "custom_net",
"price" => "60"
},
...
]
"result" => "success"
}
}
Пример кода:
Возможные ошибки:
7.3. Функция: service/get_servtype_details
Доступность:
Назначение:
Получение цены и общих данных для услуги.
Поля запроса:
Параметр | Описание |
---|---|
servtype |
Вид услуги: |
subtype |
Подтип услуги |
unroll_prices |
Показывать цены в развернутом виде |
only_actual |
Если задан - показывать только актуальные тарифы |
show_hidden |
Включая архивные тарифы |
Примечание:
Чтобы получить цены для нескольких видов услуг, можно указать их в поле servtype
через запятую или передать в запросе несколько полей servtype
. В этом случае поле subtype
игнорируется.
Поля ответа:
Список подтипов услуги. Каждый элемент списка содержит поля:
Поле | Описание |
---|---|
servtype |
Вид услуги |
subtype |
Подтип услуги |
unit |
Единица измерения для периода "YEAR" или "MONTH" |
extparams |
Дополнительные параметры |
is_renewable |
1 - возможно продление |
commonname |
Различные форматы описания |
Дополнительные поля при вызове функции с отсутствующим или нулевым параметром unroll_prices
:
Поле | Описание |
---|---|
periods_new |
Диапазон возможных сроков регистрации |
periods_renew |
Диапазон возможных сроков продления |
price_new |
Цена заказа сервиса |
price_renew |
Цена продления сервиса |
Дополнительные поля при вызове функции с параметром unroll_prices=1
:
Поле | Описание |
---|---|
prices_new |
Список периодов и цен для заказа услуги |
prices_renew |
Список периодов и цен для продления услуги |
Пример запроса:
https://api.reg.ru/api/regru2/service/get_servtype_details
output_content_type=plain
password=test
servtype=srv_hosting_ispmgr
username=test
Пример ответа:
{
"answer" : [
{
"commonname" : "Web-forwarding",
"extparams" : {},
"is_renewable" : "1",
"periods_new" : "1-10",
"periods_renew" : "1-10",
"price_new" : "120.00",
"price_renew" : "120.00",
"servtype" : "srv_webfwd",
"subtype" : "",
"unit" : "year"
}
],
"result" : "success"
}
Пример кода:
Возможные ошибки:
7.4. Функция: service/create
Доступность:
Поддержка обработки списка услуг:
Назначение:
заказ новой услуги.
Поля запроса:
Общие
Параметр | Описание |
---|---|
domain_name |
Имя домена, для которого заказывается услуга. |
servtype |
Вид заказываемой услуги: |
period |
Срок, на который заказывается услуга, единица измерения (год или месяц) зависит от вида заказываемой услуги. |
user_servid |
ID домена, задаваемый пользователем. Допустимые символы: цифры 0..9 и латинские буквы a..f, длина поля 32 символа. Автоматически идентификатор не создаётся, т.е. если он не был задан при создании услуги, то поле остаётся пустым. Необязательное поле. |
Параметры оплаты (необязательны)
Параметр | Описание |
---|---|
pay_type |
Прочие общие параметры (необязательны)
Параметр | Описание |
---|---|
folder_name |
Задает название папки, куда будут добавлены услуги. |
no_new_folder |
Если указано имя несуществующей папки: |
comment |
Комментарий - любая строка описывающая заказ. Необязательное поле. |
admin_comment |
Комментарий для администраторов — любая строка описывающая заказ. Необязательное поле. |
ISPmanager хостинг (srv_hosting_ispmgr)
Параметр | Описание |
---|---|
plan (deprecated) |
Тарифный план, сейчас доступны: "Host-0-0420", "Host-1-0420", "Host-3-0420", "Host-A-0420", "Host-B-0420", "Host-Lite-0420". Для указания тарифного плана рекомендуется использовать параметр "subtype" |
subtype |
Тарифный план, сейчас доступны: "Host-0-0420", "Host-1-0420", "Host-3-0420", "Host-A-0420", "Host-B-0420", "Host-Lite-0420". Для указания тарифного плана рекомендуется использовать параметр "subtype" |
contype |
Тип контактных данных. Принимает значение "hosting_pp" при регистрации сервера на данные физического лица и значение "hosting_org" при регистрации сервера на данные юридического лица. |
|
e-mail-адрес для создаваемого хостинг-аккаунта. |
phone |
Телефон. Необязательное поле |
country |
Двухбуквенный ISO-код страны, в которой зарегистрировано(а) физическое лицо (организация). |
person_r |
Указывается при использовании параметра "contype" со значением "hosting_pp". Фамилия, имя и отчество администратора сервера на русском языке в соответствии с паспортными данными. Для иностранцев поле содержит имя в оригинальном написании (при невозможности в английской транслитерации). Сокращения длиной в идин символ, в этом поле приняты не будут. Например сокращение вида Vasily N Pupkin - вызовет ошибку для данного поля. |
passport |
Указывается при использовании параметра "contype" со значением "hosting_pp". Серия и номер паспорта, а также наименование органа, выдавшего паспорт, и дата выдачи (в указанной последовательности, с разделением пробелами). В написании римских цифр допустимо использование только латинских букв. Дата записывается в формате ДД.ММ.ГГГГ. Знак номера перед номером паспорта не ставится. Паспорта СССР (паспорта старого образца) не принимаются. В случае использования документа, отличного от паспорта (допустимо ТОЛЬКО для нерезидентов России), в начале строки указывается наименование вида документа. Запись может быть многострочной. |
pp_code |
Указывается при использовании параметра "contype" со значением "hosting_pp". Идентификационный номер налогоплательщика (ИНН). Запись может содержать пустую строку, если администратором является нерезидент РФ, не имеющий идентификационного номера налогоплательщика. |
org_r |
Указывается при использовании параметра "contype" со значением "hosting_org". Полное наименование организации-администратора домена на русском языке в соответствии с учредительными документами. Для нерезидентов указывается написание на национальном языке (либо на английском языке). Запись может быть многострочной. |
code |
Указывается при использовании параметра "contype" со значением "hosting_org". Идентификационный номер налогоплательщика (ИНН), присвоенный организации-администратору. Запись может содержать пустую строку, если администратором является нерезидент РФ, не имеющий идентификационного номера налогоплательщика. |
Хостинг Cpanel (srv_hosting_cpanel)
Параметр | Описание |
---|---|
subtype |
Тарифный план, сейчас доступны: "cPanel-L-0222", "cPanel-M-0222", "cPanel-S-0222", "cPanel-XL-0222". |
contype |
Тип контактных данных. Принимает значение "hosting_pp" при регистрации сервера на данные физического лица и значение "hosting_org" при регистрации сервера на данные юридического лица. |
|
e-mail-адрес для создаваемого хостинг-аккаунта. |
phone |
Телефон. Необязательное поле |
country |
Двухбуквенный ISO-код страны, в которой зарегистрировано(а) физическое лицо (организация). |
person_r |
Указывается при использовании параметра "contype" со значением "hosting_pp". Фамилия, имя и отчество администратора сервера на русском языке в соответствии с паспортными данными. Для иностранцев поле содержит имя в оригинальном написании (при невозможности в английской транслитерации). Сокращения длиной в идин символ, в этом поле приняты не будут. Например сокращение вида Vasily N Pupkin - вызовет ошибку для данного поля. |
passport |
Указывается при использовании параметра "contype" со значением "hosting_pp". Серия и номер паспорта, а также наименование органа, выдавшего паспорт, и дата выдачи (в указанной последовательности, с разделением пробелами). В написании римских цифр допустимо использование только латинских букв. Дата записывается в формате ДД.ММ.ГГГГ. Знак номера перед номером паспорта не ставится. Паспорта СССР (паспорта старого образца) не принимаются. В случае использования документа, отличного от паспорта (допустимо ТОЛЬКО для нерезидентов России), в начале строки указывается наименование вида документа. Запись может быть многострочной. |
pp_code |
Указывается при использовании параметра "contype" со значением "hosting_pp". Идентификационный номер налогоплательщика (ИНН). Запись может содержать пустую строку, если администратором является нерезидент РФ, не имеющий идентификационного номера налогоплательщика. |
org_r |
Указывается при использовании параметра "contype" со значением "hosting_org". Полное наименование организации-администратора домена на русском языке в соответствии с учредительными документами. Для нерезидентов указывается написание на национальном языке (либо на английском языке). Запись может быть многострочной. |
code |
Указывается при использовании параметра "contype" со значением "hosting_org". Идентификационный номер налогоплательщика (ИНН), присвоенный организации-администратору. Запись может содержать пустую строку, если администратором является нерезидент РФ, не имеющий идентификационного номера налогоплательщика. |
Хостинг Plesk (srv_hosting_plesk)
Параметр | Описание |
---|---|
subtype |
Тарифный план, сейчас доступны: "Plesk-L-0322", "Plesk-M-0322", "Plesk-S-0322", "Plesk-XL-0322". |
contype |
Тип контактных данных. Принимает значение "hosting_pp" при регистрации сервера на данные физического лица и значение "hosting_org" при регистрации сервера на данные юридического лица. |
|
e-mail-адрес для создаваемого хостинг-аккаунта. |
phone |
Телефон. Необязательное поле |
country |
Двухбуквенный ISO-код страны, в которой зарегистрировано(а) физическое лицо (организация). |
person_r |
Указывается при использовании параметра "contype" со значением "pp". Фамилия, имя и отчество администратора сервера на русском языке в соответствии с паспортными данными. Для иностранцев поле содержит имя в оригинальном написании (при невозможности в английской транслитерации). Сокращения длиной в идин символ, в этом поле приняты не будут. Например сокращение вида Vasily N Pupkin - вызовет ошибку для данного поля. |
passport |
Указывается при использовании параметра "contype" со значением "pp". Серия и номер паспорта, а также наименование органа, выдавшего паспорт, и дата выдачи (в указанной последовательности, с разделением пробелами). В написании римских цифр допустимо использование только латинских букв. Дата записывается в формате ДД.ММ.ГГГГ. Знак номера перед номером паспорта не ставится. Паспорта СССР (паспорта старого образца) не принимаются. В случае использования документа, отличного от паспорта (допустимо ТОЛЬКО для нерезидентов России), в начале строки указывается наименование вида документа. Запись может быть многострочной. |
pp_code |
Указывается при использовании параметра "contype" со значением "hosting_pp". Идентификационный номер налогоплательщика (ИНН). Запись может содержать пустую строку, если администратором является нерезидент РФ, не имеющий идентификационного номера налогоплательщика. |
org_r |
Указывается при использовании параметра "contype" со значением "hosting_org". Полное наименование организации-администратора домена на русском языке в соответствии с учредительными документами. Для нерезидентов указывается написание на национальном языке (либо на английском языке). Запись может быть многострочной. |
code |
Указывается при использовании параметра "contype" со значением "org". Идентификационный номер налогоплательщика (ИНН), присвоенный организации-администратору. Запись может содержать пустую строку, если администратором является нерезидент РФ, не имеющий идентификационного номера налогоплательщика. |
Парковка (srv_parking)
Параметр | Описание |
---|---|
title |
Заголовок страницы. Просто элемент оформления шаблона. |
content |
HTML-код страницы. |
counter_html_code |
HTML-код счётчиков (опционально). |
template_name |
Идентификатор шаблона. Доступные идентификаторы:
|
html_title |
HTML мета-тег «Title». |
html_description |
HTML мета-тег «Description». |
html_keywords |
HTML мета-тег «Keywords». |
opt_user_contacts |
Отобразить информационный блок с контактами Администратора домена. |
opt_feedback_link |
Отобразить информационный блок со ссылкой "Связь с Администратором домена" (ссылка на Whois по домену). Возможные значения:
|
opt_domain_shop_link |
Отобразить информационный блок со ссылкой на лот в Магазине доменов (при условии, что домен выставлен на продажу в Магазине доменов). Возможные значения:
|
opt_whois_link |
Отобразить информационный блок со ссылкой на историю Whois домена. Возможные значения:
|
opt_se_link |
Отобразить информационный блок со cсылками на домен в поисковых системах. Возможные значения:
|
opt_indexed_link |
Отобразить информационный блок cо ссылками на проиндексированные страницы различными поисковыми системами. Возможные значения:
|
opt_blogs_link |
Отобразить информационный блок cо ссылками на проиндексированные страницы различными поисковыми системами. Возможные значения:
|
subtype |
Необязательный. Для бесплатной парковки следует указать значение free |
Пример запроса для парковки:
https://api.reg.ru/api/regru2/service/create
dname=qqq.ru
output_content_type=plain
password=test
servtype=srv_parking
username=test
Пример ответ:
{
'result' => 'success';
'answer' => {
'descr' => 'service srv_parking is ordered for domain qqq.ru',
'payment' => '100',
'pay_notes' => 'Amount successfully charged',
'bill_id' => '1234',
'service_id' => '987654'
}
}
Пример запроса для бесплатной парковки:
https://api.reg.ru/api/regru2/service/create
dname=qqq.ru
output_content_type=plain
password=test
servtype=srv_parking
subtype=free
username=test
Пример ответа:
{
'result' => 'success';
'answer' => {
'descr' => 'service srv_parking is ordered for domain qqq.ru',
'payment' => '0',
'pay_notes' => 'Amount successfully charged',
'bill_id' => '1234',
'service_id' => '987654'
}
}
Сертификат SSL (srv_ssl_certificate)
Параметр | Описание |
---|---|
обязательные: |
Название, имя, фамилия, адрес, город, штат(провинция), почтовый индекс, страна, телефон, факс организации. |
обязательные: |
Имя, фамилия, должность, адрес, город, штат, почтовый индекс, страна, телефон, e-mail, факс, название организации адрес администратора. |
обязательные: |
Имя, фамилия, должность, адрес, город, штат, почтовый индекс, страна, телефон, e-mail, факс, название организации адрес финансового менеджера. |
обязательные: |
Имя, фамилия, должность, адрес, город, штат, почтовый индекс, страна, телефон, e-mail, факс, название организации адрес технического специалиста. |
обязательные: |
Имя, фамилия, должность, адрес, город, штат, почтовый индекс, страна, телефон, e-mail, факс, название организации адрес ответственного за подписку SSL сертиификата. |
обязательные: |
Адрес, город, страна, e-mail, имя, фамилия, телефон, почтовый индекс, штат |
обязательные: |
e-mail, имя, фамилия, телефон, имя организации |
approver_email |
E-mail адрес для подтверждения сертификата. |
server_type |
Программное обеспечение. Возможные значения: |
csr_string |
Закодированный CSR включая маркеры начала и окончания. |
subtype |
Вид сертификата. Возможные значения: |
dname |
Обязательное поле для заказа субсервиса бесплатного сертификата. |
service_id |
Обязательное поле для заказа субсервиса бесплатного сертификата. |
Сертификат на домен (srv_certificate)
Свидетельство на домен (srv_voucher)
Параметр | Описание |
---|---|
obtain_cert |
способ получения сертификата: |
office |
Допустимые значения: moscow, samara, kiev, piter |
phone |
телефон в международном формате: знак "+", код страны, номер телефона. |
remark |
Примечание |
p_postcode |
Почтовый индекс для бесплатной отправки сертификата по России |
p_addr |
Адрес в России |
p_name |
Фамилия, Имя, Отчество по-русски |
a_postcode |
Почтовый индекс для международного письма |
a_addr |
Почтовый адрес для международного (только латиницей) |
a_name |
Полное имя для международного письма (только латиницей) |
a_state |
Область, штат |
a_city |
Город для международной отправки сертификата |
a_country_code |
Код страны (например UK) |
Лицензия ISP Manager (srv_license_isp)
Параметр | Описание |
---|---|
uplink_service_id |
ID родительской услуги, к которой заказывается лицензия ISP Manager. Заказ лицензии возможен только для Dedicated (srv_dedicated). |
subtype |
Тип лицензии, доступны: "lite5", "business". |
installation_way |
Тип переустановки ОС на VPS. Принимает значение "auto" для автоматической переустановки ОС и значение "manual" только для заказа лицензии. |
ostmpl |
Шаблон предустановленной операционной системы. |
Дополнительный IP (srv_addip)
Параметр | Описание |
---|---|
uplink_service_id |
ID родительской услуги, к которой заказывается дополнительный IP. Заказ дополнительного IP возможен только для ISPmanager хостинга (srv_hosting_ispmgr) и CPanel хостинга (srv_hosting_cpanel) |
subtype |
Тип дополнительного IP, доступны: |
Расширенная защита от спама (srv_antispam)
Параметр | Описание |
---|---|
uplink_service_id |
ID родительской услуги, к которой заказывается расширенная защита от спама. Заказ расширенной защиты от спама возможен для домена (domain), ISPmanager хостинга (srv_hosting_ispmgr), CPanel хостинга (srv_hosting_cpanel) и Plesk хостинга (srv_hosting_plesk). |
dname |
Имя домена для которого заказывается расширенная защита от спама. Данный параметр может быть использован как альтернатива uplink_service_id. Необязательный параметр. |
spam_action |
Данный параметр определяет какие действия будут применены к почте распознанной как спам.
|
mx_list |
Список MX серверов через запятую, используемых для транспорта отфильтрованной почты. |
Выделенный сервер (srv_dedicated)
Параметр | Описание |
---|---|
dedicated_name |
Наименование сервера для идентификации в списке услуг. |
dedicated_id |
Уникальный идентификатор сервера. |
ostmpl |
Шаблон предустановленной операционной системы. Сейчас доступны: Windows Server 2019 Standard Evaluation |
disk_layout |
Описание разметки файловой системы (в свободной форме). Необязательный параметр. |
client_comment |
Ваши пожелания по установке сервера (в свободной форме). Необязательный параметр. |
use_raid |
Использование raid-массива (для серверов с raid-контроллером). Необязательный параметр. |
contype |
Тип контактных данных. Принимает значение "pp" при регистрации сервера на данные физического лица и значение "org" при регистрации сервера на данные юридического лица. |
|
e-mail адрес для создаваемого хостинг-аккаунта. |
phone |
Телефон. Необязательное поле |
country |
Двухбуквенный ISO-код страны, в которой зарегистрировано(а) физическое лицо (организация). |
person_r |
Указывается при использовании параметра "contype" со значением "pp". Фамилия, имя и отчество администратора сервера на русском языке в соответствии с паспортными данными. Для иностранцев поле содержит имя в оригинальном написании (при невозможности в английской транслитерации). Сокращения длиной в идин символ, в этом поле приняты не будут. Например сокращение вида Vasily N Pupkin - вызовет ошибку для данного поля. |
passport |
Указывается при использовании параметра "contype" со значением "pp". Серия и номер паспорта, а также наименование органа, выдавшего паспорт, и дата выдачи (в указанной последовательности, с разделением пробелами). В написании римских цифр допустимо использование только латинских букв. Дата записывается в формате ДД.ММ.ГГГГ. Знак номера перед номером паспорта не ставится. Паспорта СССР (паспорта старого образца) не принимаются. В случае использования документа, отличного от паспорта (допустимо ТОЛЬКО для нерезидентов России), в начале строки указывается наименование вида документа. Запись может быть многострочной. |
org_r |
Указывается при использовании параметра "contype" со значением "hosting_org". Полное наименование организации-администратора домена на русском языке в соответствии с учредительными документами. Для нерезидентов указывается написание на национальном языке (либо на английском языке). Запись может быть многострочной. |
code |
Указывается при использовании параметра "contype" со значением "org". Идентификационный номер налогоплательщика (ИНН), присвоенный организации-администратору. Запись может содержать пустую строку, если администратором является нерезидент РФ, не имеющий идентификационного номера налогоплательщика. |
KVM доступ (srv_kvm)
Параметр | Описание |
---|---|
uplink_service_id |
ID родительской услуги, к которой заказывается KVM доступ. Заказ KVM доступа возможен только для выделеного сервера (srv_dedicated). |
Автоматическое SEO-продвижение (srv_seowizard)
Параметр | Описание |
---|---|
|
Email, для которого заказывается услуга |
seo_name |
Имя для услуги. Необязательный параметр, если не указано, будет подставлено имя "SeoWizard для <email>" |
Конструктор сайтов Reg.ru (srv_websitebuilder)
Параметр | Описание |
---|---|
dname |
Имя домена, для которого заказывается услуга конструктор Reg.ru. |
subtype |
Тарифный план, сейчас доступны: "annual", "infinite", "start-2020". |
|
Email, для которого заказывается услуга. |
Пример запроса для конструктора Reg.ru:
https://api.reg.ru/api/regru2/service/create
dname=test.ru
email=test@test.ru
password=test
period=12
servtype=srv_websitebuilder
subtype=start
username=test
Пример ответа для конструктора Reg.ru:
{
"answer" : {
"bill_id" : "37601633",
"descr" : "service srv_websitebuilder is ordered for domain test.ru",
"pay_notes" : "No charge required",
"payment" : "0.00",
"service_id" : "27249497",
"uplink_service_id" : "0"
},
"charset" : "utf-8",
"messagestore" : null,
"result" : "success"
}
Поля ответа:
Поле | Описание |
---|---|
descr |
Общее описание сделанного заказа. |
bill_id |
Номер счёта заказа. |
payment |
Цена заказа. |
pay_notes |
Результат проведения оплаты. |
service_id |
Числовой идентификатор услуги. |
uplink_service_id |
Числовой идентификатор родительской услуги. |
Пример запроса:
https://api.reg.ru/api/regru2/service/create
dname=qqq.ru
output_content_type=plain
password=test
period=1
plan=Host-2
servtype=srv_hosting_ispmgr
username=test
Пример ответа:
{
'result' => 'success';
'answer' => {
'descr' => 'service srv_hosting_ispmgr is ordered for domain qqq.ru',
'payment' => '100',
'pay_notes' => 'Amount successfully charged',
'bill_id' => '1234',
'service_id' => '987654'
}
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
NEEDS_CONFIRMATION | Service already ordered and needs confirmation. | Услуга уже заказана и требует подтверждения. |
WAITING | Service already ordered but not processed. | Услуга уже заказана, но еще не отработана. |
ACCOUNT_IS_NOT_TRIAL | User account $uid is not trial. Account group: $group | Аккаунт пользователя $uid не является пробным. Тип аккаунта: $group |
7.5. Функция: service/check_create
Доступность:
Поддержка обработки списка услуг:
Назначение:
Валидация параметров заказа новой услуги. Проверяет поле domain_name, также может валидировать поля subtype и period.
Поля запроса:
Основные
Параметр | Описание |
---|---|
domain_name |
Имя домена, для которого заказывается услуга. Можно использовать сокращенный вариант параметра - dname. |
Прочие параметры (необязательны)
Параметр | Описание |
---|---|
servtype |
Вид заказываемой услуги. Значение по умолчанию: srv_hosting_ispmgr |
subtype |
Тарифный план. Значение по умолчанию: Host-0-0420 |
period |
Срок, на который заказывается услуга. Значение по умолчанию: 1 |
Пример запроса
https://api.reg.ru/api/regru2/service/check_create
dname=qqq.ru
period=1
servtype=srv_hosting_plesk
subtype=Host-1-0420
Пример ответа:
{
'result' => 'success';
'answer' => {
'descr' => 'everything is ok for creating',
'param' => {
'dname' => 'qqq.ru',
'servtype' => 'srv_hosting_plesk',
'subtype' => 'Host-1-0420',
'period' => '1'
}
}
}
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
ALREADY_EXISTS_ON_SERVER | Domain already exist on hosting server | Данный домен уже присутствует на сервере |
ALREADY_EXISTS_ON_NSS | Domain already exist on hosting ns servers | Данный домен уже присутсвует на NS серверах хостинга |
INVALID_PERIOD | Invalid period | Неправильно задан период для услуги |
INVALID_PLAN | Invalid service plan | Неправильный тарифный план |
PARAMETER_MISSING | $param required | $param не найден(ы) |
DOMAIN_BAD_NAME | Domain $domain_name is reserved or disallowed by the registry, or is a premium domain offered by special price | Домен $domain_name является зарезервированным или недопустимым к регистрации по правилам реестра, либо premium-доменом, предлагаемым по специальной цене |
FIELD_VALUE_TOO_SHORT | Value of field is too short | Значение поля слишком короткое |
7.6. Функция: service/delete
Доступность:
Поддержка обработки списка услуг:
Назначение:
Удаляет услугу
Поля запроса:
стандартные параметры идентификации услуги а также
Параметр | Значения | Описание |
---|---|---|
servtype |
"srv_google_apps" |
Тип услуги, которую удаляем |
Поля ответа:
нет
Пример запроса:
https://api.reg.ru/api/regru2/service/delete
domain_name=test.ru
output_content_type=plain
password=test
servtype=srv_hosting_ispmgr
username=test
Пример ответа:
{
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
HAS_ACTIVE_PROJECTS | There are active projects on your account | Имеются активные проекты |
7.7. Функция: service/get_info
Доступность:
Поддержка обработки списка услуг:
Назначение:
получить информацию о услугах
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг а также
Параметр | Значения | Описание |
---|---|---|
show_folders |
0 и 1 |
Дополнительно привести список папок, в которые входит услуга, по умолчанию — 0 |
Поля ответа:
Поле | Описание |
---|---|
services |
Список хешей параметров услуг. |
subtype |
подтип услуги (для хостинга: идентификатор тарифного плана) |
state |
состояние услуги, допустимые варианты:
|
creation_date |
дата активации услуги |
expiration_date |
дата истечения оплаченного периода услуги |
Пример запроса:
https://api.reg.ru/api/regru2/service/get_info
input_data={"services":[{"domain_name":"test.ru"},{"service_id":"111111"}]}
input_format=json
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"services" : [
{
"creation_date" : "2001-01-01",
"expiration_date" : "2101-01-01",
"result" : "success",
"service_id" : "12345",
"servtype" : "domain",
"state" : "A",
"subtype" : "test"
},
{
"creation_date" : "2001-01-01",
"expiration_date" : "2101-01-01",
"result" : "success",
"service_id" : "111111",
"servtype" : "domain",
"state" : "A",
"subtype" : "test"
}
]
},
"result" : "success"
}
Если запрос выполняется от аккаунта партнера, то дополнительно отображается поле user2_login
. Значение поля — логин аккаунта, которому услуга передана в частичное упроавление.
Пример ответа:
{
"answer" : {
"services" : [
{
"creation_date" : "2001-01-01",
"expiration_date" : "2101-01-01",
"result" : "success",
"service_id" : "12345",
"servtype" : "domain",
"state" : "A",
"subtype" : "test",
"user2_login" : "test@test.com"
},
{
"creation_date" : "2001-01-01",
"expiration_date" : "2101-01-01",
"result" : "success",
"service_id" : "111111",
"servtype" : "domain",
"state" : "A",
"subtype" : "test",
"user2_login" : ""
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
7.8. Функция: service/get_list
Доступность:
Назначение:
получить список активных услуг
Поля запроса:
Параметр | Описание |
---|---|
servtype |
Вид услуги: |
Поля ответа:
Поле | Описание |
---|---|
services |
Список хешей параметров услуг. |
service_id |
числовой идентификатор услуги |
dname |
имя домена |
subtype |
подтип услуги (для хостинга: идентификатор тарифного плана) |
state |
состояние услуги, допустимые варианты:
|
creation_date |
дата активации услуги |
expiration_date |
дата истечения оплаченного периода услуги |
Пример запроса:
https://api.reg.ru/api/regru2/service/get_list
input_data={"servtype":"domain"}
input_format=json
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"services" : [
{
"creation_date" : "2009-04-18",
"dname" : "test.ru",
"expiration_date" : "2011-04-18",
"service_id" : "111",
"servtype" : "domain",
"state" : "A",
"subtype" : "test",
"uplink_service_id" : "0"
},
{
"creation_date" : "2009-04-29",
"dname" : "foo-test.ru",
"expiration_date" : "2011-04-29",
"service_id" : "222",
"servtype" : "srv_hosting_ispmgr",
"state" : "A",
"subtype" : "test",
"uplink_service_id" : "0"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
7.9. Функция: service/get_folders
Доступность:
Поддержка обработки списка услуг:
Назначение:
получение списка папок в которые входит сервис
Поля запроса:
стандартные параметры идентификации услуги
Поля ответа:
Поле | Описание |
---|---|
folders |
список папок, может быть пустым |
folder_id |
идентификатор папки |
folder_name |
имя папки |
Пример запроса:
https://api.reg.ru/api/regru2/service/get_folders
domain_name=test.ru
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"folders" : [
{
"folder_id" : "12345",
"folder_name" : "test_folder"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
7.10. Функция: service/get_details
Доступность:
Поддержка обработки списка услуг:
Назначение:
Получения дополнительных данных по сервису, в т.ч. контактных данных для доменов
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг а также
Параметр | Значения | Описание |
---|---|---|
separate_groups |
0 и 1 |
При значении 1 делается разбивка выходных данных по группам, группы для каждого сервиса или доменной зоны свои, значение по умолчанию 0 |
show_contacts_only |
0 и 1 |
При значении 1 возвращаются только контактные данные, что удобно при работе с доменами, для других сервисов не имеет смысла, значение по умолчанию 0 |
splitted_contacts |
0 и 1 |
При значении 1 контактные данные .RU/.SU/.РФ доменов такие как person_r_surname, person_r_name, person_r_patronimic, p_addr_zip, p_addr_area, p_addr_city, p_addr_addr, p_addr_recipient, passport_number, passport_place, passport_date, address_r_zip, address_r_area, address_r_city и address_r_addr возвращаются как есть. При значении 0 или отсуствии параметра контактные данные person_r_surname, person_r_name и person_r_patronimic объединяются в единый составной контакт person_r, контактные данные p_addr_zip, p_addr_area, p_addr_city, p_addr_addr и p_addr_recipient объединяются в составной контакт p_addr, контактные данные passport_number, passport_place и passport_date объединяются в составной контакт passport, контактные данные address_r_zip, address_r_area, address_r_city и address_r_addr объединяются в составной контакт address_r. Значение по умолчанию 0, но просьба использовать параметр splitted_contacts в запросах так как со временем будут возвращаться только разделённые контактные данные. |
Поля ответа:
Поле | Описание |
---|---|
services |
список доменов с параметрами dname, servtype, service_id, details и contacts, или error_code c кодом ошибки идентификации услуги |
details |
список всех дополнительных данных сервиса, в случае вызова функции с параметром separate_groups делается разбивка данных по группам. |
contacts |
список контактов конкретного домена, подробное описание для каждой доменной зоны см. в описании функции domain/create, возвращается только при вызове с параметром show_contacts_only |
Дополнительные поля, возвращаемые для услуги хостинга
Поле | Описание |
---|---|
login |
логин хостинг-аккаунта |
passwd |
пароль хостинг-аккаунта |
server_ip |
IP-адрес сервера, на котором обслуживается аккаунт |
nss |
список NS-серверов хостинга |
Дополнительные поля, возвращаемые для услуги web-форвардинга
Поле | Описание |
---|---|
fwds |
Список всех web-перенаправлений домена. Содержит поля fwdfrom(Переадресация с), fwdto(Переадресовывать на), webfwd_type(Способ переадресации), title(Заголовок окна, если webfwd_type = frames). |
Дополнительные поля, возвращаемые для услуги парковки
Поле | Описание |
---|---|
title |
Заголовок страницы. Просто элемент оформления шаблона. |
content |
HTML-код страницы. |
counter_html_code |
HTML-код счётчиков (опционально). |
template_name |
Идентификатор шаблона. Доступные идентификаторы:
|
html_title |
HTML мета-тег «Title». |
html_description |
HTML мета-тег «Description». |
html_keywords |
HTML мета-тег «Keywords». |
opt_user_contacts |
Отобразить информационный блок с контактами Администратора домена. |
opt_feedback_link |
Отобразить информационный блок со ссылкой "Связь с Администратором домена" (ссылка на Whois по домену). Возможные значения:
|
opt_domain_shop_link |
Отобразить информационный блок со ссылкой на лот в Магазине доменов (при условии, что домен выставлен на продажу в Магазине доменов). Возможные значения:
|
opt_whois_link |
Отобразить информационный блок со ссылкой на историю Whois домена. Возможные значения:
|
opt_se_link |
Отобразить информационный блок со cсылками на домен в поисковых системах. Возможные значения:
|
opt_indexed_link |
Отобразить информационный блок cо ссылками на проиндексированные страницы различными поисковыми системами. Возможные значения:
|
opt_blogs_link |
Отобразить информационный блок cо ссылками на проиндексированные страницы различными поисковыми системами. Возможные значения:
|
Примеры запросов:
Запрос с несколькими доменами в списке
https://api.reg.ru/api/regru2/service/get_details
input_data={"username":"test","password":"test","domains":[{"dname":"vschizh.ru"},{"dname":"vschizh.org"}],"output_content_type":"plain"}
input_format=json
password=test
username=test
Запрос с параметром separate_groups
https://api.reg.ru/api/regru2/service/get_details
domain_name=vschizh.ru
output_content_type=plain
password=test
separate_groups=1
username=test
Запрос с параметром show_contacts_only
https://api.reg.ru/api/regru2/service/get_details
domain_name=vschizh.ru
output_content_type=plain
password=test
show_contacts_only=1
username=test
Примеры успешного ответа:
Ответ на запрос с несколькими доменами в списке
{
'answer' => {
'services' => [
{
'dname' => 'vschizh.ru',
'servtype' => 'domain',
'service_id' => '12345'
'details' => {
'country' => 'RU',
'e_mail' => 'test@test.ru',
'person_r' => 'Рюрик Святослав Владимирович',
'id_state' => 'VERIFIED',
'phone' => '+7 495 1234567',
'birth_date' => '01.01.1101',
'descr' => 'test contacts',
'person' => 'Svyatoslav V Ryurik',
'p_addr' => '12345, г. Вщиж, ул. Княжеска, д.1, Рюрику Святославу Владимировичу, князю Вщижскому',
'passport' => '22 44 668800, выдан по месту правления 01.09.1164'
'private_person_flag' => '1',
},
'result' => 'success'
},
{
'dname' => 'vschizh.org',
'servtype' => 'domain',
'service_id' => '12346'
'details' => {
'o_email' => 'test@test.ru',
'o_addr' => 'Vschizh Goverment, house 1, Knyazheska str',
'o_phone' => '+7.4951234567',
'o_state' => 'VSZ',
'o_postcode' => '12345',
'o_city' => 'Vschizh',
'o_first_name' => 'Svyatoslav',
'o_last_name' => 'Ryurik',
'o_company' => 'Vschizh City',
'o_country_code' => 'RU',
'o_fax' => '+7.4951234567'
},
'result' => 'success'
}
]
},
'result' => 'success'
}
Ответ на запрос с параметром separate_groups
{
'answer' => {
'services' => [
{
'dname' => 'vschizh.ru',
'service_id' => '12345',
'servtype' => 'domain',
'details' => {
'ru_id' => {
'id_state' => 'VERIFIED'
},
'ru_dd' => {
'descr' => 'test user domain'
},
'ru_pp' => {
'country' => 'RU',
'e_mail' => 'test@test.ru',
'person_r' => 'Рюрик Святослав Владимирович',
'phone' => '+7 495 1234567',
'birth_date' => '01.01.1101',
'person' => 'Svyatoslav V Ryurik',
'p_addr' => '12345, г. Вщиж, ул. Княжеска, д.1, Рюрику Святославу Владимировичу, князю Вщижскому',
'passport' => '22 44 668800, выдан по месту правления 01.09.1164'
}
},
'result' => 'success'
}
]
},
'result' => 'success'
}
Ответ на запрос с параметром show_contacts_only
{
'answer' => {
'services' => [
{
'contacts' => {
'country' => 'RU',
'e_mail' => 'test@test.ru',
'person_r' => 'Рюрик Святослав Владимирович',
'phone' => '+7 495 1234567',
'birth_date' => '01.01.1101',
'descr' => 'test user domain'
'person' => 'Svyatoslav V Ryurik',
'p_addr' => '12345, г. Вщиж, ул. Княжеска, д.1, Рюрику Святославу Владимировичу, князю Вщижскому',
'passport' => '22 44 668800, выдан по месту правления 01.09.1164'
},
'dname' => 'vschizh.ru',
'service_id' => '12345',
'servtype' => 'domain',
'result' => 'success'
}
]
},
'result' => 'success'
}
Возможные ошибки:
7.11. Функция: service/get_dedicated_server_list
Доступность:
Поддержка обработки списка услуг:
Назначение:
Получение списка выделенных серверов доступных для заказа.
Поля запроса:
стандартные параметры идентификации услуг
Поля ответа:
Поле | Описание |
---|---|
server_id |
Уникальный идентификатор сервера |
cpu_content |
Описание модели процессора |
cpu_count |
Количество процессоров |
cpu_core |
Количество ядер на процессор |
ram_content |
Тип оперативной памяти |
ram_count |
Количество плат памяти |
ram_size |
Объем памяти одной платы |
hdd_content |
Тип интерфейса жесткого диска |
hdd_count |
Количество жестких дисков |
hdd_size |
Объем одного жесткого диска |
month_traf |
Количество предоплаченного трафика, гб в месяц |
price_retail |
Стоимость аренды сервера в месяц |
Пример запроса:
https://api.reg.ru/api/regru2/service/get_dedicated_server_list
output_content_type=plain
password=test
username=test
Пример ответа:
{
answer => {
server_list => [
{
server_id => "171",
cpu_content => "Intel Pentium 4 2.8Ghz",
cpu_count => "1",
cpu_core => "2",
hdd_content => "IDE",
hdd_count => "2",
hdd_size => "120Gb",
ram_content => "RAM"
ram_count => "2",
ram_size => "512Mb",
month_traf => "1000",
price_retail => "3080",
}
]
},
result => "success"
}
Возможные ошибки:
7.12. Функция: service/update
Доступность:
Поддержка обработки списка услуг:
Назначение:
настройка услуги.
Поля запроса:
Общие
Параметр | Описание |
---|---|
dname |
Имя домена настраиваемого сервиса. |
servtype |
Вид заказываемой услуги: |
Web-форвардинг (srv_webfwd)
Параметр | Описание |
---|---|
fwd_action |
Действия, доступны:
|
subtask |
Действие, доступны:
|
fwdfrom |
«Переадресация с», укажите относительный адрес (без имени домена), с которого требуется осуществлять перенаправление(если не указано, то «/»). |
fwdto |
«Переадресовывать на», укажите URL, на который следует перенаправлять посетителей. |
allow_se_indexing |
Параметр указывает должна ли страница индексироваться поисковыми системами. Имеет смысл только в случае наличия как минимум одного перенаправления. Возможные значения:
|
webfwd_type |
Способ переадресации, может принимать значения:
|
title |
Заголовок окна, имеет смысл только в случае использования маскировки адреса во фрейме. Указанный заголовок будет заголовком страницы (будет отображаться в качестве заголовка окна браузера). |
favicon |
Favicon для переадресаций, имеет смысл только в случае использования маскировки адреса во фрейме. Допускается только картинка в формате PNG закодированная в Base64. Исходный размер картинки 16x16 пикселей и не более 1536 байт. Используется совместно с параметром subtask = add_favicon |
Парковка (srv_parking)
Параметр | Описание |
---|---|
title |
Заголовок страницы. Просто элемент оформления шаблона. |
content |
HTML-код страницы. |
counter_html_code |
HTML-код счётчиков (опционально). |
template_name |
Идентификатор шаблона. Доступные идентификаторы:
|
html_title |
HTML мета-тег «Title». |
html_description |
HTML мета-тег «Description». |
html_keywords |
HTML мета-тег «Keywords». |
opt_user_contacts |
Отобразить информационный блок с контактами Администратора домена. |
opt_feedback_link |
Отобразить информационный блок со ссылкой "Связь с Администратором домена" (ссылка на Whois по домену). Возможные значения:
|
opt_domain_shop_link |
Отобразить информационный блок со ссылкой на лот в Магазине доменов (при условии, что домен выставлен на продажу в Магазине доменов). Возможные значения:
|
opt_whois_link |
Отобразить информационный блок со ссылкой на историю Whois домена. Возможные значения:
|
opt_se_link |
Отобразить информационный блок со cсылками на домен в поисковых системах. Возможные значения:
|
opt_indexed_link |
Отобразить информационный блок cо ссылками на проиндексированные страницы различными поисковыми системами. Возможные значения:
|
opt_blogs_link |
Отобразить информационный блок cо ссылками на проиндексированные страницы различными поисковыми системами. Возможные значения:
|
subtype |
Необязательный. Для бесплатной парковки следует указать значение free |
Сертификат SSL (srv_ssl_certificate)
Параметр | Описание |
---|---|
обязательные: |
Название, имя, фамилия, адрес, город, штат(провинция), почтовый индекс, страна, телефон, факс организации. |
обязательные: |
Имя, фамилия, должность, адрес, город, штат, почтовый индекс, страна, телефон, e-mail, факс, название организации адрес администратора. |
обязательные: |
Имя, фамилия, должность, адрес, город, штат, почтовый индекс, страна, телефон, e-mail, факс, название организации адрес финансового менеджера. |
обязательные: |
Имя, фамилия, должность, адрес, город, штат, почтовый индекс, страна, телефон, e-mail, факс, название организации адрес технического специалиста. |
обязательные: |
Имя, фамилия, должность, адрес, город, штат, почтовый индекс, страна, телефон, e-mail, факс, название организации адрес ответственного за подписку SSL сертиификата. |
approver_email |
E-mail адрес для подтверждения сертификата. |
server_type |
Программное обеспечение. Возможные значения: |
csr_string |
Закодированный CSR включая маркеры начала и окончания. |
subtype |
Вид сертификата. Возможные значения: |
reissue |
Ненулевое значение инициирует переиздание сертификата с новыми полями csr_string, server_type, approver_email. |
Cpanel хостинг (srv_hosting_cpanel)
Параметр | Описание |
---|---|
subtask |
Действие, доступны: |
Расширенная защита от спама (srv_antispam)
Параметр | Описание |
---|---|
subtask |
Действие, доступны:
|
spam_action |
Действие над спамом. Определяет какие действия будут выполнены над почтой распознанной как спам.
Актуально для subtask = change_action. |
mx_list |
Список mx серверов через запятую, используемых для транспорта отфильтрованной почты. |
Выделенный сервер (srv_dedicated)
Параметр | Описание |
---|---|
subtask |
Действие, доступны:
|
revert_dns_ip |
Один из ip-адресов сервера. |
new_hostname |
Новое доменное имя для указанного ip. |
Поля ответа:
Поле | Описание |
---|---|
descr |
Общее описание сделанного заказа. |
Пример запроса:
https://api.reg.ru/api/regru2/service/update
dname=qqq.ru
fwd_action=addfwd
fwdfrom=/
fwdto=http://www.reg.ru
output_content_type=plain
password=test
servtype=srv_webfwd
username=test
webfwd_type=redirect
Пример ответа:
{
"answer" : {
"descr" : "service srv_webfwd is updated for domain qqq.ru"
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
7.13. Функция: service/renew
Доступность:
Поддержка обработки списка услуг:
Назначение:
продление домена или услуги
Поля запроса:
Параметр | Описание |
---|---|
period |
Период продления. |
pay_type |
|
allow_create_bills |
Флаг, указывающий, что в случае недостатка денег на счёте, запрос будет завершен без ошибки — будет создана выписка пополнения через банк. |
А также стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
period |
Установленный период продления. |
bill_id |
Номер счёта заказа. |
payment |
Цена заказа. |
currency |
Валюта указанной цены. |
status |
Состояние заказа. Допустимые варианты: renew_success и only_bill_created для случаев успешного прохождения счёта и нехватки денег соответственно. |
Примеры запросов:
Идентификация по service_id
https://api.reg.ru/api/regru2/service/renew
output_content_type=plain
password=test
period=2
service_id=123456
username=test
Идентификация по servtype + domain_name
https://api.reg.ru/api/regru2/service/renew
domain_name=regrupanel.ru
output_content_type=plain
password=test
period=1
servtype=srv_hosting_ispmgr
username=test
Примеры успешных ответов:
Ответ на "PLAIN"-запрос
{
'answer' => {
'period' => '2',
'payment' => '100',
'currency' => 'RUR',
'status' => 'renew_success',
'dname' => 'test12345.ru',
'bill_id' => '123456',
'servtype' => 'domain'
},
'result' => 'success',
}
Ответ на список из 2х доменов в JSON формате
{
'answer' => {
'currency' => 'RUR',
'payment' => '200',
'period' => '2',
'services' => [
{
'dname' => 'test12345.ru',
'service_id' => '12345',
'servtype' => 'domain',
'result' => 'success'
},
{
'dname' => 'test12346.ru',
'service_id' => '12346',
'servtype' => 'domain',
'result' => 'success'
}
],
'bill_id' => '123456',
'status' => 'renew_success',
},
'result' => 'success',
}
Ответ при передаче флага allow_create_bills
(случай, когда не хватило денег и создан лишь счёт):
{
'answer' => {
'period' => '1',
'payment' => '100',
'currency' => 'RUR',
'status' => 'only_bill_created',
'dname' => 'test12345.ru',
'bill_id' => '123123',
'servtype' => 'domain'
},
'result' => 'success',
}
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
INCORRECT_STATE | Operation allowed only for suspended or active services | Операция воможна только для активной или приостановленной услуги |
PROLONG_ERROR | Prolong error: $error_detail | Ошибка продления: $error_detail |
7.14. Функция: service/get_bills
Доступность:
Поддержка обработки списка услуг:
Назначение:
получить список счетов, связанных с указанными услугами
Поля запроса:
стандартные параметры идентификации доменов и услуг
Поля ответа:
Поле | Описание |
---|---|
services |
список запрошенных сервисов |
bills |
список номеров счетов, относящихся к данному сервису |
Пример запроса:
https://api.reg.ru/api/regru2/service/get_bills
dname=qqq.ru
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"services" : [
{
"bills" : [
"123456",
"234567"
],
"dname" : "qqq.ru",
"service_id" : "12345",
"servtype" : "domain"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
7.15. Функция: service/check_readonly
Доступность:
Поддержка обработки списка услуг:
Назначение:
проверка разрешено ли редактировать сервис (домен)
Поля запроса:
стандартные параметры идентификации доменов и услуг
Пример запроса:
проверить разрешение на редактирование сервисам с ID 999999, 123456, и 654321
https://api.reg.ru/api/regru2/service/check_readonly
output_content_type=plain
password=test
service_id=654321
username=test
Пример ответа:
"answer" => {
"services" => [
{
"error_code" : "SERVICE_ID_NOT_FOUND",
"error_detail" : "SERVICE_ID_NOT_FOUND",
"is_readonly" : 1,
"service_id" : "999999"
},
{
"error_code" : "DATA_IS_READ_ONLY",
"error_detail" : "DATA_IS_READ_ONLY",
"is_readonly" : 1,
"service_id" : "654321"
},
{
"error_code" : null,
"error_detail" : null,
"is_readonly" : 0,
"service_id" : "123456"
}
],
"result" => "success"
}
В данном примере, сервис с ID = 999999 не существует, сервис с ID = 654321 недоступен к редактированию например, из за отсутствия необходимых документов, а сервис с ID = 123456 не имеет блокировок и доступен к редактированию.
Пример кода:
Возможные ошибки:
7.16. Функция: service/set_autorenew_flag
Доступность:
Поддержка обработки списка услуг:
Назначение:
установить или снять флаг автопродления.
Поля запроса:
Параметр | Описание |
---|---|
flag_value |
Флаг для установки, допустимые значения 0 и 1, любое ненулевое значение считается равным 1 |
А так же стандартные параметры идентификации доменов и услуг
Поля ответа:
Стандартные поля ответов для успешного изменения и ошибок
Пример запроса:
https://api.reg.ru/api/regru2/service/set_autorenew_flag
dname=qqq.ru
flag_value=1
output_content_type=plain
password=test
username=test
Пример ответа:
{
"result" : "success"
}
Пример кода:
Возможные ошибки:
7.17. Функция: service/suspend
Доступность:
Поддержка обработки списка услуг:
Назначение:
приостановить действие услуги (для домена - снять с делегирования)
Поля запроса:
стандартные параметры идентификации услуг
Поля ответа:
нет
Пример запроса:
https://api.reg.ru/api/regru2/service/suspend
dname=qqq.ru
output_content_type=plain
password=test
username=test
Пример ответа:
{
"result" : "success"
}
Пример кода:
Возможные ошибки:
7.18. Функция: service/resume
Доступность:
Поддержка обработки списка услуг:
Назначение:
возобновить действие услуги (для домена - делегировать)
Поля запроса:
стандартные параметры идентификации услуг
Поля ответа:
нет
Пример запроса:
https://api.reg.ru/api/regru2/service/resume
dname=qqq.ru
output_content_type=plain
password=test
username=test
Пример ответа:
{
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
SERVICE_NOT_SUSPENDED | Service not suspended | Услуга не приостановлена |
SERVICE_EXPIRED | Service expired | Срок действия услуги истек |
7.19. Функция: service/get_depreciated_period
Доступность:
Поддержка обработки списка услуг:
Назначение:
расчитать число периодов до даты истечения срока действия услуги
Поля запроса:
Cтандартные параметры идентификации доменов и услуг
Поля ответа:
Поле | Описание |
---|---|
depreciated_period |
Дробное число периодов, оставшихся до даты истечения срока действия услуги |
Пример запроса:
https://api.reg.ru/api/regru2/service/get_depreciated_period
dname=qqq.ru
output_content_type=plain
password=test
servtype=srv_hosting_ispmgr
username=test
Пример ответа:
{
"answer" : {
"depreciated_period" : "1"
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
7.20. Функция: service/upgrade
Доступность:
Поддержка обработки списка услуг:
Назначение:
произвести повышение подтипа (тарифа) услуги. Используется для изменения тарифа виртуального хостинга ("srv_hosting_ispmgr") и конструктора сайтов REG.RU ("srv_websitebuilder").
Поля запроса:
Параметр | Описание |
---|---|
subtype |
Новый подтип (тариф) услуги. Для услуг хостинга ("srv_hosting_ispmgr") допустимыми значениями являются: "Host-0-0420", "Host-1-0420", "Host-3-0420", "Host-A-0420", "Host-B-0420", "Host-Lite-0420". |
servtype |
Вид услуги. srv_hosting_cpanel |
period |
Число периодов, на который заказывается новая услуга |
А так же стандартные параметры идентификации услуг
Поля ответа:
Поле | Описание |
---|---|
withdrawed_amount |
Количество денежных средств, списанных по операции |
returned_amount |
В том числе зачислено на лицевой счет |
new_service_id |
Идентификатор нового сервиса с новым подтипом (тарифом) |
Пример запроса:
https://api.reg.ru/api/regru2/service/upgrade
dname=qqq.ru
output_content_type=plain
password=test
period=2
servtype=srv_hosting_ispmgr
subtype=Host-2
username=test
Пример ответа:
{
"answer" : {
"bill_id" : "123",
"new_service_id" : "-1",
"returned_amount" : "100",
"withdrawed_amount" : "100"
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
SERVICE_UPGRADE_NOT_ALLOWED | Service upgrade is not allowed | Повышение тарифа для данного сервиса запрещено |
DISK_SIZE_TOO_LARGE | Additional disk space is too large | Указан слишком большой размер дополнительного места |
SERVICE_BLOCKED | Service blocked | Сервис заблокирован |
7.21. Функция: service/partcontrol_grant
Доступность:
Поддержка обработки списка услуг:
Назначение:
предоставить право частичного управления услугой другому пользователю
Поля запроса:
Параметр | Описание |
---|---|
newlogin |
Логин пользователя, которому нужно передать частичное управление |
А также стандартные параметры идентификации доменов и услуг
Поля ответа:
Поле | Описание |
---|---|
newlogin |
Логин пользователя, которому передано частичное управление |
service_id |
идентификатор домена или услуги |
Пример запроса:
https://api.reg.ru/api/regru2/service/partcontrol_grant
newlogin=test_user
output_content_type=plain
password=test
service_id=1
username=test
Пример ответа:
{
"answer" : {
"newlogin" : "test_user",
"service_id" : "1"
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
7.22. Функция: service/partcontrol_revoke
Доступность:
Поддержка обработки списка услуг:
Назначение:
отключить право частичного управления услугой
Поля запроса:
См. стандартные параметры идентификации доменов и услуг
Поля ответа:
Поле | Описание |
---|---|
service_id |
идентификатор домена или услуги |
Пример запроса:
https://api.reg.ru/api/regru2/service/partcontrol_revoke
output_content_type=plain
password=test
service_id=1
username=test
Пример ответа:
{
"answer" : {
"service_id" : "1"
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
7.23. Функция: service/resend_mail
Доступность:
Поддержка обработки списка услуг:
Назначение:
повторить email сообщение.
Поля запроса:
Стандартные параметры идентификации услуг. Помимо этого для услуги SSL-сертификата необходимо указывать тип пересылаемого сообщения mailtype.
Параметр | Описание |
---|---|
mailtype |
Тип email сообщения: |
Поля ответа:
Поле | Описание |
---|---|
service_id |
идентификатор домена или услуги |
dname |
имя домена сервиса |
Пример запроса:
https://api.reg.ru/api/regru2/service/resend_mail
output_content_type=plain
password=test
servtype=srv_ssl_certificate
username=test
Пример ответа:
{
"answer" : {
"dname" : "test.ru",
"result" : "success",
"service_id" : "111"
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Пример ошибки для не поддерживаемых услуг:
{
error_text : 'Mail resend allowed only for hosting and ssl certificates',
error_code : 'ONLY_HOSTING_AND_SSL_CERTIFICATES',
result : 'error'
}
Пример ошибки в случае если не возможно повторно отправить email
:
{
error_code : "CAN_NOT_RESEND_EMAIL"
result : 'error'
}
7.24. Функция: service/refill
Доступность:
Поддержка обработки списка услуг:
Назначение:
Пополнение баланса услуги. Поддерживаемые типы услуг:
- srv_seowizard — Автоматическое SEO-продвижение (минимальная сумма пополнения - 10 рублей.)
Поля запроса:
стандартные параметры идентификации услуг
Поля ответа:
Поле | Описание |
---|---|
bill_id |
Номер счёта заказа. |
pay_type |
Способ оплаты. |
currency |
Валюта указанной цены. |
payment |
Цена заказа. |
pay_notes |
Комментарий, относящийся к используемому способу оплаты. |
service_id |
Идентификатор услуги. |
Пример запроса:
идентификация по service_id
https://api.reg.ru/api/regru2/service/refill
amount=10
currency=UAH
output_content_type=plain
password=test
service_id=123456
username=test
Пример ответа:
{
"answer" : {
"bill_id" : "1000000",
"currency" : "RUR",
"pay_notes" : "Amount successfully charged",
"pay_type" : "prepay",
"payment" : "36.88",
"service_id" : "123456"
},
"result" : "success"
}
Возможные ошибки:
7.25. Функция: service/refund
Доступность:
Поддержка обработки списка услуг:
Назначение:
Вывод средств с аккаунта внешней услуги на аккаунт клиента Reg.ru. Поддерживаемые типы услуг: srv_seowizard — Автоматическое SEO-продвижение
Поля запроса:
стандартные параметры идентификации услуг
Поля ответа:
нет
Пример ответа:
{
"result" : "success"
}
Возможные ошибки:
7.26. Функция: service/get_balance
Доступность:
Поддержка обработки списка услуг:
Назначение:
Получение баланса внешней услуги. Поддерживаемые типы услуг: srv_seowizard — Автоматическое SEO-продвижение
Поля запроса:
стандартные параметры идентификации услуг
Поля ответа:
нет
Пример ответа:
{
"answer" : {
"balance" : "10",
"currency" : "USD"
},
"result" : "success"
}
Возможные ошибки:
7.27. Функция: service/seowizard_manage_link
Доступность:
Поддержка обработки списка услуг:
Назначение:
Получение ссылки на панель управления услугой "Автоматическое SEO-продвижение"
Поля запроса:
стандартные параметры идентификации услуг
Поля ответа:
нет
Пример ответа:
{
"answer" : {
"link" : "http://reg.ru/seowizard.html"
},
"result" : "success"
}
Возможные ошибки:
7.28. Функция: service/get_websitebuilder_link
Доступность:
Поддержка обработки списка услуг:
Назначение:
Получение ссылки для публикации конструктора
Поля запроса:
стандартные параметры идентификации услуг
Поля ответа:
нет
Пример ответа:
{
"answer" : {
"link" : "http://www.reg.ru/ru/?login_hash=123"
},
"result" : "success"
}
Возможные ошибки:
8. Функции для работы с доменами
8.1. Функция: domain/nop
Доступность:
Поддержка обработки списка услуг:
Назначение:
для тестирования, также позволяет проверить доступность домена и получить его id, если передать username+password+dname
Поля запроса:
отсутствуют или стандартные параметры идентификации доменов
Поля ответа:
Поле | Описание |
---|---|
service_id |
идентификатор домена, присутствует только при передаче имени домена в поле domain_name/dname |
Пример запроса:
проверка доступности API
https://api.reg.ru/api/regru2/domain/nop
output_content_type=plain
проверка существования домена с получением его id
https://api.reg.ru/api/regru2/domain/nop
dname=qqq.ru
output_content_type=plain
password=test
username=test
Пример ответа:
{
"result" : "success"
}
Пример кода:
Возможные ошибки:
8.2. Функция: domain/get_prices
Доступность:
Поддержка обработки списка услуг:
Назначение:
Получение цен на регистрацию/продление доменов во всех доступных зонах.
Поля запроса:
Параметр | Описание |
---|---|
используйте аутентификацию для получения партнёрских цен. |
|
show_renew_data |
флаг возврата цен для продления регистрации (1/0). Необязательное поле. |
show_update_data |
Флаг возврата цен для обновления домена (1/0). Необязательное поле. |
currency |
Идентификатор валюты, в которой будут возвращаться цены (RUR, UAH, USD, EUR). Необязательное поле, по умолчанию цены указываются в рублях. |
Поля ответа:
Поле | Описание |
---|---|
currency |
валюта, в которой возвращены цены |
price_group |
тарифный план |
prices |
цены доменнов по зонам |
renew_price |
стоимость продления для вашего тарифа |
retail_renew_price |
стоимость продления для пользователя со статусом "Розница" |
reg_price |
стоимость регистрации для вашего тарифа |
retail_reg_price |
стоимость регистрации для пользователя со статусом "Розница" |
Пример запроса:
https://api.reg.ru/api/regru2/domain/get_prices
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"currency" : "RUR",
"price_group" : "Retail",
"prices" : {
"__idn.com" : {
"reg_max_period" : "10",
"reg_min_period" : "1",
"reg_price" : "960"
},
"com" : {
"reg_max_period" : "10",
"reg_min_period" : "1",
"reg_price" : "450"
},
"ru" : {
"reg_max_period" : "1",
"reg_min_period" : "1",
"reg_price" : "590"
},
"рф" : {
"reg_max_period" : "1",
"reg_min_period" : "1",
"reg_price" : "1200"
}
}
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
8.3. Функция: domain/get_suggest
Доступность:
Поддержка обработки списка услуг:
Назначение:
подбор имени для домена по ключевым словам, функция работает подобно сервису Reg.Choice
Поля запроса:
Параметр | Описание |
---|---|
word |
Главное ключевое слово, например «дом» или «domain». Обязательное поле. |
additional_word |
Дополнительное ключевое слово, например «новый» или «cool». Необязательное поле. |
category |
Категория подбираемых имён. Может принимать значения: 'pattern' — шаблонные («имя + префикс»), 'search_trends' — поисковые тренды, 'all' — все. По умолчанию возвращаются имена из всех категорий. |
tlds |
Зона, в которой проверяется доступность доменного имени к регистрации. Зоны могут быть такими: 'com', 'info', 'name', 'net', 'org', 'ru', 'ru.com', 'su', 'рф'. Для задания нескольких зон одновременно, необходимо добавить в запрос это поле для каждой зоны: например "...&tlds=ru&tlds=su&tlds=com". Если поле не задано ни разу, то доступность проверяется во всех перечисленных выше зонах. |
use_hyphen |
Если значение истинно, использовать дефис в для разделения отдельных слов в доменном имени ("cool-domain"). По умолчанию слова склеиваются без разделителя ("cooldomain"). |
Поля ответа:
Поле | Описание |
---|---|
suggestions |
Массив вариантов имён для доменов. Каждый элемент в массиве содержит поле "name" (вариант имени) и массив "avail_in", в котором перечислены зоны, где такое доменное имя доступно к регистрации. Максимальный размер массива — 100. |
Пример запроса:
https://api.reg.ru/api/regru2/domain/get_suggest
additional_word=новый
output_content_type=plain
password=test
tlds=рф
use_hyphen=1
username=test
word=дом
Пример ответа:
{
"answer" : {
"suggestions" : [
{
"avail_in" : [
"рф",
"su"
],
"name" : "дом"
},
{
"avail_in" : [
"ru",
"su"
],
"name" : "dom"
},
{
"avail_in" : [
"рф",
"su"
],
"name" : "новый"
},
{
"avail_in" : [
"ru",
"su",
"org"
],
"name" : "novii"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
8.4. Функция: domain/get_premium_prices
Доступность:
Поддержка обработки списка услуг:
Назначение:
возвращает цены для указанных премиум-доменов. Функция проверяет только домены, которые регистратура определила как премиальные и разрешает регистрировать только по повышенной стоимости.
Поля запроса:
Параметр | Описание |
---|---|
domains |
Список доменов (не более 100 штук) |
currency |
Валюта |
Поля ответа:
Поле | Описание |
---|---|
domains |
Массив хешей с премиум-доменами. Каждый хеш в массиве содержит поле \"domain_name\" (домен), поле \"register_price\" (цена регистрации), renew_price, register_period, renew_period |
currency |
Валюта |
Пример запроса:
https://api.reg.ru/api/regru2/domain/get_premium_prices
input_data={"currency":"USD","domains":["ua.ae.org 007.academy"]}
input_format=json
password=test
username=test
Пример ответа:
{
"answer" : {
"currency" : "USD",
"domains" : [
{
"domain_name" : "007.academy",
"register_period" : "1",
"register_price" : "238.16",
"renew_period" : "1",
"renew_price" : "238.16"
},
{
"domain_name" : "ua.ae.org",
"register_period" : "1",
"register_price" : "280.51",
"renew_period" : "0",
"renew_price" : "0.000"
}
]
},
"result" : "success"
}
Возможные ошибки:
8.5. Функция: domain/get_deleted
Доступность:
Поддержка обработки списка услуг:
Назначение:
Получение списка освобождённых доменов, функция работает подобно странице Свободные и удаленные домены
Поля запроса:
Параметр | Описание |
---|---|
tlds |
Зоны, в которых искать освобождённые домены. Зоны могут быть такими: 'ru', 'рф', 'su'. Для задания нескольких зон одновременно, необходимо добавить в запрос это поле для каждой зоны: например "...&tlds=ru&tlds=рф". Если поле не задано ни разу, то поиск идёт во всех перечисленных выше зонах. |
deleted_from |
Дата удаления доменов, начиная с которой включать домены в результирующий список. Формат даты: 'ГГГГ-ММ-ДД'. По умолчанию равна последней дате удаления доменов. |
deleted_to |
Дата удаления доменов, заканчивая которой включать домены в результирующий список. Формат даты: 'ГГГГ-ММ-ДД'. По умолчанию равна последней дате удаления доменов. Значение 'deleted_to' не может быть позже значения 'deleted_from' более чем на два месяца. |
created_from |
Дата первичной регистрации доменов, начиная с которой включать домены в результирующий список. Формат даты: 'ГГГГ-ММ-ДД'. |
created_to |
Дата первичной регистрации доменов, заканчивая которой включать домены в результирующий список. Формат даты: 'ГГГГ-ММ-ДД'. |
hidereg |
При значении 1 возвращаются только свободные на данный день домены из общего списка освобождённых, по умолчанию — 0. |
min_pr |
Минимальное значение Google PR домена |
min_cy |
Минимальное значение Яндекс тИЦ домена |
Поля ответа:
Поле | Описание |
---|---|
domains |
Список доменов с результатом. Содержит поля: domain_name — имя домена, date_delete — дата удаления, registered — статус текущей регистрации домена: 'NOT REGISTERED' (свободен) или 'REGISTERED' (занят), first_create_date — дата первичной регистрации домена, yandex_tic — значение Яндекс тИЦ домена, google_pr — значение Google PR домена. Максимальный размер списка — 50000. |
Пример запроса:
https://api.reg.ru/api/regru2/domain/get_deleted
min_pr=1
password=test
tlds=ru
username=test
Пример ответа:
{
"answer" => {
"domains" => [
{
"domain_name" => "apmatypa.ru",
"registered" => "NOT REGISTERED",
"yandex_tic" => 0,
"first_create_date" => "2006-05-18",
"google_pr" => "2",
"date_delete" => "2013-09-26"
},
{
"domain_name" => "hudojnick.ru",
"registered" => "NOT REGISTERED",
"yandex_tic" => 0,
"first_create_date" => "2004-10-19",
"google_pr" => "1",
"date_delete" => "2013-09-26"
},
{
"domain_name" => "dpr-ryazan.ru",
"registered" => "NOT REGISTERED",
"yandex_tic" => 0,
"first_create_date" => "2007-07-23",
"google_pr" => "1",
"date_delete" => "2013-09-26"
}
]
}
"result" => "success"
}
Пример кода:
Возможные ошибки:
8.6. Функция: domain/check
Доступность:
Поддержка обработки списка услуг:
Назначение:
проверка доступности регистрации домена
Поля запроса:
Параметр | Описание |
---|---|
domain_name |
Имя домена, поле не совместимо со спиcком domains. |
domains |
Массив со списком вариантов имён доменов, каждый элемент массива является хешем с ключём dname или domain_name. Используется только в случае запроса в форматах JSON, XML. |
is_transfer |
При значении 1 делается проверка на возможность переноса домена в REG.RU, при нулевом значении — обычная проверка на возможность регистрации, по умолчанию — 0 |
premium_as_taken |
По всем премиум-доменам отвечать что домен занят (0/1). Необязательное поле |
currency |
Валюта в которой будут возвращаться цены (RUR, UAH, USD, EUR). Необязательное поле, по умолчанию цены указываются в рублях |
Поля ответа:
Поле | Описание |
---|---|
domains |
Массив со списком хешей, содержащий имена доменов dname и их доступность. При положительном ответе поле result будет иметь значение Available. |
is_premium |
Флаг показывающий что это премиум-домен, при указании premium_as_taken=1 возвращается всем премиумам |
price |
Цена регистрации домена на 1 год, отображается только доступного к регистрации у премиум-домена с флагом is_premium |
renew_price |
Цена продления домена на 1 год, отображается только доступного к регистрации у премиум-домена с флагом is_premium |
currency |
Валюта в которой возвращаться цены |
Пример запроса:
https://api.reg.ru/api/regru2/domain/check
input_data={"domains":[{"dname":"ya.ru"},{"dname":"yayayayayaya.ru"},{"dname":"xn--000.com"},{"dname":"china.cn"},{"dname":"ййй.me"},{"dname":"wwww.ww"},{"dname":"a.ru"},{"dname":"qqйй.com"},{"dname":"rr.ru.com"}]}
input_format=json
password=test
username=test
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "ya.ru",
"error_code" : "DOMAIN_ALREADY_EXISTS",
"result" : "Domain already exists, use whois service"
},
{
"dname" : "yayayayayaya.ru",
"result" : "Available"
},
{
"dname" : "xn--000.com",
"error_code" : "INVALID_DOMAIN_NAME_PUNYCODE",
"result" : "Invalid punycode value for domain_name"
},
{
"dname" : "china.cn",
"error_code" : "TLD_DISABLED",
"result" : "Registration in .cn TLD is not available"
},
{
"dname" : "ййй.me",
"error_code" : "DOMAIN_BAD_NAME",
"result" : "Invalid domain name=> ййй.me"
},
{
"dname" : "wwww.ww",
"error_code" : "INVALID_DOMAIN_NAME_FORMAT",
"result" : "domain_name is invalid or unsupported zone"
},
{
"dname" : "a.ru",
"error_code" : "DOMAIN_INVALID_LENGTH",
"result" : "Invalid domain name length, You have entered too short or too long name"
},
{
"dname" : "qqйй.com",
"error_code" : "HAVE_MIXED_CODETABLES",
"result" : "You can not mix latin and cyrillic letters in domain names"
},
{
"currency" : "RUR",
"dname" : "rr.ru.com",
"is_premium" : "1",
"price" : "60000",
"renew_price" : "600",
"result" : "Available"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
8.7. Функция: domain/create
Доступность:
Поддержка обработки списка услуг:
Назначение:
подать заявку на регистрацию домена.
Поля запроса
Поле | Мин. длина | Макс. длина | Описание |
---|---|---|---|
domain_name | зависят от зоны |
Имя регистрируемого домена. Допустимые символы (есть или нет IDN) и длина поля зависят от доменной зоны. Обязательное поле. P.S. Возможность оптовой регистрации (большое количество доменов одной зоны) одним запросом для VIP-клиентов. |
|
domains | — | Массив со списком доменов; каждый элемент массива является хешем с ключами dname — имя домена и дополнительными сервисами для каждого домена (srv_certificate, srv_parking, srv_webfwd), если они нужны. Несовместимо с передачей имени домена через domain_name. | |
period | 1 | 2 | Период, на который производится регистрация домена, допустимые значения зависят от доменной зоны, например, для .ru и .su только 1. Обязательное поле. |
enduser_ip | 11 | 15 | IP-адрес конечного пользователя (пользователя, который сделал заказ). Обязательное поле для партнёра, у обычного клиента по умолчанию подставляется IP-адрес с которого делается запрос. |
contacts | — | Группирующий хеш полей контактных данных. Список полей зависит от регистрируемой зоны и/или является ли будущий владелец домена физ. или юридическим лицом. Применим только при передаче данных в JSON или XML форматах. | |
profile_type | — | Тип профиля контактных данных пользователя. Параметр не совместим с явным указанием контактных данных (имеет больший приоритет — перезаписывает их) и требует указания имени профиля profile_name. На данный момент допустимы такие варианты: GTLD, EU, TJ, RU.PP, RU.ORG, NEWTCI.ORG, NEWTCI.PP. В дальнейшем их количество будет увеличено. | |
profile_name | — | Имя профиля контактных данных пользователя. Параметр не совместим с явным указанием контактных данных (имеет больший приоритет — перезаписывает их) и требует указания имени профиля profile_type. Для разных типов профилей имена могут повторяться. На данные момент создаются профили только через web-интерфейс. | |
nss | — | Группирующий хеш полей имён и IP-адресов NS-серверов. Применим только при передаче данных в JSON или XML форматах. | |
not_delegated | 1 | При выставлении этого флага для .ru, .su и .рф доменов игнорируются значения полей NS-серверов, хеша NSS и домен регистрируется неделегированным. Для остальных зон не применим. Допустимые значения 0 и 1. | |
user_servid | 32 | 32 | ID домена, задаваемый пользователем. Допустимые символы: цифры 0..9 и латинские буквы a..f. Автоматически идентификатор не создаётся, т.е. если он не был задан при создании услуги, то поле остаётся пустым. Необязательное поле. |
comment | 0 | 255 | Комментарий. Необязательное поле. |
admin_comment | 0 | 255 | Административный комментарий. Необязательное поле. |
pay_type ok_if_no_money |
— | См. Общие параметры оплаты. | |
subtype | 0 | 15 | Тип регистрации. Опциональное поле. Возможное значение (кроме пустого значения по умолчанию): «preorder» — предзаказ доменов .РФ. |
reg_premium | 1 | Регистрация премиум домена. Опциональное поле. Возможное значение (кроме пустого значения по умолчанию): «1» — показывает что клиент знает что это премиум домен и знает его цену. Цена премиум домена может быть от 10 до 1000 раз больше, чем обычная регистрация. Проверяйте цену на /choose/domain/ или через функцию domain/get_premium_prices |
Описание полей для работы с папками
Поля этой категории являются необязательными.
Параметр | Описание |
---|---|
folder_name |
Папка, в которую будет добавлен домен. Если указано имя несуществующей папки и не установлен флаг no_new_folder - папка будет создана. |
folder_id |
Числовой идентификатор папки, в которую будет добавлен домен. |
no_new_folder |
Не создавать папку если она не существует. |
Описание полей контактных данных
Контактные данные для .RU/.SU/.РФ доменов
Обратите внимание, что в этой операции допустимо использовать один из двух взаимоисключающих наборов полей — данные организации (если домен регистрируется на организацию), либо данные частного лица (если домен регистрируется на частное лицо). Также некоторые поля могут быть многострочными.
Общие поля для .RU/.SU/.РФ
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
sms_security_number |
8 |
25 |
Номер для отправки SMS-сообщений администратору домена. |
p_addr_zip |
2 |
15 |
Почтовый индекс администратора домена. |
p_addr_area |
3 |
65 |
Область из почтового адреса администратора домена. |
p_addr_city |
3 |
25 |
Название города из почтового адреса администратора домена. |
p_addr_addr |
5 |
105 |
Адрес включающий название улицы и номер дома (возможна доп. информация в виде номера корпуса/квартиры и т.д.). |
p_addr_recipient |
5 |
45 |
Имя получателя(физ лицо либо, название отдела) |
phone |
8 |
255 |
Номер телефона администратора домена. Телефон указывается с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и дефисы не допускаются. Запись может быть многострочной. |
fax |
8 |
255 |
Номер телефакса администратора домена. Номер телефакса указывается с международным кодом (включая символ +); международный код, код города и местный номер разделяются пробелами. Скобки и тире не допускаются. Запись может быть многострочной. Запись не является обязательной. Пример: +7 3432 811221\n+7 495 8102233 |
e_mail |
6 |
255 |
Адрес электронной почты администратора домена в формате RFC-822. Запись может быть многострочной. Пример: ncc@test.ru\ntest@test.ru |
Данные организации (только при регистрации домена на организацию!)
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
org |
6 |
255 |
Полное наименование организации-администратора домена латинскими буквами, предназначенное для использования услугой 'whois'. Запись может быть многострочной. |
org_r |
10 |
255 |
Полное наименование организации-администратора домена на русском языке в соответствии с учредительными документами. Для нерезидентов указывается написание на национальном языке (либо на английском языке). Запись может быть многострочной. |
code |
10 |
10 |
Идентификационный номер налогоплательщика (ИНН), присвоенный организации-администратору. Запись может содержать пустую строку, если администратором является нерезидент РФ, не имеющий идентификационного номера налогоплательщика. |
kpp |
9 |
9 |
КПП организации (для Российских организаций). Обязательное поле. |
country |
2 |
2 |
Двухбуквенный ISO-код страны, в которой зарегистрирована организация. |
address_r_zip |
2 |
15 |
Почтовый индекс юридического адреса организации в соответствии с учредительными документами. |
address_r_area |
3 |
65 |
Область из юридического адреса организации в соответствии с учредительными документами. |
address_r_city |
3 |
25 |
Название города юридического адреса организации в соответствии с учредительными документами. |
address_r_addr |
5 |
105 |
Адрес включающий название улицы и номер дома (возможна доп. информация в виде номера корпуса/квартиры и т.д.) юридического адреса организации в соответствии с учредительными документами. |
Данные частного лица (только при регистрации домена на частное лицо!)
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
person |
8 |
64 |
Имя, первая буква отчества (без точки) и фамилия администратора домена, записанные латинскими буквами. Предназначено для использования услугой 'whois'. Для иностранцев поле содержит имя в оригинальном написании (или в английской транслитерации). |
person_r_surname |
1 |
32 |
Фамилия администратора домена на русском языке в соответствии с паспортными данными. Для иностранцев поле содержит фамилию в оригинальном написании (при невозможности в английской транслитерации). |
person_r_name |
1 |
32 |
Имя администратора домена на русском языке в соответствии с паспортными данными. Для иностранцев поле содержит имя в оригинальном написании (при невозможности в английской транслитерации). |
person_r_patronimic |
1 |
32 |
Отчество администратора домена на русском языке в соответствии с паспортными данными. Для иностранцев поле содержит отчество в оригинальном написании (при невозможности в английской транслитерации) или остаётся пустым. |
passport_number |
6 |
30 |
Серия и номер паспорта. В написании римских цифр допустимо использование только латинских букв. Знак номера перед номером паспорта не ставится. Паспорта СССР (паспорта старого образца) не принимаются. |
passport_place |
3 |
200 |
Наименование органа выдавшего паспорт. Запись может быть многострочной. |
passport_date |
10 |
10 |
Дата выдачи паспорта. Дата записывается в формате ДД.ММ.ГГГГ. |
birth_date |
10 |
10 |
Дата рождения администратора домена в формате ДД.ММ.ГГГГ. |
country |
2 |
2 |
Двухбуквенный ISO-код страны, гражданином которой является частное лицо. |
Контактные данные для доменной зоны .tj
Регистрация доменов по API в зоне .TJ не доступна.
На данный момент все контактные данные должны заполняться латиницей.
Данные владельца домена
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
o_type |
1 |
1 |
Тип контакта. "1" для регистрации домена на физическиое лицо, "2" - для регистрации домена на юридическое лицо. |
o_whois |
2 |
64 |
Описание домена. Отображается в whois-запросе. |
o_full_name |
2 |
64 |
Владелец домена: полное название организации или ФИО владельца. |
o_email |
6 |
90 |
Адрес электронной почты владельца домена в формате RFC-822. |
o_phone |
10 |
16 |
Телефон владельца домена, указывается в международном формате с пробелами между кодом страны, кодом города и внутренним номером. |
o_fax |
10 |
16 |
Факс владельца домена, указывается в международном формате с пробелами между кодом страны, кодом города и внутренним номером. |
o_addr |
2 |
128 |
Адрес владельца домена: юридический адрес организации в соответствии с учредительными документами или адрес проживания владельца домена. |
o_city |
2 |
64 |
Адрес владельца домена: город. |
o_country_code |
2 |
2 |
Двухбуквенный ISO-код страны владельца домена. |
Данные администратора домена
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
a_full_name |
2 |
64 |
ФИО администратора домена. |
a_nic_name |
2 |
32 |
Краткое имя администратора или его nickname, одно слово. |
a_email |
6 |
90 |
Адрес электронной почты администратора домена в формате RFC-822. |
a_fax |
10 |
16 |
Телефон(!) администратора домена, указывается в международном формате с пробелами между кодом страны, кодом города и внутренним номером. |
a_addr |
2 |
128 |
Адрес администратора домена. |
a_city |
Адрес администратора домена: город. |
||
a_postcode |
3 |
10 |
Адрес администратора домена: почтовый индекс. |
a_country_code |
2 |
2 |
Двухбуквенный ISO-код страны администратора домена. |
Данные технического администратора домена
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
t_full_name |
2 |
64 |
ФИО технического администратора домена. |
t_nic_name |
2 |
32 |
Краткое имя технического администратора или его nickname, одно слово. |
t_email |
6 |
90 |
Адрес электронной почты технического администратора домена в формате RFC-822. |
t_fax |
10 |
16 |
Телефон(!) технического администратора домена, указывается в международном формате с пробелами между кодом страны, кодом города и внутренним номером. |
t_addr |
2 |
128 |
Адрес технического администратора домена. |
t_city |
2 |
64 |
Адрес технического администратора домена: город. |
t_postcode |
3 |
10 |
Адрес технического администратора домена: почтовый индекс. |
t_country_code |
2 |
2 |
Двухбуквенный ISO-код страны технического администратора домена. |
Регистрация доменов в зонах com.ua, kiev.ua
На данный момент все контактные данные должны заполняться латинскими буквами. Для доменных зон com.ua, kiev.ua используется только два вида контактов: контакты владельца (администратора) домена и технические контакты. Изменение контактных данных владельца домена после регистрации в автоматическом режиме невозможно.
Данные владельца домена
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
o_company |
5 |
80 |
Название организации - владельца домена. |
o_first_name |
2 |
40 |
Имя контактного лица |
o_last_name |
2 |
40 |
Фамилия контактного лица |
o_email |
6 |
80 |
Контактный email-адрес владельца домена. |
o_phone |
8 |
20 |
Номер телефона контактного лица. Телефон указывается с международном формате. |
o_fax |
8 |
20 |
Номер телефакса контактного лица. Телефон указывается с международном формате. |
o_addr |
8 |
80 |
Адрес контактного лица: улица, дом, офис (квартира) |
o_city |
2 |
80 |
Адрес контактного лица: город |
o_state |
2 |
40 |
Адрес контактного лица: область/край/штат |
o_postcode |
3 |
10 |
Почтовый индекс контактного лица |
o_country_code |
2 |
2 |
Двухбуквенный ISO-код страны контактного лица. Список всех кодов стран можно найти тут |
Данные техподдержки домена
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
t_company |
5 |
80 |
Организация, осуществляющая техподдержку домена. |
t_first_name |
2 |
40 |
Имя контактного лица |
t_last_name |
2 |
40 |
Фамилия контактного лица |
t_email |
6 |
80 |
Контактный email-адрес контактного лица. |
t_phone |
8 |
20 |
Номер телефона контактного лица. Телефон указывается с международном формате. |
t_fax |
8 |
20 |
Номер телефакса контактного лица. Телефон указывается с международном формате. |
t_addr |
8 |
80 |
Адрес контактного лица: улица, дом, офис (квартира) |
t_city |
2 |
80 |
Адрес контактного лица: город |
t_state |
2 |
40 |
Адрес контактного лица: область/край/штат |
t_postcode |
3 |
10 |
Почтовый индекс контактного лица |
t_country_code |
2 |
2 |
Двухбуквенный ISO-код страны контактного лица. Список всех кодов стран можно найти тут |
Регистрация доменов в зоне pp.ua
На данный момент все контактные данные должны заполняться латинскими буквами. При регистрации домена в зоне pp.ua в контактных данных владельца домена необходимо указывать номер мобильного телефона. После регистрации домена на этот номер будет отправлено SMS с кодом активации домена, который вместе с именем домена нужно ввести здесь:
http://www.pp.ua/rus/confirm.html. Допускается регистрировать не более трёх доменов в месяц на один мобильный телефон. Подробнее с правилами домена pp.ua можно ознакомиться
здесь. Остальные правила регистрации доменов в зоне pp.ua соответствуют правилам регистрации доменов в других зонах.
Регистрация доменов в зонах *.kz (все домены Казахстана)
С 7 сентября 2010 г. в соответствии с Правилами KazNIC в контактных данных домена необходимо указывать адрес серверного оборудования, на котором располагается домен. Домены, зарегистрированные после указанной даты, обязаны располагаться на серверах Казахстана. Для указания адреса серверного оборудования при регистрации домена или изменении контактов необходимо добавить следующие поля в хеш contacts.
Адрес серверного оборудования
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
srvloc_state |
2 |
40 |
Область / Штат |
srvloc_city |
2 |
40 |
Город |
srvloc_street |
2 |
255 |
Адрес (улица, дом) |
Описание домена
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
reg_purpose |
5 |
150 |
Описание домена |
Если не планируется сразу привязывать домен к хостингу или парковке, можно использовать следующие значения для полей адреса серверного оборудования:
srvloc_state | KAR |
srvloc_city | Karaganda |
srvloc_street | Chizhevskogo, 17 |
reg_purpose | Private domain |
Регистрация доменов в зоне .es
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
o_es_form_juridica |
1 |
3 |
Форма собственности владельца домена |
a_es_form_juridica |
1 |
3 |
Форма собственности администратора домена |
b_es_form_juridica |
1 |
3 |
Форма собственности биллинга домена |
t_es_form_juridica |
1 |
3 |
Форма собственности технической поддержки домена |
o_es_identificacion |
3 |
30 |
Номер удостоверяющего документа владельца домена |
a_es_identificacion |
3 |
30 |
Номер удостоверяющего документа администратора домена |
b_es_identificacion |
3 |
30 |
Номер удостоверяющего документа биллинга домена |
t_es_identificacion |
3 |
30 |
Номер удостоверяющего документа технической поддержки домена |
o_es_tipo_identificacion |
1 |
1 |
Вид удостоверяющего документа владельца домена |
a_es_tipo_identificacion |
1 |
1 |
Вид удостоверяющего документа администратора домена |
b_es_tipo_identificacion |
1 |
1 |
Вид удостоверяющего документа биллинга домена |
t_es_tipo_identificacion |
1 |
1 |
Вид удостоверяющего документа технической поддержки домена |
Регистрация доменов в зоне .jobs
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
company_url |
4 |
255 |
URL сайта компании |
ind_classification |
1 |
2 |
Классификация отрасли |
hra_name |
2 |
3 |
Является ли организация членом Human Resource Association? |
job_title |
4 |
255 |
Должность контактного лица |
admin_type |
1 |
1 |
Является ли контакт административным |
Регистрация доменов в зоне .travel
Для регистрации домена .TRAVEL необходимо пройти аутентификацию и получить идентификационный номер («TRAVEL UIN») на сайте authentication.travel. Если Вы уже прошли аутентификацию и выданный Вам TRAVEL UIN подтвержден (его статус Вы можете проверить на сайте authentication.travel), введите Ваш TRAVEL UIN для продолжения процедуры регистрации:
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
travel_uin |
1 |
100 |
TRAVEL UIN |
Регистрация доменов в зоне .us
Параметр | Максимальная длина поля | Описание |
---|---|---|
RselnexusAppPurpose |
2 |
Сфера использования домена |
RselnexusCategory |
3 |
Владельец домена |
Регистрация доменов в зонах .МОСКВА, .MOSCOW, .ДЕТИ, .TATAR, .RU.NET, .COM.RU, .MSK.RU, .SPB.RU и других геодоменов для организаций
В зонах .RU.NET, .COM.RU, .EXNET.SU и геодоменах .ABKHAZIA.SU, .ADYGEYA.RU, .ADYGEYA.SU, .AKTYUBINSK.SU, .ARKHANGELSK.SU, .ARMENIA.SU, .ASHGABAD.SU, .AZERBAIJAN.SU, .BALASHOV.SU, .BASHKIRIA.RU, .BASHKIRIA.SU, .BIR.RU, .BRYANSK.SU, .BUKHARA.SU, .CBG.RU, .CHIMKENT.SU, .DAGESTAN.RU, .DAGESTAN.SU, .EAST-KAZAKHSTAN.SU, .EXNET.SU, .GEORGIA.SU, .GROZNY.RU, .GROZNY.SU, .IVANOVO.SU, .JAMBYL.SU, .KALMYKIA.RU, .KALMYKIA.SU, .KALUGA.SU, .KARACOL.SU, .KARAGANDA.SU, .KARELIA.SU, .KHAKASSIA.SU, .KRASNODAR.SU, .KURGAN.SU, .KUSTANAI.RU, .KUSTANAI.SU, .LENUG.SU, .MANGYSHLAK.SU, .MARINE.RU, .MORDOVIA.RU, .MORDOVIA.SU, .MSK.RU, .MSK.SU, .MURMANSK.SU, .MYTIS.RU, .NALCHIK.RU, .NALCHIK.SU, .NAVOI.SU, .NORTH-KAZAKHSTAN.SU, .NOV.RU, .NOV.SU, .OBNINSK.SU, .PENZA.SU, .POKROVSK.SU, .PYATIGORSK.RU, .RU.NET, .SOCHI.SU, .SPB.RU, .SPB.SU, .TASHKENT.SU, .TERMEZ.SU, .TOGLIATTI.SU, .TROITSK.SU, .TSELINOGRAD.SU, .TULA.SU, .TUVA.SU, VLADIKAVKAZ.RU, .VLADIKAVKAZ.SU, .VLADIMIR.RU, .VLADIMIR.SU, .VOLOGDA.SU надо указывать только владельца домена, без администартора и техподдержки
Данные владельца домена
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
o_first_name |
2 |
40 |
Имя. |
o_first_name_ru |
2 |
40 |
Имя (по-русски). |
o_last_name |
2 |
40 |
Фамилия. |
o_last_name_ru |
2 |
40 |
Фамилия (по-русски). |
o_patronimic |
2 |
25 |
Отчество. |
o_patronimic_ru |
2 |
25 |
Отчество (по-русски). |
o_city |
2 |
40 |
Город. |
o_city_ru |
3 |
80 |
Город (по-русски). |
o_addr |
8 |
80 |
Адрес. |
o_addr_ru |
10 |
255 |
Адрес (по-русски). |
o_state |
2 |
40 |
Регион. |
o_state_ru |
2 |
40 |
Регион (по-русски). |
o_phone |
8 |
20 |
Телефон. |
o_email |
6 |
90 |
EMail. |
o_postcode |
3 |
10 |
Почтовый Индекс. |
o_country_code |
2 |
2 |
Страна. |
o_company |
5 |
80 |
Компания. |
o_company_ru |
5 |
255 |
Компания (по-русски). |
o_code |
6 |
12 |
ИНН организации. |
o_l_addr_ru |
10 |
255 |
Адрес (по-русски). |
o_l_addr |
10 |
255 |
Адрес. |
o_l_city |
2 |
40 |
Город. |
o_l_city_ru |
3 |
80 |
Город (по-русски). |
o_l_postcode |
3 |
8 |
Почтовый Индекс. |
o_l_state |
2 |
40 |
Регион. |
o_l_state_ru |
2 |
40 |
Регион (по-русски). |
Данные администратора домена
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
a_first_name |
2 |
40 |
Имя. |
a_first_name_ru |
2 |
40 |
Имя (по-русски). |
a_last_name |
2 |
40 |
Фамилия. |
a_last_name_ru |
2 |
40 |
Фамилия (по-русски). |
a_patronimic |
2 |
25 |
Отчество. |
a_patronimic_ru |
2 |
25 |
Отчество (по-русски). |
a_city |
2 |
40 |
Город. |
a_city_ru |
3 |
80 |
Город (по-русски). |
a_addr |
8 |
80 |
Адрес. |
a_addr_ru |
10 |
255 |
Адрес (по-русски). |
a_state |
2 |
40 |
Регион. |
a_state_ru |
2 |
40 |
Регион (по-русски). |
a_phone |
8 |
20 |
Телефон. |
a_email |
6 |
90 |
EMail. |
a_postcode |
3 |
10 |
Почтовый Индекс. |
a_country_code |
2 |
2 |
Страна. |
a_company |
5 |
80 |
Компания. |
a_company_ru |
5 |
255 |
Компания (по-русски). |
a_code |
6 |
12 |
ИНН организации. |
a_l_addr_ru |
10 |
255 |
Адрес (по-русски). |
a_l_addr |
10 |
255 |
Адрес. |
a_l_city |
2 |
40 |
Город. |
a_l_city_ru |
3 |
80 |
Город (по-русски). |
a_l_postcode |
3 |
8 |
Почтовый Индекс. |
a_l_state |
2 |
40 |
Регион. |
a_l_state_ru |
2 |
40 |
Регион (по-русски). |
Данные техподдержки домена
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
t_first_name |
2 |
40 |
Имя. |
t_first_name_ru |
2 |
40 |
Имя (по-русски). |
t_last_name |
2 |
40 |
Фамилия. |
t_last_name_ru |
2 |
40 |
Фамилия (по-русски). |
t_patronimic |
2 |
25 |
Отчество. |
t_patronimic_ru |
2 |
25 |
Отчество (по-русски). |
t_city |
2 |
40 |
Город. |
t_city_ru |
3 |
80 |
Город (по-русски). |
t_addr |
8 |
80 |
Адрес. |
t_addr_ru |
10 |
255 |
Адрес (по-русски). |
t_state |
2 |
40 |
Регион. |
t_state_ru |
2 |
40 |
Регион (по-русски). |
t_phone |
8 |
20 |
Телефон. |
t_email |
6 |
90 |
EMail. |
t_postcode |
3 |
10 |
Почтовый Индекс. |
t_country_code |
2 |
2 |
Страна. |
t_company |
5 |
80 |
Компания. |
t_company_ru |
5 |
255 |
Компания (по-русски). |
t_code |
6 |
12 |
ИНН организации. |
t_l_addr_ru |
10 |
255 |
Адрес (по-русски). |
t_l_addr |
10 |
255 |
Адрес. |
t_l_city |
2 |
40 |
Город. |
t_l_city_ru |
3 |
80 |
Город (по-русски). |
t_l_postcode |
3 |
8 |
Почтовый Индекс. |
t_l_state |
2 |
40 |
Регион. |
t_l_state_ru |
2 |
40 |
Регион (по-русски). |
Регистрация доменов в зонах .МОСКВА, .MOSCOW, .ДЕТИ, .TATAR, .RU.NET, .COM.RU, .MSK.RU, SPB.RU и других геодоменов для частных лиц
В зонах .RU.NET, .COM.RU, .EXNET.SU и геодоменах .ABKHAZIA.SU, .ADYGEYA.RU, .ADYGEYA.SU, .AKTYUBINSK.SU, .ARKHANGELSK.SU, .ARMENIA.SU, .ASHGABAD.SU, .AZERBAIJAN.SU, .BALASHOV.SU, .BASHKIRIA.RU, .BASHKIRIA.SU, .BIR.RU, .BRYANSK.SU, .BUKHARA.SU, .CBG.RU, .CHIMKENT.SU, .DAGESTAN.RU, .DAGESTAN.SU, .EAST-KAZAKHSTAN.SU, .EXNET.SU, .GEORGIA.SU, .GROZNY.RU, .GROZNY.SU, .IVANOVO.SU, .JAMBYL.SU, .KALMYKIA.RU, .KALMYKIA.SU, .KALUGA.SU, .KARACOL.SU, .KARAGANDA.SU, .KARELIA.SU, .KHAKASSIA.SU, .KRASNODAR.SU, .KURGAN.SU, .KUSTANAI.RU, .KUSTANAI.SU, .LENUG.SU, .MANGYSHLAK.SU, .MARINE.RU, .MORDOVIA.RU, .MORDOVIA.SU, .MSK.RU, .MSK.SU, .MURMANSK.SU, .MYTIS.RU, .NALCHIK.RU, .NALCHIK.SU, .NAVOI.SU, .NORTH-KAZAKHSTAN.SU, .NOV.RU, .NOV.SU, .OBNINSK.SU, .PENZA.SU, .POKROVSK.SU, .PYATIGORSK.RU, .RU.NET, .SOCHI.SU, .SPB.RU, .SPB.SU, .TASHKENT.SU, .TERMEZ.SU, .TOGLIATTI.SU, .TROITSK.SU, .TSELINOGRAD.SU, .TULA.SU, .TUVA.SU, VLADIKAVKAZ.RU, .VLADIKAVKAZ.SU, .VLADIMIR.RU, .VLADIMIR.SU, .VOLOGDA.SU надо указывать только владельца домена, без администартора и техподдержки
Данные владельца домена
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
o_first_name |
2 |
40 |
Имя. |
o_first_name_ru |
2 |
40 |
Имя (по-русски). |
o_last_name |
2 |
40 |
Фамилия. |
o_last_name_ru |
2 |
40 |
Фамилия (по-русски). |
o_patronimic |
2 |
25 |
Отчество. |
o_patronimic_ru |
2 |
25 |
Отчество (по-русски). |
o_city |
2 |
40 |
Город. |
o_city_ru |
3 |
80 |
Город (по-русски). |
o_addr |
8 |
80 |
Адрес. |
o_addr_ru |
10 |
255 |
Адрес (по-русски). |
o_state |
2 |
40 |
Регион. |
o_state_ru |
2 |
40 |
Регион (по-русски). |
o_phone |
8 |
20 |
Телефон. |
o_email |
6 |
90 |
EMail. |
o_postcode |
3 |
10 |
Почтовый Индекс. |
o_country_code |
2 |
2 |
Страна. |
o_code |
6 |
12 |
ИНН. |
o_birth_date |
10 |
10 |
Дата рождения. |
o_passport_date |
10 |
30 |
Дата выдачи паспорта. |
o_passport_number |
6 |
30 |
Серия и номер паспорта. |
o_passport_place |
10 |
200 |
Место выдачи паспорта. |
Данные администратора домена
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
a_first_name |
2 |
40 |
Имя. |
a_first_name_ru |
2 |
40 |
Имя (по-русски). |
a_last_name |
2 |
40 |
Фамилия. |
a_last_name_ru |
2 |
40 |
Фамилия (по-русски). |
a_patronimic |
2 |
25 |
Отчество. |
a_patronimic_ru |
2 |
25 |
Отчество (по-русски). |
a_city |
2 |
40 |
Город. |
a_city_ru |
3 |
80 |
Город (по-русски). |
a_addr |
8 |
80 |
Адрес. |
a_addr_ru |
10 |
255 |
Адрес (по-русски). |
a_state |
2 |
40 |
Регион. |
a_state_ru |
2 |
40 |
Регион (по-русски). |
a_phone |
8 |
20 |
Телефон. |
a_email |
6 |
90 |
EMail. |
a_postcode |
3 |
10 |
Почтовый Индекс. |
a_country_code |
2 |
2 |
Страна. |
a_code |
6 |
12 |
ИНН. |
a_birth_date |
10 |
10 |
Дата рождения. |
a_passport_date |
10 |
30 |
Дата выдачи паспорта. |
a_passport_number |
6 |
30 |
Серия и номер паспорта. |
a_passport_place |
10 |
200 |
Место выдачи паспорта. |
Данные техподдержки домена
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
t_first_name |
2 |
40 |
Имя. |
t_first_name_ru |
2 |
40 |
Имя (по-русски). |
t_last_name |
2 |
40 |
Фамилия. |
t_last_name_ru |
2 |
40 |
Фамилия (по-русски). |
t_patronimic |
2 |
25 |
Отчество. |
t_patronimic_ru |
2 |
25 |
Отчество (по-русски). |
t_city |
2 |
40 |
Город. |
t_city_ru |
3 |
80 |
Город (по-русски). |
t_addr |
8 |
80 |
Адрес. |
t_addr_ru |
10 |
255 |
Адрес (по-русски). |
t_state |
2 |
40 |
Регион. |
t_state_ru |
2 |
40 |
Регион (по-русски). |
t_phone |
8 |
20 |
Телефон. |
t_email |
6 |
90 |
EMail. |
t_postcode |
3 |
10 |
Почтовый Индекс. |
t_country_code |
2 |
2 |
Страна. |
t_code |
6 |
12 |
ИНН. |
t_birth_date |
10 |
10 |
Дата рождения. |
t_passport_date |
10 |
30 |
Дата выдачи паспорта. |
t_passport_number |
6 |
30 |
Серия и номер паспорта. |
t_passport_place |
10 |
200 |
Место выдачи паспорта. |
Регистрация доменов в других зонах
Данные владельца домена
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
o_company |
5 |
80 |
Название организации - владельца домена. |
o_first_name |
2 |
40 |
Имя контактного лица |
o_last_name |
2 |
40 |
Фамилия контактного лица |
o_email |
6 |
90 |
Контактный email-адрес владельца домена. |
o_phone |
8 |
20 |
Номер телефона владельца домена. Телефон указывается в международном формате. |
o_fax |
8 |
20 |
Номер факса владельца домена. Номер указывается в международном формате. Необязательное поле. |
o_addr |
8 |
80 |
Адрес владельца домена: улица, дом, офис (квартира) |
o_city |
2 |
80 |
Адрес владельца домена: город |
o_state |
2 |
40 |
Адрес владельца домена: область/край/штат |
o_postcode |
3 |
10 |
Почтовый индекс владельца домена |
o_country_code |
2 |
2 |
Двухбуквенный ISO-код страны владельца домена. Некоторые доменные зоны допускают указание только стран официально подпадающих под эту зону. Например, для .eu допустимо указывать только страны входящие в EC. Список кодов всех стран можно найти здесь |
Данные администратора домена
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
a_company |
5 |
80 |
Название организации - владельца домена. |
a_first_name |
2 |
40 |
Имя контактного лица |
a_last_name |
2 |
40 |
Фамилия контактного лица |
a_email |
6 |
80 |
Контактный email-адрес владельца домена. |
a_phone |
8 |
20 |
Номер телефона контактного лица. Телефон указывается с международном формате. |
a_fax |
8 |
20 |
Номер телефакса контактного лица. Телефон указывается с международном формате. |
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 |
Организация, осуществляющая техподдержку домена. |
t_first_name |
2 |
40 |
Имя контактного лица |
t_last_name |
2 |
40 |
Фамилия контактного лица |
t_email |
6 |
80 |
Контактный email-адрес контактного лица. |
t_phone |
8 |
20 |
Номер телефона контактного лица. Телефон указывается с международном формате. |
t_fax |
8 |
20 |
Номер телефакса контактного лица. Телефон указывается с международном формате. |
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 |
Организация. |
b_first_name |
2 |
40 |
Имя контактного лица |
b_last_name |
2 |
40 |
Фамилия контактного лица |
b_email |
6 |
80 |
Контактный email-адрес контактного лица. |
b_phone |
8 |
20 |
Номер телефона контактного лица. Телефон указывается с международном формате. |
b_fax |
8 |
20 |
Номер телефакса контактного лица. Телефон указывается с международном формате. |
b_addr |
8 |
80 |
Адрес контактного лица: улица, дом, офис (квартира) |
b_city |
2 |
80 |
Адрес контактного лица: город |
b_state |
2 |
40 |
Адрес контактного лица: область/край/штат |
b_postcode |
3 |
10 |
Почтовый индекс контактного лица |
b_country_code |
2 |
2 |
Двухбуквенный ISO-код страны контактного лица. Список всех кодов стран можно найти тут |
Дополнительные данные для доменов в зонах .COM, .NET, .ORG, .ASIA, .BIZ, .NAME, .INFO, .MOBI, .UK, .CC, .TV, .WS, .BZ, .ME
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
private_person_flag |
1 |
1 |
Активация услуги Privacy Protection |
Дополнительные данные для доменов в зоне .US
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
RselnexusAppPurpose |
2 |
2 |
Сфера использования домена Возможные значения: |
RselnexusCategory |
3 |
3 |
Владелец домена: Возможные значения: |
Дополнительные данные для доменов в зоне .PRO
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
pro_profession |
1 |
100 |
Профессия владельца домена Возможные значения:
|
Дополнительные данные для доменов в зоне .LV или .RO
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
idnumber |
3 |
100 |
Единый регистрационнный номер |
vatid |
3 |
100 |
VAT ID (ИНН) |
registrant_type |
10 |
12 |
Тип регистратора. Возможные значения: |
Дополнительные данные для доменов в зонах .САЙТ и .ОНЛАЙН
Дополнительные поля заполняются только знаками кириллического алфавита, указываются данные администратора и владельца домена, контакты технического специалиста и специалиста по биллингу.
Тип контакта определяется префиксом: a, t, o, b
Набор полей ( на примере административного контакта )
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
a_first_name_r |
2 |
25 |
Имя контактного лица |
a_last_name_r |
2 |
25 |
Фамилия контактного лица |
a_company_r |
5 |
255 |
Организация |
a_city_r |
3 |
80 |
Город |
a_addr_r |
15 |
255 |
Адрес |
DNS-серверы домена
Для регистрации домена должно быть указано не менее двух серверов. В случае указания NS-серверов на базе одного из заказываемых доменов, обязателельно должны быть указаны IP-адреса этих NS-серверов.
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
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.
Поддержка обработки списка услуг:
Только для VIP клиентов.
Поддержка unicode-доменов
Помимо поддержки русского языка в кириллических зонах .РФ, .РУС, .САЙТ, .ОНЛАЙН, .МОСКВА и других, имеется поддержка других языков и символов в основных зонах.
Зона .SU поддерживает армянский, греческий, грузинский и другие языки, полный список всех символов доступен на сайте реестра.
Зоны .САЙТ и .ОНЛАЙН поддерживают символы украинского, белорусского и болгарского языков.
Зоны домена .UA поддерживают не только украинский алфавит, но и другие. Полный список символов большинства .UA зон есть на cctld ua и uanic.
Зоны доменов, поддерживаемых реестром Verisign, такие как .COM, .NET и другие, могут иметь названия на многих европейских языках, кириллице, китайских, корейских, японских иероглифах, арабском, тайском и других. Полный список смотрите тут.
Каждая из зон, находящихся на обслуживании реестра CentralNic, такие как .RU.COM, .XYZ, .SITE, .ONLINE и другие, имеет свой набор поддерживаемых языков. Их полный список можно посмотреть на сайте реестра. При выборе языка отобразится список зон, которые его поддерживают.
Поддерживаемые языки зон .INFO, .ORG и других можно посмотреть на сайте IANA тут.
Запросы на регистрацию доменов можно отправлять как в unicode, так и в punycode. Если какой-то символ в имени домена наша система не принимает, сверьтесь с реестром перед написанием обращения в техническую поддержку.
Поля ответа:
Поле | Описание |
---|---|
bill_id |
Номер счёта, созданного по запросу. |
payment |
Сумма заказа в рублях. |
pay_type |
Способ оплаты. На данный момент возможна только предоплата, prepay. |
pay_notes |
Комментарий, относящийся к используемому способу оплаты. |
domains |
Список доменов с результатом, содержит поля: dname — имя домена, result — поле результатов, service_id — внутреннний id домена в случае успешного принятия заявки. Поле result может иметь следующие значения: |
Примеры запросов:
пример заказа одного .ru домена, используя запрос в «PLAIN» формате:
https://api.reg.ru/api/regru2/domain/create
birth_date=01.01.2000
country=RU
descr=Vschizh site
domain_name=vschizh.ru
e_mail=test@test.ru
ns0=ns1.reg.ru
ns1=ns2.reg.ru
output_content_type=plain
p_addr_addr=ул. Княжеска, д.1
p_addr_area=
p_addr_city=г. Вщиж
p_addr_recipient=Рюрику Святославу Владимировичу
p_addr_zip=123456
passport_date=01.01.1164
passport_number=22 44 668800
passport_place=выдан по месту правления
password=test
person=Svyatoslav V Ryurik
person_r_name=Святослав
person_r_patronimic=Владимирович
person_r_surname=Рюрик
phone=+7 495 1234567
username=test
Обратите внимание, что если Ваша библиотека/программа не делает полного автоматического преобразования данных, то «+» надо передавать как «%2B». пример подобного запроса в JSON-формате, для наглядности отправляемые данные сначала представлены ввиде структуры на Perl-e с преобразованием её в JSON-формат:
$jsondata = {
contacts => {
descr => 'Vschizh site',
person => 'Svyatoslav V Ryurik',
person_r_surname => 'Рюрик',
person_r_name => 'Святослав',
person_r_patronimic => 'Владимирович',
passport_number => '22 44 668800',
passport_place => 'выдан по месту правления',
passport_date => '01.09.1164',
birth_date => '01.01.2000',
p_addr_zip => '123456',
p_addr_area => '',
p_addr_city => 'г. Вщиж',
p_addr_addr => 'ул. Княжеска, д.1',
p_addr_recipient => 'Рюрику Святославу Владимировичу',
phone => '+7 495 1234567',
e_mail => 'test@test.ru',
country => 'RU',
},
nss => {
ns0 => 'ns1.reg.ru',
ns1 => 'ns2.reg.ru',
},
domain_name => 'vschizh.su',
};
$jsondata = JSO::XS->new->utf8->encode( $jsondata );
и сам запрос:
https://api.reg.ru/api/regru2/domain/create
input_data={"contacts":{"country":"RU","e_mail":"test@test.ru","person_r_surname":"Рюрик","person_r_name":"Святослав","person_r_patronimic":"Владимирович","phone":"%2B7 495 1234567","birth_date":"01.01.2000","descr":"Vschizh site","person":"Svyatoslav V Ryurik","p_addr_zip":"123456","p_addr_area":"","p_addr_city":"г. Вщиж","p_addr_addr":"ул. Княжеска, д.1","p_addr_recipient":"Рюрику Святославу Владимировичу","passport_number":"22 44 668800","passport_place":"выдан по месту правления","passport_date":"01.09.1164"},"domain_name":"vschizh.su","nss":{"ns0":"ns1.reg.ru","ns1":"ns2.reg.ru"}}
input_format=json
output_content_type=plain
password=test
username=test
то же самое, но предполагается, что контактные данные хранятся в профиле my_like_ru_profile:
$jsondata = {
profile_type => 'RU.PP',
profile_name => 'my_like_ru_profile',
nss => {
ns0 => 'ns1.reg.ru',
ns1 => 'ns2.reg.ru',
},
domain_name => 'vschizh.su',
};
$jsondata = JSON::XS->new->utf8->encode( $jsondata );
и сам запрос:
https://api.reg.ru/api/regru2/domain/create
input_data={"profile_type":"RU.PP","profile_name":"my_like_ru_profile","domain_name":"vschizh.su","nss":{"ns0":"ns1.reg.ru","ns1":"ns2.reg.ru"}}
input_format=json
output_content_type=plain
password=test
username=test
первый вариант, но оптовая регистрация:
$jsondata = {
contacts => {
descr => 'Vschizh site',
person => 'Svyatoslav V Ryurik',
person_r_surname => 'Рюрик',
person_r_name => 'Святослав',
person_r_patronimic => 'Владимирович',
passport_number => '22 44 668800',
passport_place => 'выдан по месту правления',
passport_date => '01.09.1164',
birth_date => '01.01.2000',
p_addr_zip => '123456',
p_addr_area => ''
p_addr_city => 'г. Вщиж'
p_addr_addr => 'ул. Княжеска, д.1'
p_addr_recipient => 'Рюрику Святославу Владимировичу'
phone => '+7 495 8102233',
e_mail => 'test@test.ru',
country => 'RU',
},
nss => {
ns0 => 'ns1.reg.ru',
ns1 => 'ns2.reg.ru',
},
domains => [
{ dname => 'vschizh.ru', srv_certificate => 'free', srv_parking => 'free' },
{ dname => 'vschizh.su', srv_webfwd => '' },
],
};
$jsondata = JSON::XS->new->utf8->encode( $jsondata );
и сам запрос:
https://api.reg.ru/api/regru2/domain/create
input_data={"contacts":{"country":"RU","e_mail":"ruriksvyatvlad@mail.ru","person_r_surname":"Рюрик","person_r_name":"Святослав","person_r_patronimic":"Владимирович","phone":"+79142345678","birth_date":"01.01.2000","descr":"Vschizh site","person":"Svyatoslav V Ryurik","p_addr_zip":"123456","p_addr_area":"","p_addr_city":"г. Вщиж","p_addr_addr":"ул. Княжеска, д.1","p_addr_recipient":"Рюрику Святославу Владимировичу","passport_number":"22 44 668800","passport_place":"выдан по месту правления","passport_date":"01.09.1164"},"domains":[{"dname":"vschizh.su","srv_certificate":"free","srv_parking":"free"},{"dname":"vschizh.su","srv_webfwd":""}],"nss":{"ns0":"ns1.reg.ru","ns1":"ns2.reg.ru"}}
input_format=json
output_content_type=plain
password=test
username=test
Пример запроса на регистрацию доменов в зоне .МОСКВА и .MOSCOW:
{
"input_format" : "json",
"username" : "test",
"password" : "test",
"input_data" : {
"output_content_type" : "plain",
"io_encoding" : "utf8",
"show_input_params" : 1,
"lang" : "en",
"output_format" : "json",
"contacts" : {
"o_first_name_ru" : "Иван",
"a_first_name_ru" : "Иван",
"t_code" : "6663058366",
"t_first_name" : "Ivan",
"o_patronimic" : "Ivanovich",
"t_phone" : "+7.953535385",
"t_first_name_ru" : "Иван",
"o_l_state" : "Moscow",
"t_city" : "Moscow",
"o_state" : "Moscow",
"a_last_name_ru" : "Иванов",
"o_addr" : "Bolshoy sobachiy, 33",
"a_addr_ru" : "Большой собачий переулок, 33",
"o_l_state_ru" : "Москва",
"o_company_ru" : "ООО \"Лунтик\"",
"t_patronimic" : "Ivanovich",
"t_last_name_ru" : "Иванов",
"a_l_city_ru" : "Москва",
"a_city_ru" : "Москва",
"o_l_city" : "Moscow",
"o_first_name" : "Ivan",
"a_state" : "Moscow",
"o_l_city_ru" : "Москва",
"t_country_code" : "RU",
"t_addr_ru" : "Большой собачий переулок, 33",
"a_company_ru" : "ООО \"Лунтик\"",
"t_email" : "srs-devel@reg.ru",
"a_l_state" : "Moscow",
"o_patronimic_ru" : "Иванович",
"t_company_ru" : "ООО \"Лунтик\"",
"o_code" : "6663058366",
"a_l_city" : "Moscow",
"a_l_addr" : "Bolshoy sobachiy, 33",
"t_patronimic_ru" : "Иванович",
"o_phone" : "+7.953535385",
"a_company" : "Luntik, LLC",
"o_email" : "srs-devel@reg.ru",
"o_addr_ru" : "Большой собачий переулок, 33",
"o_last_name_ru" : "Иванов",
"t_l_postcode" : "191000",
"a_postcode" : "191000",
"a_addr" : "Bolshoy sobachiy, 33",
"t_l_city" : "Moscow",
"a_phone" : "+7.953535385",
"a_patronimic_ru" : "Иванович",
"a_first_name" : "Ivan",
"t_l_city_ru" : "Москва",
"t_state_ru" : "Москва",
"a_city" : "Moscow",
"o_company" : "Luntik, LLC",
"o_city_ru" : "Москва",
"o_l_addr" : "Bolshoy sobachiy, 33",
"o_l_postcode" : "191000",
"o_last_name" : "Ivanoww",
"a_country_code" : "RU",
"a_l_state_ru" : "Москва",
"a_patronimic" : "Ivanovich",
"t_state" : "Moscow",
"t_last_name" : "Ivanoww",
"o_country_code" : "RU",
"t_l_addr_ru" : "Большой собачий переулок, 33",
"a_email" : "srs-devel@reg.ru",
"o_city" : "Moscow",
"a_code" : "6663058366",
"t_l_state" : "Moscow",
"o_state_ru" : "Москва",
"t_addr" : "Bolshoy sobachiy, 33",
"t_company" : "Luntik, LLC",
"a_state_ru" : "Москва",
"t_l_addr" : "Bolshoy sobachiy, 33",
"t_city_ru" : "Москва",
"t_postcode" : "191000",
"a_l_addr_ru" : "Большой собачий переулок, 33",
"t_l_state_ru" : "Москва",
"o_l_addr_ru" : "Большой собачий переулок, 33",
"a_last_name" : "Ivanoww",
"a_l_postcode" : "191000",
"o_postcode" : "191000"
},
"nss" : {
"ns1" : "ns2.reg.ru",
"ns0" : "ns1.reg.ru"
},
"domains" : [
{
"dname" : "белыйторшер.москва"
},
{
"dname" : "whitelamp.moscow"
}
]
}
}
Пример запроса на регистрацию доменов в зоне .САЙТ и .ОНЛАЙН:
{
"input_format" : "json",
"username" : "test",
"password" : "test",
"input_data" : {
"io_encoding" : "utf8",
"output_content_type" : "plain",
"lang" : "en",
"show_input_params" : 1,
"domains" : [
{
"dname" : "белыйторшер.онлайн"
},
{
"dname" : "белыйторшер.сайт"
}
],
"contacts" : {
"b_fax" : "+7.953535385",
"a_addr_r" : "Большой собачий переулок, 33",
"t_addr" : "Bolshoy sobachiy, 33",
"t_last_name_r" : "Иванов",
"a_state" : "Moscow",
"o_fax" : "+7.953535385",
"a_company_r" : "ООО \"Лунтик\"",
"o_company_r" : "ООО \"Лунтик\"",
"o_postcode" : "91000",
"t_phone" : "+7.953535385",
"a_fax" : "+7.953535385",
"o_addr" : "Bolshoy sobachiy, 33",
"b_last_name_r" : "Иванов",
"o_first_name_r" : "Иван",
"a_email" : "srs-devel@reg.ru",
"a_addr" : "Bolshoy sobachiy, 33",
"t_company" : "Luntik, LLC",
"b_phone" : "+7.953535385",
"o_company" : "Luntik, LLC",
"o_city" : "Moscow",
"b_first_name" : "Ivan",
"b_addr_r" : "Большой собачий переулок, 33",
"t_city" : "Moscow",
"b_state" : "Moscow",
"o_last_name_r" : "Иванов",
"a_postcode" : "91000",
"t_first_name" : "Ivan",
"t_state" : "Moscow",
"b_state_r" : "Москва",
"t_email" : "srs-devel@reg.ru",
"a_country_code" : "RU",
"o_phone" : "+7.953535385",
"t_company_r" : "ООО \"Лунтик\"",
"a_city" : "Moscow",
"t_country_code" : "RU",
"b_last_name" : "Ivanoww",
"a_phone" : "+7.953535385",
"t_postcode" : "91000",
"b_first_name_r" : "Иван",
"a_last_name_r" : "Иванов",
"t_state_r" : "Москва",
"t_last_name" : "Ivanoww",
"a_city_r" : "Москва",
"a_state_r" : "Москва",
"b_addr" : "Bolshoy sobachiy, 33",
"a_first_name_r" : "Иван",
"b_company" : "Luntik, LLC",
"o_city_r" : "Москва",
"o_last_name" : "Ivanoww",
"b_country_code" : "RU",
"a_company" : "Luntik, LLC",
"b_email" : "srs-devel@reg.ru",
"a_last_name" : "Ivanoww",
"t_addr_r" : "Большой собачий переулок, 33",
"b_city" : "Moscow",
"o_state" : "Moscow",
"o_first_name" : "Ivan",
"b_company_r" : "ООО \"Лунтик\"",
"t_city_r" : "Москва",
"t_fax" : "+7.953535385",
"o_state_r" : "Москва",
"o_addr_r" : "Большой собачий переулок, 33",
"b_postcode" : "91000",
"o_country_code" : "RU",
"o_email" : "srs-devel@reg.ru",
"a_first_name" : "Ivan",
"b_city_r" : "Москва",
"t_first_name_r" : "Иван"
},
"nss" : {
"ns0" : "ns1.reg.ru",
"ns1" : "ns2.reg.ru"
},
"output_format" : "json"
}
}
Примеры успешных ответов:
пример ответа на первый запрос (запрос в «PLAIN» формате):
{
"answer" : {
"bill_id" : "1234",
"domains" : [
{
"dname" : "vschizh.ru",
"result" : "success",
"service_id" : "12345"
}
],
"pay_notes" : "Amount successfully charged",
"pay_type" : "prepay",
"payment" : "600"
},
"result" : "success"
}
пример ответа на второй запрос (запрос в JSON формате):
{
"answer" : {
"bill_id" : "1234",
"domains" : [
{
"dname" : "vschizh.su",
"result" : "success",
"service_id" : "12345"
}
],
"pay_notes" : "Amount successfully charged",
"pay_type" : "prepay",
"payment" : "600"
},
"result" : "success"
}
пример ответа на третий запрос (оптовый запрос в JSON формате):
{
"answer" : {
"bill_id" : "1234",
"domains" : [
{
"dname" : "vschizh.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "vschizh.su",
"result" : "success",
"service_id" : "12346"
}
],
"pay_notes" : "Amount successfully charged",
"pay_type" : "prepay",
"payment" : "1300"
},
"result" : "success"
}
Возможные ошибки:
8.8. Функция: domain/transfer
Доступность:
Поддержка обработки списка услуг:
Назначение:
подать заявку на перенос домена от другого регистратора
Поддержка обработки списка услуг
Только для VIP клиентов.
Поля запроса:
Совпадают с полями для функции domain/create. Помимо этого для доменов .RU / .SU / .РФ зон данные владельца домена и DNS-сервера можно не указывать, т.е. оставлять хеши contacts и nss пустыми. Эти данные будут автоматически получены из реестра в момент принятия домена. Также для доменов .RU / .SU / .РФ поле period может принимать значение "0" (перенос доменов без продления). Для большинства международных доменов (com net org info biz mobi name asia tel in mn bz cc tv us me cn nz co ca и др.) дополнительно надо указать authinfo.
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
authinfo |
5 |
48 |
Ключ аутентификации для переноса домена. Уточняется у предыдущего регистратора домена. Для .RU/.РФ зон минимальная длинна 6 знаков |
Контактные данные для .RU/.РФ доменов
Будут использоваться для сверки с данными, внесёнными в реестр текущим регистратором
Данные частного лица (только при регистрации домена на частное лицо!)
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
person_r_surname |
1 |
32 |
Фамилия администратора домена на русском языке в соответствии с паспортными данными. Для иностранцев поле содержит фамилию в оригинальном написании (при невозможности в английской транслитерации). |
person_r_name |
1 |
32 |
Имя администратора домена на русском языке в соответствии с паспортными данными. Для иностранцев поле содержит имя в оригинальном написании (при невозможности в английской транслитерации). |
person_r_patronimic |
1 |
32 |
Отчество администратора домена на русском языке в соответствии с паспортными данными. Для иностранцев поле содержит отчество в оригинальном написании (при невозможности в английской транслитерации). |
birth_date |
10 |
10 |
Дата рождения администратора домена в формате ДД.ММ.ГГГГ. |
passport_number |
6 |
30 |
Серия и номер паспорта. В написании римских цифр допустимо использование только латинских букв. Знак номера перед номером паспорта не ставится. Паспорта СССР (паспорта старого образца) не принимаются. |
passport_place |
3 |
200 |
Наименование органа выдавшего паспорт. Запись может быть многострочной. |
passport_date |
10 |
10 |
Дата выдачи паспорта. Дата записывается в формате ДД.ММ.ГГГГ. |
p_addr_zip |
2 |
15 |
Почтовый индекс администратора домена. |
p_addr_area |
3 |
65 |
Область из почтового адреса администратора домена. |
p_addr_city |
3 |
25 |
Название города из почтового адреса администратора домена. |
p_addr_addr |
5 |
105 |
Адрес включающий название улицы и номер дома (возможна доп. информация в виде номера корпуса/квартиры и т.д.). |
p_addr_recipient |
5 |
45 |
Имя получателя(физ лицо либо, название отдела) |
country |
2 |
2 |
Двухбуквенный ISO-код страны, гражданином которой является частное лицо. |
Данные организации (только при регистрации домена на организацию!)
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
org_r |
10 |
255 |
Полное наименование организации-администратора домена на русском языке в соответствии с учредительными документами. Для нерезидентов указывается написание на национальном языке (либо на английском языке). Запись может быть многострочной. |
code |
10 |
10 |
Идентификационный номер налогоплательщика (ИНН), присвоенный организации-администратору. Запись может содержать пустую строку, если администратором является нерезидент РФ, не имеющий идентификационного номера налогоплательщика. |
country |
2 |
2 |
Двухбуквенный ISO-код страны, в которой зарегистрирована организация. |
address_r_zip |
2 |
15 |
Почтовый индекс юридического адреса организации в соответствии с учредительными документами. |
address_r_area |
3 |
65 |
Область из юридического адреса организации в соответствии с учредительными документами. |
address_r_city |
3 |
25 |
Название города юридического адреса организации в соответствии с учредительными документами. |
address_r_addr |
5 |
105 |
Адрес включающий название улицы и номер дома (возможна доп. информация в виде номера корпуса/квартиры и т.д.) юридического адреса организации в соответствии с учредительными документами. |
Поля ответа:
Совпадают с полями для функции domain/create
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
AUTHINFO_NOT_FOUND | Transfer secretkey not found | Секретный ключ для переноса не найден |
INVALID_AUTHINFO | Inadmissible chars in authinfo | Недопустимые символы в поле authinfo |
8.9. Функция: domain/get_transfer_status
Доступность:
Поддержка обработки списка услуг:
Назначение:
проверка состояния переноса домена, работает только для тех зон, где REG.RU является регистратором, статус в остальных зонах надо проверять через whois
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
Массив со списком хешей, содержащий имена доменов dname и их статус. |
status |
Cтатус переноса, возможные статусы: pendingPayment — счёт ожидает оплаты, перенос ещё не начинался; pendingConfirmation — требуется подтверждение переноса; authinfoError — неверный ключ переноса, требуется ввести правильный ключ; clientTransferProhibited — текущий регистратор заблокировал перенос домена; transferProhibited — домен имеет статус, блокирующий перенос; transferError — какая-то другая ошибка переноса; pendingTransfer — домен в процессе переноса; alreadyTransfered — домен уже был перенесён; notAvailable — определение статуса не поддерживается. |
Пример запроса:
https://api.reg.ru/api/regru2/domain/get_transfer_status
input_data={"domains":[{"dname":"ya.ru"},{"dname":"qwerty.ooo"},{"dname":"xn--41a.com"},{"dname":"zzz.рф"}]}
input_format=json
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "ya.ru",
"error_code" : "DOMAIN_NOT_FOUND",
"error_params" : {
"domain_name" : "ya.ru"
},
"error_text" : "Domain ya.ru not found or not owned by You",
"result" : "error"
},
{
"dname" : "qwerty.ooo",
"result" : "success",
"service_id" : "12345",
"status" : "notAvailable"
},
{
"dname" : "я.com",
"result" : "success",
"service_id" : "12346",
"status" : "pendingTransfer"
},
{
"dname" : "zzz.рф",
"error_code" : "INVALID_DOMAIN_NAME_FORMAT",
"error_params" : {
"domain_name" : "zzz.xn--p1ai"
},
"error_text" : "domain_name is invalid or unsupported zone",
"result" : "error"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
8.10. Функция: domain/set_new_authinfo
Доступность:
Поддержка обработки списка услуг:
Назначение:
замена неверного ключа переноса (authinfo) домена, доступно только до отправки запроса в реестр
Поля запроса:
Параметр | Минимальная длина поля | Максимальная длина поля | Описание |
---|---|---|---|
authinfo |
5 |
32 |
ключ переноса домена, для .RU/.РФ зон минимальная длинна 6 знаков |
А также стандартные параметры идентификации услуги
Поля ответа:
нет
Пример запроса:
https://api.reg.ru/api/regru2/domain/set_new_authinfo
authinfo=hjgf7jfj8f8
dname=test.com
output_content_type=plain
output_format=json
password=test
username=test
Пример ответа:
{
"answer" : {
"dname" : "test.com",
"service_id" : "12345"
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
AUTHINFO_NOT_FOUND | Transfer secretkey not found | Секретный ключ для переноса не найден |
INVALID_AUTHINFO | Inadmissible chars in authinfo | Недопустимые символы в поле authinfo |
WAITING | Service already ordered but not processed. | Услуга уже заказана, но еще не отработана. |
NOT_A_TRANSFER_ORDER | Domain was created on your account without transfer | Домен был создан на вашем аккаунте без переноса |
8.11. Функция: domain/get_rereg_data
Доступность:
Поддержка обработки списка услуг:
Назначение:
получить список освобождающихся доменов с характеристиками, данные обновляются 1 раз в 30 минут
Поля запроса:
Параметр | Описание |
---|---|
domains |
Список доменов |
dname_matching |
Шаблон поиска по именам доменов |
search_query |
Поисковые запросы |
max_chars |
Максимально количество символов в имени домена |
min_pr |
Минимальное значение Google PR |
min_cy |
Минимальное значение Яндекс тИЦ |
kley |
1 - показывать только те домены, где зеркала не обнаружены |
zone |
Доменная зона (ru, su, рф) |
views |
Количество просмотров в месяц |
vis |
Количество уникальных посетителей в месяц |
traf |
Поисковый трафик |
price |
Максимальная текущая цена |
registrar |
Регистратор |
delete_date |
Дата удаления |
sortcol |
Сортировка по: name - по имени, price - по блиц-цене, fdate - по дате создания, date - по дате удаления, pr - по Google PR, cy - по Яндекс тИЦ, views - по количеству просмотров в месяц, vis - по числу уникальных посетителей, sch - по среднему количеству поискового трафика за весь период, reg - по регистратору |
premium |
1 - показать только премиум домены |
limit |
Сколько отдавать записей за 1 запрос, значение по умолчанию — 1000, максимальное значение — 1000 |
limit_from |
С какой позиции (записи) отдавать данные, значение по умолчанию — 0 |
Полный список всех освобождающихся доменов одним файлом в CSV формате можно скачать тут
Поля ответа:
Поле | Описание |
---|---|
dname |
Имя домена |
tld |
Доменная зона |
first_create_date |
Первичная регистрация |
delete_date |
Дата удаления |
start_price |
Минимальная ставка (для крупных клиентов) |
bid |
Последняя ставка (для крупных клиентов) |
price |
Максимальная ставка |
uni_avg_attendance |
Среднее кол-во посетителей за день |
avg_viewings |
Среднее кол-во просмотров за день |
all_avg_traffic |
Средний трафик за день |
search_query_list |
Список поисковых запросов |
yandex_tic |
Яндекс тИЦ |
tic_mirrors |
Зеркала у Яндекс тИЦ |
google_pr |
Google Page Rank |
registrar |
Регистратор |
is_recommended |
Премиум домен |
- Дополнительные поля ответа доступны для пользователей, у которых 256 и более активных доменов на аккаунте. Проверка количества доменов производится раз в месяц в автоматическом режиме.
Пример запроса:
https://api.reg.ru/api/regru2/domain/get_rereg_data
input_data={"domains":[{"dname":"qqq.ru"},{"dname":"eee.ru"}],"min_pr":"2","sortcol":"vis"}
input_format=json
output_content_type=plain
output_format=json
password=test
username=test
Пример ответа:
{
"answer" : [
{
"dname" : "test.ru",
"tld" : "ru",
"yandex_tic" : "1000",
"tic_mirrors" : "null",
"uni_avg_attendance" : "100",
"search_query_list" : "слово дело",
"start_price" : "2500.00",
"bid" : "2500.00",
"avg_viewings" : "2",
"google_pr" : "9",
"price" : "2500.00",
"blitz_price" : "2500.00",
"first_create_date" : "2001-01-01",
"delete_date" : "2020-01-01",
"is_recommended" : "1",
"all_avg_traffic" : "3"
"registrar" : "REGRU-RU"
},
{
"dname" : "test.su",
"tld" : "su",
"yandex_tic" : "0",
"tic_mirrors" : "www.test.su",
"uni_avg_attendance" : "0",
"search_query_list" : null,
"start_price" : "600.00",
"bid" : "600.00",
"avg_viewings" : "0",
"google_pr" : "0",
"price" : "600.00",
"blitz_price" : "2500.00",
"first_create_date" : "1991-08-21",
"delete_date" : "2020-01-01",
"is_recommended" : "0",
"all_avg_traffic" : "0"
"registrar" : "REGRU-RU"
}
],
"result" : "success"
}
Пример кода:
Возможные ошибки:
8.12. Функция: domain/set_rereg_bids
Доступность:
Поддержка обработки списка услуг:
Назначение:
сделать ставки на освобождающиеся домены.
Данные обновляются около 8:00. В момент обновления данных приём ставок блокируется в зависимости от объёма обновления на 10-20 минут, и возвращая при этом код ошибки CREATION_IS_TEMPORARILY_LOCKED,
Подробнее смотрите здесь
Доступность:
клиенты
Так же партнёры компании REG.RU могут внести предварительную оплату в размере 225 руб., а остаток суммы оплатить в случае успешного выполнения заявки на регистрацию в течение 10 дней после её исполнения (см. ниже параметр instalment). При выборе данного порядка оплаты домен будет зарегистрирован на REG.RU, а после оплаты полной стоимости автоматически перерегистрирован на указанные Вами данные. В случае невыполнения обязательств по оплате полной стоимости в установленный срок предварительная оплата будет считаться неустойкой и не подлежит возмещению. Подробнее см. Договор пп. 2.16, 2.17, 3.2.9, 6.11.
Поля запроса:
Параметр | Описание |
---|---|
contacts |
Хеш контактных данных; описание контактных данных, являющихся ключами хеша, см. в функции domain/create. |
nss |
Хеш NS-серверов; описание формата NS-серверов, являющихся ключами хеша, см. в функции domain/create. |
domains |
Массив со списком доменов, каждый элемент массива является хешем с ключами dname — имя домена и price — ценой/ставкой на этот домен. Для партнёров доступен заказ по частичной оплате, ключ instalment, допустимые значения 0 и 1, в этом случае можно установить автоматическую оплату после активации домена при наличии денег на счёте, ключ autopay, допустимые значения 0 и 1. |
Поля ответа:
Поле | Описание |
---|---|
bill_id |
Номер счёта, созданного по запросу. |
payment |
Сумма заказа в рублях. |
pay_type |
Способ оплаты. На данный момент возможна только предоплата, prepay. |
pay_notes |
Комментарий, относящийся к используемому способу оплаты. |
domains |
Список доменов с результатом по каждому, поле результатов может иметь такие значения: |
Пример запроса:
пример отправляемых данных (структура на Perl-e) с преобразованием её в JSON-формат:
$jsondata = {
contacts => {
descr => 'Vschizh site',
person => 'Svyatoslav V Ryurik',
person_r => 'Рюрик Святослав Владимирович',
passport => '22 44 668800, выдан по месту правления 01.09.1164',
birth_date => '01.01.1101',
p_addr => '12345, г. Вщиж, ул. Княжеска, д.1, Рюрику Святославу Владимировичу, князю Вщижскому',
phone => '+7 495 1234567',
e_mail => 'test@test.ru',
country => 'RU',
},
nss => {
ns0 => 'ns1.reg.ru',
ns1 => 'ns2.reg.ru',
},
domains => [
{ dname => 'vschizh.ru', price => 225 },
# или заказ в рассрочку: { dname => 'vschizh.ru', price => 2500, instalment => 1 },
{ dname => 'vschizh.su', price => 400 },
],
};
$jsondata = JSON::XS->new->utf8->encode( $jsondata );
Сам запрос:
https://api.reg.ru/api/regru2/domain/set_rereg_bids
input_data={"contacts":{"country":"RU","e_mail":"test@test.ru","person_r":"Рюрик Святослав Владимирович","phone":"+7 495 1234567","birth_date":"01.01.1101","descr":"Vschizh site","person":"Svyatoslav V Ryurik","p_addr":"12345, г. Вщиж, ул. Княжеска, д.1, Рюрику Святославу Владимировичу, князю Вщижскому","passport":"22 44 668800, выдан по месту правления 01.01.1164"},"domains":[{"dname":"vschizh.ru","price":225},{"dname":"vschizh.su","price":400}],"nss":{"ns0":"ns1.reg.ru","ns1":"ns2.reg.ru"}}
input_format=json
output_content_type=plain
password=test
username=test
То же самое, но с использованием wget для post-запроса (параметр --post-data) и выводом ответа в консоль:
wget -O - https://api.reg.ru/api/regru2/domain/set_rereg_bids \
--post-data='username=test&password=test&input_format=json&\
input_data={"contacts":{"country":"RU","e_mail":"test@test.ru", \
"person_r":"Рюрик Святослав Владимирович","phone":"%2B7 495 1234567","birth_date":"01.01.1101", \
"descr":"Vschizh site","person":"Svyatoslav V Ryurik",\
"p_addr":"12345, г. Вщиж, ул. Княжеска, д.1, Рюрику Святославу Владимировичу, князю Вщижскому",\
"passport":"22 44 668800, выдан по месту правления 01.01.1164"},\
"domains":[{"dname":"vschizh.ru","price":225},{"dname":"vschizh.su","price":400}],\
"nss":{"ns0":"ns1.reg.ru","ns1":"ns2.reg.ru"}}'
Обратите внимание, что если Ваша библиотека/программа не делает полного автоматического преобразования данных, то «+» надо передавать как «%2B».
Пример ответа:
результат для приведенного выше запроса wget:
{
"answer" : {
"bill_id" : "1234",
"domains" : [
{
"dname" : "vschizh.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "vschizh.su",
"result" : "success",
"service_id" : "12346"
}
],
"pay_notes" : "Amount successfully charged",
"pay_type" : "prepay",
"payment" : "625"
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
CONTACTS_NOT_FOUND | Contacts list not found | Контактная информация не найдена |
INVALID_CONTACTS | Contacts user data is invalid | Ошибка в контактных данных пользователя |
UNKNOWN_CONTYPE | Can't guess registrant type: person or organization | Не определён тип контакта: физ.лицо или организация |
DOMAINS_NOT_FOUND | Domains list not found | Список доменов не найден |
REREG_NOT_FOUND | Domain $domain_name in expiring list not found | Домен $domain_name в списке освобождающихся не найден |
INVALID_BID | Invalid bid | Неверная ставка |
SAME_OR_MORE_BID_FOUND | The same or big rate is found | Найдена такая же или большая ставка |
YOUR_SAME_OR_MORE_BID_FOUND | Your same or big rate is found | Найдена ваша такая же или большая ставка |
CREATION_IS_TEMPORARILY_LOCKED | Orders on create services is temporarily locked | Заявки на сервис временно не принимаются |
А также см. cтандартные коды ошибок
8.13. Функция: domain/get_user_rereg_bids
Доступность:
Поддержка обработки списка услуг:
Назначение:
получить список освобождающихся доменов со своими ставками, в списке так же присутсвуют домены по которым ставка перебита
Поля запроса:
нет
Поля ответа:
Поле | Описание |
---|---|
dname |
Имя домена |
tld |
Доменная зона |
is_active |
Возможны ли торги по данному лоту |
is_recommended |
Премиум домен |
uni_avg_attendance |
Среднее кол-во посетителей за день |
avg_viewings |
Среднее кол-во просмотров за день |
all_avg_traffic |
Средний трафик за день |
search_query_list |
Список поисковых запросов |
first_creation_date |
дата самой первой регистрации домена по данным statonline.ru |
delete_date |
Дата удаления из реестра |
yandex_tic |
Яндекс тИЦ |
google_pr |
Google Page Rank |
registrar |
Регистратор, у которого домен находится сейчас на обслуживании |
user_bid |
Ваша последняя ставка |
max_bid |
Максимальная ставка на этот домен, если лот ещё активен, то вы можете её перебить независимо от того кто её сделал |
next_price |
Следующая минимальная ставка, имеет значение NULL для неактивных лотов |
blitz_price |
Максимальная ставка, при её достижении домен снимается с торгов (is_active = 0), но будет присутствовать в этом списке до момента освобождения домена реестром |
rereg_bids |
список всех возможных ставок отдельно по каждой доменной зоне (для справки) |
Пример запроса:
https://api.reg.ru/api/regru2/domain/get_user_rereg_bids
output_content_type=plain
password=test
username=test
Пример ответа:
{
answer => {
domains => [
{
delete_date => '2099-12-31',
yandex_tic => null,
max_bid => 225.00,
next_price => 590.00,
uni_avg_attendance => null,
blitz_price => 8000.00,
user_bid => 225.00,
search_query_list => null,
tld => 'ru',
dname => 'test.ru',
registrar => 'REGRU',
is_active => 1,
avg_viewings => null,
first_create_date => '2000-01-01',
google_pr => null,
is_recommended => 1,
all_avg_traffic => null
},
{
delete_date => '2099-01-01',
yandex_tic => 2000,
max_bid => 5000.00,
next_price => null,
uni_avg_attendance => null,
blitz_price => 5000.00,
user_bid => 5000.00,
search_query_list => null,
tld => 'su',
dname => 'test.su',
registrar => 'REGRU',
is_active => 0,
avg_viewings => null,
first_create_date => '2001-01-01',
google_pr => 9,
is_recommended => 1,
all_avg_traffic => null
}
],
rereg_bids => {
рф => [ 0, 225, 590, 750, 2500, 5000, 8000 ],
su => [ 0, 400, 590, 750, 2500, 5000, 8000 ],
ru => [ 0, 225, 590, 750, 2500, 5000, 8000 ]
}
},
result => 'success'
}
Пример кода:
Возможные ошибки:
8.14. Функция: domain/get_docs_upload_uri
Доступность:
Поддержка обработки списка услуг:
Назначение:
получение ссылки на закачивание документов из интернета для .RU/.SU/.РФ доменов
Поля запроса:
стандартные поля для идентификации домена
Поля ответа:
Поле | Описание |
---|---|
docs_upload_sid |
идентификатор закачиваемого документа |
url |
ссылка для закачивания документа, включает в себя идентификатор docs_upload_sid |
Пример запроса:
https://api.reg.ru/api/regru2/domain/get_docs_upload_uri
dname=test.ru
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"docs_upload_sid" : "123456",
"url" : "http://www.reg.ru/user/docs/add?userdoc_secretkey=123456"
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
CANT_GET_DOCS_UPLOAD_SID | Can't get documents upload sid. | Не удалось получить sid загрузки документов. |
8.15. Функция: domain/update_contacts
Доступность:
Поддержка обработки списка услуг:
Назначение:
Изменение контактных данных домена
Поля запроса:
Параметр | Описание |
---|---|
contacts |
Хеш контактных данных; описание контактных данных, являющихся ключами хеша, см. в функции domain/create. Нужно только в случае запроса в форматах JSON, XML |
domains |
Массив со списком доменов, каждый элемент массива является хешем с ключём dname, имя домена, или service_id. Домены в списке должны быть однотипные, т.е. все относится к одной доменной зоне или принадлежать к одной из групп: |
payout_agreement |
Флаг согласия клиента на списание денег с его счета. Только для доменных зон с платной сменой контактных данных. В настоящее время, это зона MD. Для MD стоимость смены контактных данных составляет 4800 рублей. Для EU требуется продление регистрации домена на 1 год. |
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов с параметрами dname, service_id и/или error_code c кодом ошибки |
Пример запроса:
Запрос с одним доменом
https://api.reg.ru/api/regru2/domain/update_contacts
birth_date=01.01.2000
country=RU
descr=Vschizh site
domain_name=vschizh.ru
e_mail=test@test.ru
output_content_type=plain
p_addr_addr=ул. Княжеска, д.1
p_addr_area=
p_addr_city=г. Вщиж
p_addr_recipient=Рюрику Святославу Владимировичу
p_addr_zip=123456
passport_date=01.01.1164
passport_number=22 44 668800
passport_place=выдан по месту правления
password=test
person=Svyatoslav V Ryurik
person_r_name=Святослав
person_r_patronimic=Владимирович
person_r_surname=Рюрик
phone=%2B7 495 1234567
username=test
Запрос со списком доменов
https://api.reg.ru/api/regru2/domain/update_contacts
input_data={"username":"test","password":"test","contacts":{"country":"RU","e_mail":"test@test.ru","person_r_surname":"Рюрик","person_r_name":"Святослав","person_r_patronimic":"Владимирович","phone":"%2B7 495 1234567","birth_date":"01.01.2000","descr":"Vschizh site","person":"Svyatoslav V Ryurik","p_addr_zip":"123456","p_addr_area":"","p_addr_city":"г. Вщиж","p_addr_addr":"ул. Княжеска, д.1","p_addr_recipient":"Рюрику Святославу Владимировичу","passport_number":"22 44 668800","passport_place":"выдан по месту правления","passport_date":"01.01.2000"},"domains":[{"dname":"vschizh.ru"},{"dname":"vschizh.su"}]}
input_format=json
output_content_type=plain
Пример ответа:
{
answer => {
domains => [
{
dname => 'vschizh.ru',
service_id => '12345',
result => 'success'
},
{
dname => 'vschizh.su',
service_id => '12346',
result => 'success'
}
],
},
"charset" : "utf-8",
"messagestore" : null,
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
INCOMPATIBLE_CONTYPES | Incompatible .ru/.su/.рф domain contypes | Несовместимые типы контактов для .ru/.su/.рф доменов |
INCOMPATIBLE_ZONES | Incompatible domain zones | Несовместимые доменные зоны |
PP_UPDATE_FAIL | Update Private Person is fail: $error_detail | Изменить флаг Private Person не удалось: $error_detail |
8.16. Функция: domain/update_private_person_flag
Доступность:
Поддержка обработки списка услуг:
Назначение:
Изменение флага Private Person скрытия/отображения контактных данных в whois
Поля запроса:
Параметр | Значения | Описание |
---|---|---|
private_person_flag |
0 и 1 |
Установка/снятие флага скрытия персональных данных |
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов с параметрами dname, service_id и/или error_code c кодом ошибки |
pp_flag |
соответствует переданному значению входного параметра private_person_flag, |
Пример запроса:
https://api.reg.ru/api/regru2/domain/update_private_person_flag
input_data={"username":"test","password":"test","domains":[{"dname":"vschizh.ru"},{"dname":"vschizh.su"}],"private_person_flag":"1","output_content_type":"plain"}
input_format=json
Пример ответа:
{
answer => {
domains => [
{
dname => 'vschizh.ru',
service_id => '12345',
result => 'success'
},
{
dname => 'vschizh.su',
service_id => '12346',
result => 'success'
}
],
pp_flag => 'is set'
}
result => 'success'
}
Пример кода:
Возможные ошибки:
8.17. Функция: domain/register_ns
Доступность:
Поддержка обработки списка услуг:
Назначение:
внесение домена в NSI-registry, работает только для международных доменов
Поля запроса:
Параметр | Описание |
---|---|
domain_name |
домен, nameserver которого будет добавляться |
ns0 |
nameserver |
ns0ip |
IP адрес добавляемого nameserver-а |
Поля ответа:
Поле | Описание |
---|---|
resp |
детализированный ответ регистратора NSI-доменов, присутствует при положительном ответе, обычно является хешем |
Пример запроса:
https://api.reg.ru/api/regru2/domain/register_ns
dname=test.com
ns0=ns0.test.com
ns0ip=1.2.3.4
output_content_type=plain
output_format=json
password=test
username=test
Пример ответа:
{
"answer" : {
"resp" : {
"actionstatus" : "success",
"actionstatusdesc" : "Addition Completed Successfully",
"actiontype" : "AddCns",
"actiontypedesc" : "Addition of Child Nameserver ns0.test.com with IP [1.2.3.4]",
"description" : "test.com",
"status" : "success"
}
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
8.18. Функция: domain/delete_ns
Доступность:
Поддержка обработки списка услуг:
Назначение:
удаление домена из NSI-registry, поддерживаются только для международных доменов
Поля запроса:
Параметр | Описание |
---|---|
domain_name |
домен, nameserver которого будет удаляться |
ns0 |
nameserver |
ns0ip |
IP адрес удаляемого nameserver-а |
Поля ответа:
Поле | Описание |
---|---|
resp |
детализированный ответ регистратора NSI-доменов, присутствует при положительном ответе, обычно является хешем |
Пример запроса:
https://api.reg.ru/api/regru2/domain/delete_ns
dname=test.com
ns0=ns0.test.com
ns0ip=1.2.3.4
output_content_type=plain
output_format=json
password=test
username=test
Пример ответа:
{
"answer" : {
"resp" : {
"actionstatus" : "success",
"actionstatusdesc" : "Modification Completed Successfully",
"actiontype" : "DelCnsIp",
"actiontypedesc" : "Deletion of IP Address [1.2.3.4] from Child Nameserver ns0.test.com",
"description" : "test.com",
"status" : "success"
}
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
8.19. Функция: domain/get_nss
Доступность:
Поддержка обработки списка услуг:
Назначение:
Получение DNS для доменов
Поля запроса:
Cтандартные параметры идентификации услуги, cтандартные параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
Список доменов с параметрами dname, service_id и nss, или error_code c кодом ошибки идентификации услуги. |
nss |
Список DNS. Для ns на базе самого доменного имени, дополнительно возращается его ip адрес. Если у такого ns более одного ip, то адреса возвращаются массивом. |
Пример запроса:
Один домен
https://api.reg.ru/api/regru2/domain/get_nss
domain_name=test.ru
output_content_type=plain
password=test
username=test
Несколько доменов
https://api.reg.ru/api/regru2/domain/get_nss
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.su"}],"output_content_type":"plain"}
input_format=json
Примеры успешного ответа:
{
answer => {
domains => [
{
dname => 'test.ru',
nss => [
{
ns => 'ns1.reg.ru'
},
{
ns => 'ns2.reg.ru'
}
],
service_id => 12345
}
]
},
result => 'success'
}
{
answer => {
domains => [
{
dname => 'test.ru',
nss => [
{
ns => 'ns1.reg.ru'
},
{
ns => 'ns2.reg.ru'
}
],
service_id => 12345
},
{
dname => 'test.su',
nss => [
{
ns => 'ns1.reg.ru'
},
{
ns => 'ns2.reg.ru'
}
],
service_id => 12346
}
]
},
result => 'success'
}
Пример кода:
Возможные ошибки:
8.20. Функция: domain/update_nss
Доступность:
Поддержка обработки списка услуг:
Назначение:
Изменение DNS серверов домена, установка/снятие делегирования домена (только для партнёров)
Поля запроса:
Параметр | Описание |
---|---|
domain_name |
Имя домена |
ns0...ns3 |
Имена DNS серверов в порядке убывания приоритета. |
ns0ip...ns3ip |
IP адреса DNS серверов. Необязательные поля. Используются только если имя DNS сервера содержит имя регистрируемого домена. |
nss |
Хеш, содержащий список NS-серверов и, если надо, IP адресов. В ключами хеша будут поля ns0...ns3 и ns0ip...ns3ip, описанные выше. Только для запросов в JSON/XML формате |
undelegate |
Установка/снятие домена с делегирования. |
payout_agreement |
Флаг согласия клиента на списание денег с его счета. Только для доменных зон с платной сменой DNS-серверов. В настоящее время, это зона MD. Стоимость смены контактных данных для этой зоны составляет 4800 рублей. |
Также см. параметры идентификации списка услуг.
Примечание:
Для поддержки DNS могут быть бесплатно использованы сервера REG.RU. Для этого в качестве DNS-серверов необходимо указать сервера ns1.reg.ru
и ns2.reg.ru
. В этом случае на серверах REG.RU будет прописана зона для Вашего домена. Управлять зоной можно через web-интерфейс сайта REG.RU или через API.
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов с параметрами dname и service_id, или error_code c кодом ошибки идентификации услуги |
Примеры запросов:
Изменение DNS одного домена
PLAIN:
https://api.reg.ru/api/regru2/domain/update_nss
dname=test.ru
ns0=ns1.test.com
ns0ip=1.2.3.4
ns1=ns2.test.com
ns1ip=2.3.4.5,3.4.5.6
output_content_type=plain
password=test
username=test
JSON:
https://api.reg.ru/api/regru2/domain/update_nss
input_data={"dname":"test.ru","nss":{"ns0":"ns1.test.ru", "ns1":"ns2.test.ru", "ns0ip":"1.2.3.4,2.3.4.5", "ns1ip":["3.4.5.6","4.5.6.7"]}}
input_format=json
password=test
username=test
Изменение DNS у списка доменов, один из которых содержит ошибку в названии (ответ для такого случая см. ниже)
https://api.reg.ru/api/regru2/domain/update_nss
input_data={"domains":[{"dname":"test.ru"},{"dname":"test.su"},{"dname":"----.ru"}],"nss":{"ns0":"ns1.reg.ru","ns1":"ns2.reg.ru"},"output_content_type":"plain"}
input_format=json
password=test
username=test
Снятие домена с делегирования без передачи NS-серверов
https://api.reg.ru/api/regru2/domain/update_nss
domain_name=test.ru
output_content_type=plain
password=test
undelegate=1
username=test
Пример ответа:
Один домен
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
}
]
},
"result" : "success"
}
Несколько доменов, один из которых содержит ошибочные данные:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.su",
"result" : "success",
"service_id" : "12346"
},
{
"dname" : "----.ru",
"error_code" : "INVALID_DOMAIN_NAME_FORMAT",
"result" : "domain_name is invalid or unsupported zone"
}
]
},
"result" : "success"
}
Успешный ответ смены флага делегирования домена без NS-серверов (запрос см. выше)
{
"answer" : {
"services" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
INVALID_NSS | Invalid name servers | Неверные NS-сервера |
UNDELEGATION_NOT_SUPPORTED_BY_TLD | Delegation/undelegation is not supported in this tld | Зона домена не поддерживает делегирование/разделегирование |
UNDELEGATION_NOT_SUPPORTED_BY_DOMAIN_STATE | Delegation/undelegation locked. Contact technical support for more information. | Делегирование/разделегирование заблокировано. Обратитесь в техническую поддержку за подробной информацией. |
8.21. Функция: domain/delegate
Доступность:
Поддержка обработки списка услуг:
Назначение:
Установка флага делегирования домена
Поля запроса:
Cтандартные параметры идентификации услуги, cтандартные параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
services |
список услуг с параметрами dname и service_id, или error_code c кодом ошибки идентификации услуги |
Пример запроса:
https://api.reg.ru/api/regru2/domain/delegate
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.su"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.su",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
8.22. Функция: domain/undelegate
Доступность:
Поддержка обработки списка услуг:
Назначение:
Снятие флага делегирования домена
Поля запроса:
Cтандартные параметры идентификации услуги, cтандартные параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
services |
список услуг с параметрами dname и service_id, или error_code c кодом ошибки идентификации услуги |
Пример запроса:
https://api.reg.ru/api/regru2/domain/undelegate
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.su"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.su",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
8.23. Функция: domain/transfer_to_another_account
Доступность:
Поддержка обработки списка услуг:
Назначение:
Полная передача домена на другой аккаунт
Поля запроса:
Параметр | Описание |
---|---|
new_user_name |
login клиента, на который передаются домены |
set_me_as_referrer |
назначить себя рефералом для передаваемого домена (подробнее — см. Реферальная программа), допустимые значения 0 и 1 |
А также cтандартные параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов, для которых передаются на другой аккаунт; в случае успешного выполнения запроса на передачу поле result будет содержать request_is_sent для каждого домена, иначе — код ошибки |
Пример запроса:
https://api.reg.ru/api/regru2/domain/transfer_to_another_account
dname=test.su
new_user_name=not_test
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "request_is_sent",
"service_id" : "12345"
},
{
"dname" : "test.su",
"error_code" : "NOT_TRANSFERED_DOMAIN_STATUS",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
OPERATION_FOR_SERVICE_OWNER_ONLY | Only owner can have access to this function | Только владелец имеет доступ к этой функции |
NOT_TRANSFERED_DOMAIN_STATUS | The status of the domain doesn't admit transfer, probably at first it is necessary to prolong the domain | Статус домена не допускает переноса, возможно сначала надо продлить домен |
8.24. Функция: domain/look_at_entering_list
Доступность:
Поддержка обработки списка услуг:
Назначение:
просмотр передаваемых на аккаунт доменов
Поля запроса:
нет
Поля ответа:
Поле | Описание |
---|---|
messages |
Список сообщений о передаче доменов, каждое сообщение содержит свой идентификатор id и имя передаваемого домена domain_name, для любой повторной передачи домена идентификатор будет иметь новое значение |
Пример запроса:
https://api.reg.ru/api/regru2/domain/look_at_entering_list
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"messages" : [
{
"domain_name" : "test.ru",
"id" : "123456"
},
{
"domain_name" : "test.su",
"id" : "123457"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
8.25. Функция: domain/accept_or_refuse_entering_list
Доступность:
Поддержка обработки списка услуг:
Назначение:
Принять или отклонить передаваемые на этот аккаунт домены
Поля запроса:
Параметр | Описание |
---|---|
domain_name |
имя получаемого домена |
id |
идентификатор сообщения о передаче домена, получить идентификатор можно при помощи функции domain/look_at_entering_list |
action_type |
тип действия по данному домену: принять домен accept или отказаться refuse, так же допустимы значения yes и no, 1 и 0 |
Поля ответа:
Поле | Описание |
---|---|
domains |
Список доменов c результатом действий по каждому домену |
Пример запроса:
https://api.reg.ru/api/regru2/domain/accept_or_refuse_entering_list
action_type=yes
dname=test.ru
id=123456
output_content_type=plain
password=test
username=test
https://api.reg.ru/api/regru2/domain/accept_or_refuse_entering_list
input_data={"domains":[{"dname":"test.ru","id":"123456","action_type":"accept"},{"dname":"test.su","id":"123457","action_type":"refuse"},{"dname":"test.com","id":"123458","action_type":"xxx"}]}
input_format=json
output_content_type=plain
password=test
username=test
Примеры успешного ответа:
{
answer => {
domains => [
{
domain_name => 'test.ru',
id => 123456,
action_type => 'accept',
result => 'accepted'
},
]
},
result => 'success'
}
{
answer => {
domains => [
{
domain_name => 'test.ru',
id => 123456,
action_type => 'yes',
result => 'accepted'
},
{
domain_name => 'test.su',
id => 123457
action_type => 'refuse',
result => 'refused'
},
{
domain_name => 'test.com',
id => 123458
action_type => 'xxx',
result => 'action_type has incorrect format or data',
error_params => {
param => 'action_type'
},
error_code => 'PARAMETER_INCORRECT'
}
]
},
result => 'success'
}
Пример кода:
Возможные ошибки:
8.26. Функция: domain/request_to_transfer
Доступность:
Поддержка обработки списка услуг:
Назначение:
Отправка запроса на перенос желаемых доменных имён, находящихся на обслуживании в REG.RU, на Ваш аккаунт.
Доступность:
Партнёры c сервис планом "Партнёр 2" или выше
Поля запроса:
Параметр | Описание |
---|---|
domain_name |
Имя домена, поле не совместимо со спиcком domains. |
domains |
Массив со списком вариантов доменных имён, каждый элемент массива является хешем с ключём dname или domain_name. Используется только в случае запроса в форматах JSON, XML. |
Поля ответа:
Поле | Описание |
---|---|
domains |
Массив со списком хешей, содержащий имена доменов dname и результатом отправки запроса на перенос. Если запрос успешно отправлен, поле result будет иметь значение success, в случае неудачи поле будет содержать текст ошибки. |
Пример запроса:
https://api.reg.ru/api/regru2/domain/request_to_transfer
input_data={"domains":[{"domain_name":"reg.ru"},{"dname":"test0.ru"},{"dname":"test1.ru"},{"dname":"test2.ru"},{"dname":"test3.ru"}]}
input_format=json
password=test
username=test
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
INCORRECT_DOMAIN_OWNER_SERVICE_PLAN | Domain owner has incorrect service plan or not partner | Владелец домена имеет неподходящий сервис план или не является партнером |
BELONGS_TO_ANOTHER_REGISTRAR | Domain is belong to another registrar | Домен зарегистрирован у другого регистратора |
FREE_DOMAIN | Free domain | Домен не зарегистрирован |
CHECK_DOMAIN_ERROR | Transfer is not possible | Перенос домена невозможен |
NO_DOMAINS_TO_TRANSFER | Not available to transfer domains | Нет доступных для переноса доменов |
BAD_SERVICE_PLAN | Incorrect partner service plan | Данной услугой разрешено пользоваться только партнерам, имеющим сервис план "Партнер 2" или выше |
REQUEST_TO_TRANSFER_DISABLED | You are not allowed to use request to transfer | Вам запрещено пользоваться данным сервисом |
8.27. Функция: domain/get_tld_info
Доступность:
Поддержка обработки списка услуг:
Назначение:
Запрос на получение информации о зоне
Поля запроса:
Параметр | Описание |
---|---|
tld |
Название зоны |
А также Cтандартные параметры идентификации услуги, cтандартные параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
tld |
Название зоны |
email_verification |
Необходима ли верификация почты, 1 -- необходима, 0 -- не требуется |
idn_allowed |
Флаг разрешения/запрета IDN. 1 -- IDN разрешено, 0 -- IDN запрещено |
max_dname_length |
Максимальная длина имени домена |
min_dname_length |
Минимальная длина имени домена |
min_nss_count |
Минимально разрешенное количество DNS-серверов |
max_nss_count |
Максимально разрешенное количество DNS-серверов |
privacy_protection_allowed |
Разрешено ли privacy_protection |
regperiods |
Периоды регистрации |
reject_days_of_renew_after_create |
Количество дней с момента регистрации домена в течение которых продление запрещено |
renew_grace_period_before_expdate |
Количество дней для продления перед expiration_date |
renew_grace_period_after_expdate |
Количество дней для продления после expiration_date |
renewperiods |
Периоды продления |
restoration_grace_period |
Количество дней для восстановления после expiration_date+renew_grace_period_after_expdate |
Пример запроса:
https://api.reg.ru/api/regru2/domain/get_tld_info
password=test
tld=ru
username=test
Примеры успешного ответа:
{
answer => {
tld_info => {
email_verification => '0',
idn_allowed => '0',
max_dname_length => '63',
max_nss_count => '13',
min_dname_length => '2',
min_nss_count => '0',
privacy_protection_allowed => '0',
regperiods => '1',
reject_days_of_renew_after_create => '0',
renew_grace_period_after_expdate => '31',
renew_grace_period_before_expdate => '60',
renewperiods => '1',
restoration_grace_period => '0',
tld => 'ru'
}
},
charset => 'utf-8',
messagestore => null,
result => 'success'
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
NO_TLD | tld not given or empty | tld не указано или пустое |
UNAVAILABLE_DOMAIN_ZONE | $tld is unavailable domain zone | $tld не относится к списку поддерживаемых доменных зон |
А также см. cтандартные коды ошибок
8.28. Функция: domain/send_email_verification_letter
Доступность:
Поддержка обработки списка услуг:
Назначение:
Отправка писем с запросом верификации почты GTLD доменов и проверка подтверждения email для аккредитованных зон
Поля запроса:
Параметр | Описание |
---|---|
dname |
Имя домена |
check_only |
Флаг запрета отправки письма, только проверка необходимости подтверждения email для зоны |
А также Cтандартные параметры идентификации услуги, cтандартные параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
status |
ALREADY_VERIFIED -- для зоны необходимо подтверждение email, для данного домена email уже подтверждён |
status |
NOT_VERIFIED -- для зоны необходимо подтверждение email, но для данного домена email ещё не подтверждён |
status |
SENT -- для зоны необходимо подтверждение email, для данного домена email ещё не подтверждён, но письмо уже отправлено |
status |
NOT_REQUIRED -- для зоны подтверждение email не требуется |
Пример запроса:
Запрос информации о необходимости подтверждения email и отправка письма для верификации
https://api.reg.ru/api/regru2/domain/send_email_verification_letter
dname=test.com
password=test
username=test
Запрос информации о необходимости подтверждения email без отправки письма для верификации
https://api.reg.ru/api/regru2/domain/send_email_verification_letter
check_only=1
dname=test.com
password=test
username=test
Примеры успешного ответа:
{
answer => {
status => 'ALREADY_VERIFIED'
},
charset => 'utf-8',
messagestore => null,
result => 'success'
}
Пример кода:
Возможные ошибки:
9. Функции для управления DNS-зоной
9.1. Функция: zone/nop
Доступность:
Поддержка обработки списка услуг:
Назначение:
для тестирования, позволяет проверить доступность управления DNS-зоной доменов; управление DNS-зоной возможно только если домену прописаны DNS сервера REG.RU: ns1.reg.ru и ns2.reg.ru
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов, где для доменов у которых можно управлять зоной поле result будет иметь значение success, иначе — код ошибки указывающий причину |
Пример запроса:
https://api.reg.ru/api/regru2/zone/nop
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
9.2. Функция: zone/add_alias
Доступность:
Поддержка обработки списка услуг:
Назначение:
cвязать поддомен с IP-адресом
Поля запроса:
Параметр | Описание |
---|---|
subdomain |
Имя поддомена, которому назначается IP-адрес. Чтобы назначить IP-адрес самому домену, передайте значение '@', чтобы назначить IP-адрес всем поддоменам, не обозначенным явно в других записях, передайте '*'. |
ipaddr |
IP-адрес, назначаемый поддомену. |
А также стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
Доменам test.ru и test.com надо назначить IP-адрес 111.111.111.111
https://api.reg.ru/api/regru2/zone/add_alias
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"}],"subdomain":"@","ipaddr":"111.111.111.111","output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
9.3. Функция: zone/add_aaaa
Доступность:
Поддержка обработки списка услуг:
Назначение:
cвязать поддомен с IPv6-адресом
Поля запроса:
Параметр | Описание |
---|---|
subdomain |
Имя поддомена, которому назначается IPv6-адрес. Чтобы назначить IP-адрес самому домену, передайте значение '@', чтобы назначить IP-адрес всем поддоменам, не обозначенным явно в других записях, передайте '*'. |
ipaddr |
IPv6-адрес, назначемый поддомену. |
А также стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
Доменам test.ru и test.com надо назначить IPv6-адрес aa11::a111:11aa:aaa1:aa1a
https://api.reg.ru/api/regru2/zone/add_aaaa
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"}],"subdomain":"@","ipaddr":"aa11::a111:11aa:aaa1:aa1a","output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
9.4. Функция: zone/add_caa
Доступность:
Поддержка обработки списка услуг:
Назначение:
указать правила выпуска SSL сертификатов для поддомена
Поля запроса:
Параметр | Описание |
---|---|
subdomain |
Имя поддомена, для которого задаётся правило |
flags |
Флаги правила в виде числа: 0 или 128 |
tag |
Тег для правила. Одно из: isssue, issuewild, iodef |
value |
Значение записи в зависимости от тега: для "issue" и "issuewild" - доменное имя центра сертификации, которому позволен выпуск сертификатов для поддомена; для "iodef" - email или http(s) URL, куда будет направлена информация о запросах на выпуск сертификатов для поддомена, противоречащих правилам описанным в CAA. |
А также стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
Разрешить выпуск wildcard-сертификатов для домена test.ru центру сертификации ca.example.com
https://api.reg.ru/api/regru2/zone/add_caa
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"}],"subdomain":"@","flags":0,"tag":"issuewild","value":"ca.example.com"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
CAA_INVALID | CAA record is incorrect | Неверное значение CAA записи |
FLAGS_INVALID | flags field is incorrect | Неверное значение для поля flags |
TAG_INVALID | tag field is incorrect | Неверное значение для поля tag |
9.5. Функция: zone/add_cname
Доступность:
Поддержка обработки списка услуг:
Назначение:
cвязать поддомен с адресом другого домена
Поля запроса:
Параметр | Описание |
---|---|
subdomain |
Имя поддомена, которому назначается адрес |
canonical_name |
Имя домена, которому назначаются синонимы |
А также стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
Домены 3-го уровня mail.test.ru и mail.test.com должны быть связаны с mx10.test.ru
https://api.reg.ru/api/regru2/zone/add_cname
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"}],"subdomain":"mail","canonical_name":"mx10.test.ru","output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
CNAME_INVALID | Invalid CNAME | Неверное имя для CNAME |
CNAME_ANDOTHERDATA | For this CNAME have other data already | Для этого CNAME уже есть другие данные |
9.6. Функция: zone/add_https
Доступность:
Поддержка обработки списка услуг:
Назначение:
указать правила для соединения с доменом
Поля запроса:
Параметр | Описание |
---|---|
subdomain |
Имя поддомена, для которого задаётся правило |
priority |
Приоритет. 0 - AliasMode (аналог CNAME), больше нуля - ServiceMode (endpoint и параметры для соединения с ним) |
target |
Целевой домен, с которым необходимо устанавливать соединение |
value |
Пары ключ=значение, разделенные через пробел. Допустимые ключи: alpn, no-default-alpn, ipv4hint, ipv6hint, port, ech, mandatory, keyNNN (NNN - число от 0 до 65534) |
А также стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
Указать для домена необходимость устанавливать соединение по протоколу HTTP/3 и набор ipv4 адресов, чтобы не делать дополнительных запросов для получения A записей
https://api.reg.ru/api/regru2/zone/add_https
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"}],"subdomain":"@","priority":1,"target":".","value":"alpn=h3 ipv4hint=193.12.11.10,193.12.11.11"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
HTTPS_INVALID | HTTPS record is incorrect | Неверное значение HTTPS записи |
HTTPS_TARGET_INVALID | target field is incorrect | Неверное значение для поля target |
PRIORITY_INVALID | Priority not found or have not digital data | Поле priority не определено или содержит нецифровые данные |
9.7. Функция: zone/add_mx
Доступность:
Поддержка обработки списка услуг:
Назначение:
указать почтовый сервер в виде доменного имени или IP-адреса, который будет принимать почту для вашего домена
Поля запроса:
Параметр | Описание |
---|---|
subdomain |
Имя поддомена, которому назначается адрес, по умолчанию подразумевается сам домен, т.е. значение @ |
priority |
приоритет почтового сервера, 0 — высший, 10 — минимальный, значение по умолчанию 0 |
mail_server |
Имя домена или IP-адрес почтового сервера (желательно вводить имя домена, т.к. не все почтовые сервера могут понимать IP-адрес) |
А также стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
Назначить доменным зонам test.ru и test.com главными почтовые сервера mail.test.ru и mail.test.com
https://api.reg.ru/api/regru2/zone/add_mx
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"}],"subdomain":"@","mail_server":"mail","output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
MAILHOST_INVALID | Error in mail_server IP address or domain name | Некорректно указан IP адрес или имя домена в поле mail_server |
9.8. Функция: zone/add_ns
Доступность:
Поддержка обработки списка услуг:
Назначение:
передать управление поддоменами на другие DNS-сервера
Поля запроса:
Параметр | Описание |
---|---|
subdomain |
Имя поддомена, который будет управляться другими DNS-серверами |
dns_server |
Доменное имя DNS-сервера |
record_number |
Порядковый номер NS-записи, который будет определять относительное расположение NS-записей для поддомена |
А также стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
Передать управление доменным зонам tt.test.ru и tt.test.com на DNS-сервер ns1.test.ru
https://api.reg.ru/api/regru2/zone/add_ns
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"}],"subdomain":"tt","dns_server":"ns1.test.ru","record_number":"10","output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
NSADDR_INVALID | Invalid DNS-server address | Неверный адрес DNS-сервера |
9.9. Функция: zone/add_txt
Доступность:
Поддержка обработки списка услуг:
Назначение:
добавить произвольную текстовую запись (TXT) для поддомена
Поля запроса:
Параметр | Описание |
---|---|
subdomain |
Имя поддомена, для которого добавляется текстовая запись |
text |
текст, допустимо использовать только алфавитноцифровые символы из набора ASCII |
А также стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
Добавить комментарии для mail.test.ru и mail.test.com
https://api.reg.ru/api/regru2/zone/add_txt
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"}],"subdomain":"mail","text":"testmail","output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
TEXT_NOT_FOUND | Text for record not found | Текст не найден |
TEXT_TOOLONG | Text too long | Превышена допустимая длина строки |
TEXT_CONTAINS_INVALID_CHARACTERS | Text contains invalid characters | Текст содержит недопустимые символы |
9.10. Функция: zone/add_srv
Доступность:
Поддержка обработки списка услуг:
Назначение:
добавить сервисную запись
Поля запроса:
Параметр | Описание |
---|---|
service |
сервис, который будет сопоставлен указанному серверу, например для назначения SIP серверу sip.test.ru по upd протоколу надо прописать sip.udp |
priority |
приоритет записи |
weight |
нагрузка, которую могут обработать системы, необязательное поле, значение по умолчанию 0 |
target |
сервер обслуживающий службу |
port |
порт обслуживающий службу |
А также стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
Направить обслуживание SIP протокола для звонков на xxx@test.ru и xxx@test.com на сервер sip.test.ru по udp протоколу на 5060 порту
https://api.reg.ru/api/regru2/zone/add_srv
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"}],"service":"_sip._udp","priority":"0","port":"5060","target":"sip.test.ru","output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
SERVICE_INVALID | Service not found or have incorrect data | Поле service не найдено или содержит некорректные данные |
PRIORITY_INVALID | Priority not found or have not digital data | Поле priority не определено или содержит нецифровые данные |
WEIGHT_INVALID | Weight have not digital data | Поле weight содержит нецифровые данные |
PORT_INVALID | Port not found or have not digital data | Поле port не определено или содержит нецифровые данные |
9.11. Функция: zone/get_resource_records
Доступность:
Поддержка обработки списка услуг:
Назначение:
получение ресурсных записей зоны для каждого домена
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов, где для доменов, у которых можно управлять зоной поле result, будет иметь значение success, иначе — код ошибки, указывающий причину |
rrs |
Ресурсные записи домена |
subname |
поддомен, для которого создана ресурсная запись: * для всех поддоменов, кроме указанных явно, @ для самого домена, или конкретное имя поддомена |
rectype |
класс, тип записи: A, AAAA, CNAME, MX, NS и другие |
state |
статус записи: A — активна (устарело, присутствует только для совместимости) |
priority |
приоритет записи |
content |
содержимое записи: IP адрес для А, IPv6 адрес для АААА, и др |
soa |
Время жизни кеша зоны |
Пример запроса:
https://api.reg.ru/api/regru2/zone/get_resource_records
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"rrs" : [
{
"content" : "111.222.111.222",
"prio" : "0",
"rectype" : "A",
"state" : "A",
"subname" : "www"
}
],
"service_id" : "12345",
"soa" : {
"minimum_ttl" : "12h",
"ttl" : "1d"
}
},
{
"dname" : "test.com",
"result" : "success",
"rrs" : [
{
"content" : "111.222.111.222",
"prio" : "0",
"rectype" : "A",
"state" : "A",
"subname" : "www"
}
],
"service_id" : "12346",
"soa" : {
"minimum_ttl" : "12h",
"ttl" : "1d"
}
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
INVALID_ZONE_RECORD_TYPE | Zone record type is invalid | Неверный тип записи зоны |
А так-же см. cтандартные коды ошибок
9.12. Функция: zone/update_records
Доступность:
Поддержка обработки списка услуг:
Назначение:
добавление и/или удаление нескольких ресурсных записей одним запросом, порядок элементов в передаваемом массиве имеет значение, т.к. одни записи могут быть зависимыми от других, в случае возникновения ошибки в одной из записей из action_list, последующиее игнорируются.
Поля запроса:
Параметр | Описание |
---|---|
action_list |
Массив хешей, где каждый хеш содержит параметры для добавления/удаления ресурсной записи. Класс/тип добавляемой записи указывает поле action, допустимые варианты: add_alias, add_aaaa, add_caa, add_cname, add_https, add_mx, add_ns, add_txt, add_srv, add_spf, remove_record. Остальные поля хеша зависят от action и соответствуют функциям add_alias, add_aaaa, remove_record и остальным, описанным ниже.
Массив action_list может быть как общим для всего списка доменов (см. 1-й пример запроса), так и особым для каждого домена в списке (см. 2й пример запроса). |
А также стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
https://api.reg.ru/api/regru2/zone/update_records
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru","action_list":[{"action":"add_alias","subdomain":"www","ipaddr":"11.22.33.44"},{"action":"add_cname","subdomain":"@","canonical_name":"www.test.ru"}]}],"output_content_type":"plain"}
input_format=json
Примеры ответов:
Успешный ответ на первый запрос:
{
answer => {
domains => [
{
dname => 'test.ru',
service_id => 12345,
action_list => [
{
action => 'add_alias',
result => 'success'
},
{
action => 'add_cname',
result => 'success'
}
],
result => 'success'
}
]
},
result => 'success'
}
Ответ на второй запрос, содержащий ошибку:
{
answer => {
domains => [
{
dname => 'test.ru',
service_id => 12345,
error_params => {
action => 'add_alias'
},
error_code => 'INVALID_ACTION',
error_text => 'Invalid action: add_alias'
}
]
},
result => 'success'
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
INVALID_ACTION | Action is invalid or not found: $action | Действие ошибочно или не найдено: $action |
9.13. Функция: zone/update_soa
Доступность:
Поддержка обработки списка услуг:
Назначение:
изменить время жизни кеша для зоны
Поля запроса:
Параметр | Описание |
---|---|
ttl |
Время жизни кеша для зоны. Либо число в секундах, либо число с суффиксами m для месяцев, w для недель, d для дней, h для часов |
minimum_ttl |
Время жизни кеша для негативного ответа на запрос в зонe. Формат поля как и в TTL |
А также стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
https://api.reg.ru/api/regru2/zone/update_soa
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"}],"ttl":"1d","minimum_ttl":"4h","output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
SOA_RECORD_INVALID | Invalid time for SOA record | Некорректно указано время для SOA-записи |
9.14. Функция: zone/tune_forwarding
Доступность:
Поддержка обработки списка услуг:
Назначение:
добавить ресурсные записи, необходимые для web-форвардинга
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
https://api.reg.ru/api/regru2/zone/tune_forwarding
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
9.15. Функция: zone/clear_forwarding
Доступность:
Поддержка обработки списка услуг:
Назначение:
удалить ресурсные записи, необходимые для web-форвардинга
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
https://api.reg.ru/api/regru2/zone/clear_forwarding
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
9.16. Функция: zone/tune_parking
Доступность:
Поддержка обработки списка услуг:
Назначение:
добавить ресурсные записи, необходимые для парковки домена
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
https://api.reg.ru/api/regru2/zone/tune_parking
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
9.17. Функция: zone/clear_parking
Доступность:
Поддержка обработки списка услуг:
Назначение:
удалить ресурсные записи, необходимые для парковки домена
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
https://api.reg.ru/api/regru2/zone/clear_parking
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
9.18. Функция: zone/remove_record
Доступность:
Поддержка обработки списка услуг:
Назначение:
удалить ресурсную запись
Поля запроса:
Параметр | Описание |
---|---|
subdomain |
поддомен для которого будет удаляться запись, обязательное поле |
record_type |
класс, тип удаляемой записи, обязательное поле |
priority |
приоритет записи, опциональное поле, значение по умолчанию 0. Неприменимо к запросу удаления А-записи (и аналогичных записей) |
content |
содержимое записи, опциональное поле, при его отсутствии помечаются к удалению все записи, попадающие под условие остальных параметров |
А также стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
https://api.reg.ru/api/regru2/zone/remove_record
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru","dname":"test.com"}],"subdomain":"@","content":"111.111.111.111","record_type":"A","output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
Код ошибки | error_text | Описание |
---|---|---|
INVALID_ZONE_RECORD_TYPE | Zone record type is invalid | Неверный тип записи зоны |
А так-же см. cтандартные коды ошибок
9.19. Функция: zone/clear
Доступность:
Поддержка обработки списка услуг:
Назначение:
удалить все ресурсные записи
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
https://api.reg.ru/api/regru2/zone/clear
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru","dname":"test.com"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "12346"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
10. Функции для управления DNSSEC
10.1. Функция: dnssec/nop
Доступность:
Поддержка обработки списка услуг:
Назначение:
Для тестирования, позволяет проверить доступность управления DNSSEC доменов
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов, где для доменов у которых можно управлять DNSSEC поле result будет иметь значение success, иначе — код ошибки указывающий причину |
Пример запроса:
https://api.reg.ru/api/regru2/dnssec/nop
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.net"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.net",
"domain_name" : "test.net",
"error_params" : null,
"error_text" : "This domain doesn't support DNSSEC",
"result" : "error"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
10.2. Функция: dnssec/get_status
Доступность:
Поддержка обработки списка услуг:
Назначение:
Получение статуса DNSSEC домена
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
status |
статус DNSSEC домена, одно из значений: enabled (включен), disabled (выключен), updating (обновление статуса происходит в данный момент) |
Пример запроса:
https://api.reg.ru/api/regru2/dnssec/get_status
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"},{"dname":"test.net"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345",
"status" : "enabled"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "6789",
"status" : "updating"
},
{
"dname" : "test.net",
"domain_name" : "test.net",
"error_params" : null,
"error_text" : "This domain doesn't support DNSSEC",
"result" : "error"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
10.3. Функция: dnssec/enable
Доступность:
Поддержка обработки списка услуг:
Назначение:
Включение DNSSEC для домена, использующего DNS сервера REG.RU. Проверить завершение выполнения операции можно используя функцию get_status.
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
https://api.reg.ru/api/regru2/dnssec/enable
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"},{"dname":"test.net"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"error_params" : {
"domain_name" : "test.com"
},
"error_text" : "DNSSEC updating for domain already in progress",
"result" : "error"
},
{
"dname" : "test.net",
"error_params" : {
"domain_name" : "test.net"
},
"error_text" : "This domain not use REG.RU name services",
"result" : "error"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
10.4. Функция: dnssec/disable
Доступность:
Поддержка обработки списка услуг:
Назначение:
Выключение DNSSEC для домена. Проверить завершение выполнения операции можно используя функцию get_status.
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
https://api.reg.ru/api/regru2/dnssec/disable
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"},{"dname":"test.net"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"error_params" : {
"domain_name" : "test.com"
},
"error_text" : "DNSSEC updating for domain already in progress",
"result" : "error"
},
{
"dname" : "test.net",
"error_params" : {
"domain_name" : "test.net"
},
"error_text" : "This domain is not activated yet",
"result" : "error"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
10.5. Функция: dnssec/renew_ksk
Доступность:
Поддержка обработки списка услуг:
Назначение:
Обновление KSK ключа для домена, использующего DNS сервера REG.RU. Проверить завершение выполнения операции можно используя функцию get_status.
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
https://api.reg.ru/api/regru2/dnssec/renew_ksk
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"},{"dname":"test.net"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"error_params" : {
"domain_name" : "test.com"
},
"error_text" : "DNSSEC updating for domain already in progress",
"result" : "error"
},
{
"dname" : "test.net",
"domain_name" : "test.net",
"error_params" : null,
"error_text" : "This domain not use REG.RU name services",
"result" : "error"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
10.6. Функция: dnssec/renew_zsk
Доступность:
Поддержка обработки списка услуг:
Назначение:
Обновление ZSK ключа для домена, использующего DNS сервера REG.RU. Проверить завершение выполнения операции можно используя функцию get_status.
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
https://api.reg.ru/api/regru2/dnssec/renew_zsk
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"},{"dname":"test.net"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"error_params" : {
"domain_name" : "test.com"
},
"error_text" : "DNSSEC updating for domain already in progress",
"result" : "error"
},
{
"dname" : "test.net",
"domain_name" : "test.net",
"error_params" : null,
"error_text" : "This domain not use REG.RU name services",
"result" : "error"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
10.7. Функция: dnssec/get_records
Доступность:
Поддержка обработки списка услуг:
Назначение:
Получение списка DNSSEC записей домена. Для доменов на DNS серверах REG.RU это DNS записи DS и DNSKEY, а для остальных доменов — записи DNSSEC, в том виде как они хранятся в родительской зоне.
Поля запроса:
стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
records |
список записей DNSSEC (для доменов на DNS серверах REG.RU записи с полями DS, DNSKEY; для остальных — в свободном формате) |
Пример запроса:
https://api.reg.ru/api/regru2/dnssec/get_records
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru"},{"dname":"test.com"},{"dname":"test.net"}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"records" : [
{
"DNSKEY" : "test.ru. IN DNSKEY 256 3 13 CPaFmHh6q/b1zQbXp4w8J3sXUp+YK6BfxzSam/qgps/i5JSiXSQ4kD5v433qdnbnocSyZIDw9EqiAQUbVE/M4g=="
},
{
"DNSKEY" : "test.ru. IN DNSKEY 257 3 13 X2ehOZBEVxU6baEa58fQx/6Y+gckDeq85XGFW8o6jWFB19wtv6aqdc8ycpIrQaZ4bSLYM7ZyLPJtP6UOkzslDg==",
"DS" : "test.ru. IN DS 55528 13 2 cbb775347bdbdff6e1d832595df06add7e610732db131c0f5d3d295e85ae0bef"
}
],
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"records" : [
{
"alg" : "13",
"digest" : "17F3E3F4E7FD813432C8E989BD74728BFE9BCA6B518BE2F1155D9EA352067997",
"digtype" : "2",
"keytag" : "2371"
}
],
"result" : "success",
"service_id" : "6789"
},
{
"dname" : "test.net",
"domain_name" : "test.net",
"error_params" : null,
"error_text" : "This domain doesn't support DNSSEC",
"result" : "error"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
10.8. Функция: dnssec/add_keys
Доступность:
Поддержка обработки списка услуг:
Назначение:
Передача информации о KSK ключах в родительскую зону. Можно использовать только для доменов НЕ использующих DNS сервера REG.RU. Проверить завершение выполнения операции можно используя функции get_status, get_records.
Поля запроса:
Параметр | Описание |
---|---|
records |
список DNSKEY или DS записей, в случае отсутствия параметра попытается получить записи с авторитетного DNS сервера |
А также стандартные параметры идентификации услуги, параметры идентификации списка услуг
Поля ответа:
Поле | Описание |
---|---|
domains |
список доменов c результатами выполнения запроса |
Пример запроса:
https://api.reg.ru/api/regru2/dnssec/add_keys
input_data={"username":"test","password":"test","domains":[{"dname":"test.ru", "records":["test.ru. 3600 IN DS 2371 13 2 4508a7798c38867c94091bbf91edaf9e6dbf56da0606c748d3d1d1b2382c1602"]},{"dname":"test.com", "records":["test.com. IN DNSKEY 257 3 13 X2ehOZBEVxU6baEa58fQx/6Y+gckDeq85XGFW8o6jWFB19wtv6aqdc8ycpIrQaZ4bSLYM7ZyLPJtP6UOkzslDg=="]}],"output_content_type":"plain"}
input_format=json
Пример ответа:
{
"answer" : {
"domains" : [
{
"dname" : "test.ru",
"result" : "success",
"service_id" : "12345"
},
{
"dname" : "test.com",
"result" : "success",
"service_id" : "6789"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
11. Функции для работы с хостингом
12. Функции для работы с папками
12.1. Функция: folder/nop
Доступность:
Поддержка обработки списка услуг:
Назначение:
тестовая функция, можно использовать как средство для проверки существования папки
Поля запроса:
Параметр | Описание |
---|---|
folder_name или folder_id |
Идентифицирует папку, с которой будет совершено действие. |
Поля ответа:
Пример запроса:
https://api.reg.ru/api/regru2/folder/nop
folder_id=123456
folder_name=test_folder_name
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"id" : "-1",
"name" : "test_folder_name"
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
12.2. Функция: folder/create
Доступность:
Поддержка обработки списка услуг:
Назначение:
создание папки
Поля запроса:
Параметр | Описание |
---|---|
folder_name |
Задает название новой папки. |
Поля ответа:
Пример запроса:
создание папки с именем test_folder_name
https://api.reg.ru/api/regru2/folder/create
folder_name=test_folder_name
output_content_type=plain
password=test
username=test
Пример ответа:
{
"result" : "success"
}
Пример кода:
Возможные ошибки:
12.3. Функция: folder/remove
Доступность:
Поддержка обработки списка услуг:
Назначение:
удаление папки
Поля запроса:
Параметр | Описание |
---|---|
folder_name или folder_id |
Идентифицирует папку, с которой будет совершено действие. |
Поля ответа:
Пример запроса:
удаление из папки с ID folder_id
https://api.reg.ru/api/regru2/folder/remove
folder_id=123456
output_content_type=plain
password=test
username=test
удаление из папки с именем folder_name
https://api.reg.ru/api/regru2/folder/remove
folder_id=123456
folder_name=test_folder_name
output_content_type=plain
password=test
username=test
Пример ответа:
{
"result" : "success"
}
Пример кода:
Возможные ошибки:
12.4. Функция: folder/rename
Доступность:
Поддержка обработки списка услуг:
Назначение:
переименование папки.
Поля запроса:
Параметр | Описание |
---|---|
folder_name или folder_id |
Идентифицирует папку, с которой будет совершено действие. |
new_folder_name |
Задает новое имя папки |
Поля ответа:
Пример запроса:
переименование папки с ID folder_id
https://api.reg.ru/api/regru2/folder/rename
folder_id=123456
folder_name=test_folder_name
new_folder_name=new_test_folder_name
output_content_type=plain
password=test
username=test
переименование папки с именем folder_name
https://api.reg.ru/api/regru2/folder/rename
folder_name=test_folder_name
new_folder_name=new_test_folder_name
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"folder_content" : [
{
"domain_name" : "test1.ru",
"service_id" : "1000",
"servtype" : "domain"
},
{
"domain_name" : "test2.ru",
"service_id" : "1001",
"servtype" : "domain"
}
]
},
"charset" : "utf-8",
"messagestore" : "null",
"result" : "success"
}
Пример кода:
Возможные ошибки:
12.5. Функция: folder/get_services
Доступность:
Поддержка обработки списка услуг:
Назначение:
получить список услуг в папке
Поля запроса:
стандартные параметры идентификации папок
Поля ответа:
Пример запроса:
выдать список услуг в папке test_folder_name
https://api.reg.ru/api/regru2/folder/get_services
folder_name=test_folder_name
output_content_type=plain
password=test
username=test
выдать список услуг в папке с ID 12345
https://api.reg.ru/api/regru2/folder/get_services
folder_id=12345
output_content_type=plain
password=test
username=test
Пример ответа:
"answer" => {
"folder_content" => [
{
"domain_name" => "test1.ru",
"service_id" => "1000",
"servtype" => "domain"
},
{
"domain_name" => "test2.ru",
"service_id" => "1001",
"servtype" => "domain"
}
],
"result" => "success"
}
Пример кода:
Возможные ошибки:
12.6. Функция: folder/add_services
Доступность:
Поддержка обработки списка услуг:
Назначение:
добавление услуг в папку
Поля запроса:
Параметр | Описание |
---|---|
folder_name или folder_id |
Задает название папки, куда будут добавлены услуги. |
services |
Задает список услуг, с которыми будет произведено действие. |
return_folder_contents |
Если значение этого поля уставновлено в "1", то в ответе системы будет присутствовать список услуг в папке, с которой совершено действие. |
Поля ответа:
Пример запроса:
добавление списка услуг (test1.ru, test2.ru) в папку test_folder_name
https://api.reg.ru/api/regru2/folder/add_services
input_data={"folder_name":"test_folder_name","services":[{"domain_name":"test1.ru"},{"domain_name":"test2.ru"}]}
input_format=json
output_content_type=plain
password=test
username=test
добавление списка услуг (с ID=1000, ID=1001) в папку с ID 12345
https://api.reg.ru/api/regru2/folder/add_services
input_data={"folder_id":"12345","services":[{"service_id":"1000"},{"service_id":"1001"}]}
input_format=json
output_content_type=plain
password=test
username=test
Пример ответа:
Без переданного параметра return_folder_content
{
"answer" : {
"services" : [
{
"dname" : "test1.ru",
"result" : "success",
"service_id" : "1000",
"servtype" : "domain"
},
{
"dname" : "test2.ru",
"result" : "success",
"service_id" : "1000",
"servtype" : "domain"
}
]
},
"result" : "success"
}
С параметром return_folder_content=1
{
"answer" : {
"folder_content" : [
{
"domain_name" : "test1.ru",
"service_id" : "1000"
},
{
"domain_name" : "test2.ru",
"service_id" : "1001"
}
],
"services" : [
{
"dname" : "test01.ru",
"result" : "success",
"service_id" : "123456",
"servtype" : "domain"
},
{
"dname" : "test11.ru",
"error_code" : "DOMAIN_NOT_FOUND",
"error_params" : {
"domain_name" : "test11.ru"
},
"result" : "Domain test11.ru not found or not owned by You"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
12.7. Функция: folder/remove_services
Доступность:
Поддержка обработки списка услуг:
Назначение:
удаление услуг из папки
Поля запроса:
Параметр | Описание |
---|---|
folder_name или folder_id |
Задает название папки, откуда будут удалены услуги. |
services |
Задает список услуг, с которыми будет произведено действие. |
return_folder_contents |
Если значение этого поля уставновлено в "1", то в ответе системы будет присутствовать список услуг в папке, с которой совершено действие. |
Поля ответа:
Пример запроса:
удаление списка услуг (test1.ru, test2.ru) из папки test_folder_name
https://api.reg.ru/api/regru2/folder/remove_services
input_data={"folder_name":"test_folder_name","services":[{"domain_name":"test1.ru"},{"domain_name":"test2.ru"}]}
input_format=json
output_content_type=plain
password=test
username=test
удаление списка услуг (с ID=1000, ID=1001) из папки с ID 12345
https://api.reg.ru/api/regru2/folder/remove_services
input_data={"folder_id":"12345","services":[{"service_id":"1000"},{"service_id":"1001"}]}
input_format=json
output_content_type=plain
password=test
username=test
Пример ответа:
Без переданного параметра return_folder_content
{
"answer" : {
"services" : [
{
"dname" : "test1.ru",
"result" : "success",
"service_id" : "1000",
"servtype" : "domain"
},
{
"dname" : "test2.ru",
"result" : "success",
"service_id" : "1000",
"servtype" : "domain"
}
]
},
"result" : "success"
}
С параметром return_folder_content=1
{
"answer" : {
"folder_content" : [
{
"domain_name" : "test1.ru",
"service_id" : "1000"
},
{
"domain_name" : "test2.ru",
"service_id" : "1001"
}
],
"services" : [
{
"dname" : "test01.ru",
"result" : "success",
"service_id" : "123456",
"servtype" : "domain"
},
{
"dname" : "test11.ru",
"error_code" : "DOMAIN_NOT_FOUND",
"error_params" : {
"domain_name" : "test11.ru"
},
"result" : "Domain test11.ru not found or not owned by You"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
12.8. Функция: folder/replace_services
Доступность:
Поддержка обработки списка услуг:
Назначение:
перезаписывание услуг в папке (в результате данной операции все услуги в указанной папке удаляются, а услуги, указанные в параметре domain_name или service_id, добавляются в папку)
Поля запроса:
Параметр | Описание |
---|---|
folder_name или folder_id |
Задает название папки, куда будут перезаписаны услуги. |
services |
Задает список услуг, с которыми будет произведено действие. |
return_folder_contents |
Если значение этого поля уставновлено в "1", то в ответе системы будет присутствовать список услуг в папке, с которой совершено действие. |
Поля ответа:
Пример запроса:
перезапись списка услуг (test1.ru, test2.ru) в папке test_folder_name
https://api.reg.ru/api/regru2/folder/replace_services
input_data={"folder_name":"test_folder_name","services":[{"domain_name":"test1.ru"},{"domain_name":"test2.ru"}]}
input_format=json
output_content_type=plain
password=test
username=test
перезапись списка услуг (с ID=1000, ID=1001) в папке с ID 12345
https://api.reg.ru/api/regru2/folder/replace_services
input_data={"folder_id":"12345","services":[{"service_id":"1000"},{"service_id":"1001"}]}
input_format=json
output_content_type=plain
password=test
username=test
Пример ответа:
Без переданного параметра return_folder_content
{
"answer" : {
"services" : [
{
"dname" : "test1.ru",
"result" : "success",
"service_id" : "1000",
"servtype" : "domain"
},
{
"dname" : "test2.ru",
"result" : "success",
"service_id" : "1000",
"servtype" : "domain"
}
]
},
"result" : "success"
}
С параметром return_folder_content=1
{
"answer" : {
"folder_content" : [
{
"domain_name" : "test1.ru",
"service_id" : "1000"
},
{
"domain_name" : "test2.ru",
"service_id" : "1001"
}
],
"services" : [
{
"dname" : "test01.ru",
"result" : "success",
"service_id" : "123456",
"servtype" : "domain"
},
{
"dname" : "test11.ru",
"error_code" : "DOMAIN_NOT_FOUND",
"error_params" : {
"domain_name" : "test11.ru"
},
"result" : "Domain test11.ru not found or not owned by You"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
12.9. Функция: folder/move_services
Доступность:
Поддержка обработки списка услуг:
Назначение:
перенос услуг из одной папки в другую
Поля запроса:
Параметр | Описание |
---|---|
folder_name или folder_id |
Задает название папки, откуда будут перенесены услуги. |
new_folder_name или new_folder_id |
Задает название папки, куда будут перенесены услуги |
services |
Задает список услуг, с которыми будет произведено действие. |
return_folder_contents |
Если значение этого поля уставновлено в "1", то в ответе системы будет присутствовать список услуг в папке, с которой совершено действие. |
Поля ответа:
Пример запроса:
перенос списка услуг (test1.ru, test2.ru) из папки test_folder_name в папку new_test_folder_name
https://api.reg.ru/api/regru2/folder/move_services
input_data={"folder_name":"test_folder_name","new_folder_name":"new_test_folder_name","services":[{"domain_name":"test1.ru"},{"domain_name":"test2.ru"}]}
input_format=json
output_content_type=plain
password=test
username=test
перенос списка услуг (с ID=1000, ID=1001) из папки c ID 12345 в папку с ID 1234567
https://api.reg.ru/api/regru2/folder/move_services
input_data={"folder_id":"12345","new_folder_id":"1234567","services":[{"service_id":"1000"},{"service_id":"1001"}]}
input_format=json
output_content_type=plain
password=test
username=test
Пример ответа:
Без переданного параметра return_folder_content
{
"answer" : {
"services" : [
{
"dname" : "test1.ru",
"result" : "success",
"service_id" : "1000",
"servtype" : "domain"
},
{
"dname" : "test2.ru",
"result" : "success",
"service_id" : "1000",
"servtype" : "domain"
}
]
},
"result" : "success"
}
С параметром return_folder_content=1
{
"answer" : {
"folder_content" : [
{
"domain_name" : "test1.ru",
"service_id" : "1000"
},
{
"domain_name" : "test2.ru",
"service_id" : "1001"
}
],
"services" : [
{
"dname" : "test01.ru",
"result" : "success",
"service_id" : "123456",
"servtype" : "domain"
},
{
"dname" : "test11.ru",
"error_code" : "DOMAIN_NOT_FOUND",
"error_params" : {
"domain_name" : "test11.ru"
},
"result" : "Domain test11.ru not found or not owned by You"
}
]
},
"result" : "success"
}
Пример кода:
Возможные ошибки:
13. Функции для работы с Магазином доменов
13.1. Функция: shop/nop
Доступность:
Поддержка обработки списка услуг:
Назначение:
для тестирования, позволяет проверить существования лота по имени домена получить его id
Поля запроса:
стандартные параметры идентификации услуги и
Параметр | Описание |
---|---|
dname |
имя домена |
Поля ответа:
Поле | Описание |
---|---|
lot_id |
идентификатор лота |
Пример запроса:
https://api.reg.ru/api/regru2/shop/nop
dname=qqq.ru
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"lot_id" : "123"
},
"result" : "success"
}
Возможные ошибки:
13.2. Функция: shop/delete_lot
Доступность:
Назначение:
удаление лота/лотов
Поля запроса:
стандартные параметры идентификации услуги и
Параметр | Описание |
---|---|
dname |
список доменов удаляемых лотов |
Поля ответа:
отсутствуют
Пример запроса:
https://api.reg.ru/api/regru2/shop/delete_lot
input_data={"dname":["domain1.ru","domain2.ru","domain3.ru"]}
input_format=json
output_content_type=plain
password=test
username=test
Пример ответа:
{
"result" : "success"
}
Возможные ошибки:
13.3. Функция: shop/get_info
Доступность:
Назначение:
получение информации по лоту
Поля запроса:
стандартные параметры идентификации услуги и
Параметр | Описание |
---|---|
dname |
имя домена |
Поля ответа:
Поле | Описание |
---|---|
dname |
имя домена |
dname_puny |
имя домена в punycode |
price_type |
тип цены: "fixed" (фиксированная цена) или "offer" (договорная цена) |
start_price |
цена |
site |
флаг, что с доменом продается сайт |
tm |
флаг, что с доменом продается торговая марка |
description |
описание |
keywords |
список ключевых слов |
category_ids |
список идентификаторов категорий |
lot_hits |
количество просмотров лота |
bids_cnt |
количество ставок/предложений по лоту |
first_create_domain |
дата первой регистрации |
creation_date |
дата регистрации |
lot_date |
дата выставления на продажу |
yandex_tic |
Яндекс тИц |
google_pr |
Google PageRank |
Пример запроса:
https://api.reg.ru/api/regru2/shop/get_info
dname=test-shop-api-1.ru
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"category_ids" : [
"1",
"2",
"3"
],
"description" : "desc",
"dname" : "test-shop-api-1.ru",
"dname_puny" : "test-shop-api-1.ru",
"keywords" : [
"k1",
"k2",
"k3"
],
"price_type" : "fixed",
"site" : "1",
"start_price" : "200.00",
"tm" : "1"
},
"charset" : "utf-8",
"messagestore" : "null",
"result" : "success"
}
Возможные ошибки:
13.4. Функция: shop/get_lot_list
Доступность:
Назначение:
получение списка лотов
Поля запроса:
стандартные параметры идентификации услуги и
Параметр | Описание |
---|---|
pg |
какую страницу показывать, по умолчанию - 0 |
itemsonpage |
сколько элементов на странице, по умолчанию - 25, допустимые значения: 25, 50, 100, 200, 500 |
sortcol |
поле для сортировки, принимаемые значения: dname, dname_length, google_pr, yandex_tic, is_online, creation_date, lot_date, lot_hits, start_price, lot_mtime, first_create_domain, bids_cnt, keywords |
sortorder |
тип сортировки, принимаемые значения: ASC, DESC, по умолчанию - ASC |
keywords |
ключевое слово |
show_my_lots |
флаг "только мои лоты" |
yandex_tic_from |
Яндекс тИЦ от |
yandex_tic_to |
Яндекс ТИЦ до |
google_pr_from |
Google PageRank от |
google_pr_to |
Google PageRank до |
price_from |
цена от |
price_to |
цена до |
creation_date_from |
дата создания домена от |
creation_date_to |
дата создания домена до |
lot_date_from |
дата создания лота от |
lot_date_to |
дата создания лота до |
lot_mtime_from |
дата редактирвоания лота от |
lot_mtime_to |
дата редактирования лота до |
dname_length_from |
длина домена от |
dname_length_to |
длина домена до |
Поля ответа:
Поле | Описание |
---|---|
lots_cnt |
количество лотов |
lots |
список лотов |
bids_cnt |
количество ставок/предложений по лоту |
category_ids |
список идентификаторов категорий |
creation_date |
дата регистрации |
dname |
имя домена |
dname_puny |
имя домена в punycode |
first_create_domain |
дата первой регистрации |
google_pr |
Google PageRank |
is_online |
флаг что домен продается online |
keywords |
список ключевых слов |
lot_date |
дата выставления на продажу |
lot_hits |
количество просмотров лота |
lot_mtime |
количество просмотров лота |
price_type |
тип цены: "fixed" (фиксированная цена) или "offer" (договорная цена) |
site |
флаг, что с доменом продается сайт |
start_price |
цена |
tm |
флаг, что с доменом продается торговая марка |
yandex_tic |
Яндекс тИц |
Пример запроса:
https://api.reg.ru/api/regru2/shop/get_lot_list
itemsonpage=100
output_content_type=plain
password=test
pg=0
show_my_lots=1
username=test
Пример ответа:
{
"answer" : {
"lots" : [
{
"bids_cnt" : "0",
"category_ids" : "[ 1, 2, 3 ]",
"creation_date" : "2010-11-12",
"dname" : "test-shop-api-1.ru",
"dname_puny" : "test-shop-api-1.ru",
"first_create_domain" : "2010-11-12",
"google_pr" : "0",
"is_online" : "1",
"keywords" : "test, shop, api",
"lot_date" : "2011-12-21 17:40:36",
"lot_hits" : "null",
"lot_mtime" : "2016-04-08 13:55:02",
"price_type" : "fixed",
"site" : "0",
"start_price" : "3000.00",
"tm" : "0",
"yandex_tic" : "0"
}
],
"lots_cnt" : "1"
},
"result" : "success"
}
Возможные ошибки:
13.5. Функция: shop/get_category_list
Доступность:
Назначение:
получение списка категорий
Поля запроса:
стандартные параметры идентификации услуги
Поля ответа:
Поле | Описание |
---|---|
id |
идентификатор категории |
category_name |
название категории на русском |
category_name_en |
название категории на английском |
subcategories |
список подкатегорий, элементы которого содержат: id, category_name, category_name_en |
Пример запроса:
https://api.reg.ru/api/regru2/shop/get_category_list
dname=qqq.ru
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"category_list" : [
{
"category_name" : "Культура и искусство",
"category_name_en" : "Culture and Art",
"subcategories" : [
{
"category_name" : "Видео",
"category_name_en" : "Video",
"id" : "4"
},
{
"category_name" : "Изобразительное искусство",
"category_name_en" : "Fine art",
"id" : "6"
},
{
"category_name" : "Кино",
"category_name_en" : "Cinema",
"id" : "10"
}
]
},
{
"category_name" : "Бизнес",
"category_name_en" : "Business",
"subcategories" : [
{
"category_name" : "Бухгалтерское дело",
"category_name_en" : "Accounting profession",
"id" : "32"
},
{
"category_name" : "Горное дело и бурение",
"category_name_en" : "Mining & Engineering",
"id" : "34"
},
{
"category_name" : "Издательство и полиграфия",
"category_name_en" : "Printing and publishing services",
"id" : "40"
}
]
},
{
"category_name" : "Компьютеры",
"category_name_en" : "Computers",
"subcategories" : [
{
"category_name" : "Безопасность, вирусы, антивирусы",
"category_name_en" : "Security, viruses, antivirus programs",
"id" : "76"
},
{
"category_name" : "Бытовая автоматизация",
"category_name_en" : "Home automation",
"id" : "77"
},
{
"category_name" : "Графика",
"category_name_en" : "Graphics",
"id" : "79"
}
]
}
]
},
"charset" : "utf-8",
"messagestore" : "null",
"result" : "success"
}
Возможные ошибки:
13.6. Функция: shop/get_suggested_tags
Доступность:
Назначение:
получения списка популярных тегов для лота
Поля запроса:
стандартные параметры идентификации услуги и
Параметр | Описание |
---|---|
limit |
количество тегов, необязательный, по умолчанию 10, максимум 50 |
Поля ответа:
Список тегов
Пример запроса:
https://api.reg.ru/api/regru2/shop/get_suggested_tags
limit=25
output_content_type=plain
password=test
username=test
Пример ответа:
{
"answer" : {
"tags" : [
"бизнес",
"интернет",
"авто",
"бренд",
"туризм"
]
},
"charset" : "utf-8",
"messagestore" : "null",
"result" : "success"
}