Редактировать DNS-запись — API. API Яндекс Почты для домена
Запрос следует отправлять по протоколу HTTPS с помощью метода POST.
POST /api2/admin/dns/edit Host: pddimp.yandex.ru Описание\n
ПДД-токен.
\n "}}">: <ПДД-токен> ... ТипСтрока
Значение
\n
Имя домена.
\n "}}">=<имя домена> &ТипЧисло
Значение
\n
Идентификатор DNS-записи.
\n "}}">=<идентификатор записи> [&ТипСтрока
Значение
\n
Email-адрес администратора домена.
\nПараметр обязателен только для SOA-записи.
\n "}}">=<email-адрес администратора>] [&ТипСтрока
Значение
\n
Содержимое DNS-записи.
\n Для записи типа:
- \n
A — адрес в формате IPv4 (например, «194.84.46.241»).
\n AAAA — адрес в формате IPv6 (например, «2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d»).
\n CNAME, MX или NS — полностью определенное имя домена (FQDN).
\n TXT — текст TXT-записи (например, «v=spf1 redirect=_spf.yandex.ru»).
\n
Число
Значение
\n
Приоритет DNS-записи (чем меньше значение, тем выше приоритет).
\nПараметр обязателен только для SRV или MX-записи.
\nЗначение по умолчанию — 10.
\n "}}">=<приоритет записи>] [&ТипЧисло
Значение
\n
Вес SRV-записи относительно других SRV-записей для того же домена, с тем же приоритетом.
\nСтрока
Значение
\n
TCP или UDP-порт хоста, на котором размещен сервис. Сервисом может быть, например, джаббер.
\nПараметр обязателен только для SRV-записи.
\n "}}">=<порт хоста>] [&ТипСтрока
Значение
\n
Каноническое имя хоста, предоставляющего сервис.
\nПараметр обязателен только для SRV-записи.
\n "}}">=<каноническое имя хоста>] [&Строка
Значение
\n
Имя поддомена. Например, «domain.com» — имя поддомена домена «com», а «my.domain.com» — имя поддомена домена «domain.com».
\nЗначение по умолчанию — «@» (корень домена).
\nПараметр нужно передать, если требуется создать или отредактировать DNS-запись не для домена, а для его поддомена.
\n "}}">=<имя поддомена>] [&ТипЧисло
Значение
\n
Для SOA-записи это время, на которое кешируется значение DNS-записи промежуточными DNS-серверами. Это же время будет использоваться по умолчанию для всех остальных новых записей зоны. Допустимые значения — от 900 и до 1209600. Рекомендуемое значение — 21600.
\n "}}">=<время жизни записи>] [&ТипЧисло
Значение
\n
Частота проверки в секундах вторичными DNS-серверами DNS-записи для этой зоны. Допустимые значения — от 900 и до 86400. Рекомендуемое значение — 10800.
Параметр нужно передать, если редактируется SOA-запись.
\n "}}">=<время между обновлениями>] [&ТипЧисло
Значение
\n
Время в секундах между повторными попытками вторичных DNS-серверов получить записи зоны. Повторные запросы отправляются, если основной сервер не отвечает. Допустимые значения — от 90 и до 3600. Рекомендуемое значение — 900.
\nПараметр нужно передать, если редактируется SOA-запись.
\n "}}">=<время между попытками получить записи>] [&ТипЧисло
Значение
\n
Время в секундах, по истечении которого вторичные DNS-серверы считают записи зоны несуществующими, если основной сервер не отвечает. Допустимые значения — от 90 и до 3600. Рекомендуемое значение — 900.
\nПараметр нужно передать, если редактируется SOA-запись.
\n "}}">=<предельное время>] [&ТипЧисло
Значение
\n
Время в секундах, в течение которого будет кешироваться отрицательный ответ (ERROR = NXDOMAIN) от DNS-сервера. Допустимые значения — от 90 и до 86400. Рекомендуемое значение — 10800.
Параметр нужно передать, если редактируется SOA-запись.
\n "}}">=<время кеширования>]Заголовки:
Название | Описание |
---|---|
PddToken | ПДД-токен. |
Параметры:
Параметр | Тип | Значение |
---|---|---|
domain | Строка | Имя домена. |
record_id | Число | Идентификатор DNS-записи. |
Необязательные | ||
subdomain | Имя поддомена. Например, «domain.com» — имя поддомена домена «com», а «my.domain.com» — имя поддомена домена «domain.com». Значение по умолчанию — «@» (корень домена). Параметр нужно передать, если требуется создать или отредактировать DNS-запись не для домена, а для его поддомена. | |
ttl | Число | Время жизни DNS-записи в секундах. Для SOA-записи это время, на которое кешируется значение DNS-записи промежуточными DNS-серверами. |
refresh | Число | Частота проверки в секундах вторичными DNS-серверами DNS-записи для этой зоны. Допустимые значения — от 900 и до 86400. Рекомендуемое значение — 10800. Параметр нужно передать, если редактируется SOA-запись. |
retry | Число | Время в секундах между повторными попытками вторичных DNS-серверов получить записи зоны. Повторные запросы отправляются, если основной сервер не отвечает. Допустимые значения — от 90 и до 3600. Рекомендуемое значение — 900. Параметр нужно передать, если редактируется SOA-запись. |
expire | Число | Время в секундах, по истечении которого вторичные DNS-серверы считают записи зоны несуществующими, если основной сервер не отвечает. Допустимые значения — от 90 и до 3600. Рекомендуемое значение — 900. Параметр нужно передать, если редактируется SOA-запись. |
neg_cache | Число | Время в секундах, в течение которого будет кешироваться отрицательный ответ (ERROR = NXDOMAIN) от DNS-сервера. Допустимые значения — от 90 и до 86400. Рекомендуемое значение — 10800. Параметр нужно передать, если редактируется SOA-запись. |
admin_mail | Строка | Email-адрес администратора домена. Параметр обязателен только для SOA-записи. |
content | Строка | Содержимое DNS-записи. Для записи типа:
|
priority | Число | Приоритет DNS-записи (чем меньше значение, тем выше приоритет). Параметр обязателен только для SRV или MX-записи. Значение по умолчанию — 10. |
port | Строка | TCP или UDP-порт хоста, на котором размещен сервис. Сервисом может быть, например, джаббер. Параметр обязателен только для SRV-записи. |
weight | Число | Вес SRV-записи относительно других SRV-записей для того же домена, с тем же приоритетом. Параметр обязателен только для SRV-записи. |
target | Строка | Каноническое имя хоста, предоставляющего сервис. Параметр обязателен только для SRV-записи. |
POST /api2/registrar/dns/edit Host: pddimp.yandex.ru Описание\n
ПДД-токен.
\n "}}">: <ПДД-токен> Описание\n
OAuth-токен.
\n "}}">: OAuth <OAuth-токен> ... ТипСтрока
Значение
\n
Имя домена.
\n "}}">=<имя домена> &ТипЧисло
Значение
\n
Идентификатор DNS-записи.
\n "}}">=<идентификатор записи> [&ТипСтрока
Значение
\n
Email-адрес администратора домена.
\nПараметр обязателен только для SOA-записи.
\n "}}">=<email-адрес администратора>] [&ТипСтрока
Значение
\n
Содержимое DNS-записи.
\n Для записи типа:
- \n
A — адрес в формате IPv4 (например, «194.84.46.241»).
\n AAAA — адрес в формате IPv6 (например, «2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d»).
\n CNAME, MX или NS — полностью определенное имя домена (FQDN).
\n TXT — текст TXT-записи (например, «v=spf1 redirect=_spf.yandex.ru»).
\n
Число
Значение
\n
Приоритет DNS-записи (чем меньше значение, тем выше приоритет).
\nПараметр обязателен только для SRV или MX-записи.
\nЗначение по умолчанию — 10.
\n "}}">=<приоритет записи>] [&ТипЧисло
Значение
\n
Вес SRV-записи относительно других SRV-записей для того же домена, с тем же приоритетом.
\nПараметр обязателен только для SRV-записи.
\n "}}">=<вес SRV-записи>] [&ТипСтрока
Значение
\n
TCP или UDP-порт хоста, на котором размещен сервис. Сервисом может быть, например, джаббер.
\nПараметр обязателен только для SRV-записи.
\n "}}">=<порт хоста>] [&ТипСтрока
Значение
\n
Каноническое имя хоста, предоставляющего сервис.
\nПараметр обязателен только для SRV-записи.
\n "}}">=<каноническое имя хоста>] [&ТипСтрока
Значение
\n
Имя поддомена. Например, «domain.com» — имя поддомена домена «com», а «my.domain.com» — имя поддомена домена «domain.com».
\nЗначение по умолчанию — «@» (корень домена).
\nПараметр нужно передать, если требуется создать или отредактировать DNS-запись не для домена, а для его поддомена.
\n "}}">=<имя поддомена>] [&ТипЧисло
Значение
\n
Время жизни DNS-записи в секундах.
\nДля SOA-записи это время, на которое кешируется значение DNS-записи промежуточными DNS-серверами. Это же время будет использоваться по умолчанию для всех остальных новых записей зоны. Допустимые значения — от 900 и до 1209600. Рекомендуемое значение — 21600.
\n "}}">=<время жизни записи>] [&ТипЧисло
Значение
\n
Частота проверки в секундах вторичными DNS-серверами DNS-записи для этой зоны. Допустимые значения — от 900 и до 86400. Рекомендуемое значение — 10800.
\nПараметр нужно передать, если редактируется SOA-запись.
\n "}}">=<время между обновлениями>] [&ТипЧисло
Значение
\n
Время в секундах между повторными попытками вторичных DNS-серверов получить записи зоны. Повторные запросы отправляются, если основной сервер не отвечает. Допустимые значения — от 90 и до 3600. Рекомендуемое значение — 900.
\nПараметр нужно передать, если редактируется SOA-запись.
\n "}}">=<время между попытками получить записи>] [&ТипЧисло
Значение
\n
Время в секундах, по истечении которого вторичные DNS-серверы считают записи зоны несуществующими, если основной сервер не отвечает. Допустимые значения — от 90 и до 3600. Рекомендуемое значение — 900.
\nПараметр нужно передать, если редактируется SOA-запись.
\n "}}">=<предельное время>] [&ТипЧисло
Значение
\n
Время в секундах, в течение которого будет кешироваться отрицательный ответ (ERROR = NXDOMAIN) от DNS-сервера. Допустимые значения — от 90 и до 86400. Рекомендуемое значение — 10800.
\nПараметр нужно передать, если редактируется SOA-запись.
\n "}}">=<время кеширования>]Заголовки:
Название | Описание |
---|---|
PddToken | ПДД-токен. |
Authorization | OAuth-токен. |
Параметры:
Параметр | Тип | Значение |
---|---|---|
Обязательные | ||
domain | Строка | Имя домена. |
record_id | Число | Идентификатор DNS-записи. |
Необязательные | ||
subdomain | Строка | Имя поддомена. Например, «domain.com» — имя поддомена домена «com», а «my.domain.com» — имя поддомена домена «domain.com». Значение по умолчанию — «@» (корень домена). Параметр нужно передать, если требуется создать или отредактировать DNS-запись не для домена, а для его поддомена. |
ttl | Число | Время жизни DNS-записи в секундах. Для SOA-записи это время, на которое кешируется значение DNS-записи промежуточными DNS-серверами. Это же время будет использоваться по умолчанию для всех остальных новых записей зоны. Допустимые значения — от 900 и до 1209600. Рекомендуемое значение — 21600. |
refresh | Число | Частота проверки в секундах вторичными DNS-серверами DNS-записи для этой зоны. Допустимые значения — от 900 и до 86400. Рекомендуемое значение — 10800. Параметр нужно передать, если редактируется SOA-запись. |
retry | Число | Время в секундах между повторными попытками вторичных DNS-серверов получить записи зоны, если основной сервер ничего не вернул. Допустимые значения — от 90 и до 3600. Рекомендуемое значение — 900. Параметр нужно передать, если редактируется SOA-запись. |
expire | Число | Время в секундах, по истечении которого вторичные DNS-сервера считают записи зоны несуществующими, если основной сервер повторно ничего не возвращает. Допустимые значения — от 90 и до 3600. Рекомендуемое значение — 900. Параметр нужно передать, если редактируется SOA-запись. |
neg_cache | Число | Время в секундах, в течении которого будет кешироваться отрицательный ответ (ERROR = NXDOMAIN) от DNS-сервера. Допустимые значения — от 90 и до 86400. Рекомендуемое значение — 10800. Параметр нужно передать, если редактируется SOA-запись. |
admin_mail | Строка | Email-адрес администратора домена. Параметр обязателен только для SOA-записи. |
content | Строка | Содержимое DNS-записи. Для записи типа:
|
priority | Число | Приоритет DNS-записи (чем меньше значение, тем выше приоритет). Параметр обязателен только для SRV или MX-записи. Значение по умолчанию — 10. |
port | Строка | TCP или UDP-порт хоста, на котором размещен сервис. Сервисом может быть, например, джаббер. Параметр обязателен только для SRV-записи. |
weight | Число | Вес SRV-записи относительно других SRV-записей для того же домена, с тем же приоритетом. Параметр обязателен только для SRV-записи. |
target | Строка | Каноническое имя хоста, предоставляющего сервис. Параметр обязателен только для SRV-записи. |
Yandex «Почта для домена» как почтовый шлюз для ваших серверов / Хабр
Каждый раз поднимая новый сервер в облаках, вы получаете случайный IP-адрес. Не все понимают, что IP-адрес может попасть к вам с «историей». Часто приходится тратить время на удаление IP из публичных черных списков. В моём случае в последний раз это была очень неторопливая переписка с mail.ru, которая ни к чему не привела. После этого, создав новый сервер, я задумался: как же сделать так, чтобы не огребать проблем с такими IP-адресами?
Введение
Несмотря на то, что серверы у меня могут быть как постоянные так и «на поиграться», почту на всех них я не обслуживаю, но очень хочу получать сервисные письма от своих скриптов и системных служб.
Очевидное решение — сделать свой «порядочный» почтовый шлюз и все остальные серверы настраивать на пересылку почты через этот шлюз. Минусы такого решения очевидны:
- Отдельный сервер стоит денег, даже если это дешевая VPSка
- IP-адрес надо постоянно отслеживать в черных списках
- Настройка почтового шлюза требует времени, которое зависит от ваших скиллов
Из-за вышеперечисленных причин я пошёл искать другое решение, и, что характерно, нашёл.
Решение
Я обнаружил возможность схалявить, воспользовавшись сервисом «Почта для Домена» от Yandex. На тот момент у меня было поднято 3 сервера и в DNS были следующие А-записи:
Хост | Тип | Значение |
---|---|---|
example.com | A | 123.123.123.120 |
server1.example.com | A | 123.123.123.121 |
server2.example.com | A | 123. 123.123.122 |
server3.example.com | A | 123.123.123.123 |
Я зарегистрировал свой технический домен в «Почте для Домена» и создал аккаунт: [email protected]
. Попробовал отправить письма с одного из своих серверов, используя этот SMTP-аккаунт и получил следующую ошибку:
553 5.7.1 Sender address rejected: not owned by auth user. envelope from address [email protected] not accepted by the server
Yandex не разрешает подставлять какие попало данные в envelope-from
. Но как же быть, если хочется понимать, с какого сервера пришло то или иное письмо, без дополнительных ухищрений?
Чтобы соблюсти правила Yandex’a, нужно выполнить следующие шаги на стороне их сервиса:
Зарегистрировать основной домен и его поддомены в pdd.yandex.ru. Проще всего пройти подтверждение домена через добавление CNAME-записи:
Хост Тип Значение example. com CNAME verification-code server1.example.com CNAME verification-code server2.example.com CNAME verification-code server3.example.com CNAME verification-code Так же для каждого домена создаем MX-запись:
Хост Тип Приоритет Значение example.com MX 10 mx.yandex.ru server1.example.com MX 10 mx.yandex.ru server2.example.com MX 10 mx.yandex.ru server3.example.com MX 10 mx.yandex.ru В настройках основного домена указать поддомены как алиасы этого домена.
Создаём почтовый аккаунт
[email protected]
, если он ещё не создан- Обязательно нужно зайти в аккаунт через веб-интерфейc и активировать его, иначе получите ошибку:
535 5.7.8 Error: authentication failed: Please accept EULA first. https://mail.yandex.ru/for/example.com
Дальше требуется работа на нашей стороне — настраиваем сервера:
- Устанавливаем
msmtp
— миниатюрный SMTP-клиент, который предоставляет свою реализациюsendmail
Настраиваем его:
defaults syslog LOG_MAIL tls_certcheck off tls on auto_from on # server hostname maildomain server1.example.com account default host smtp.yandex.ru port 25 auth on user [email protected] password 123qwe
- Отправляем тестовое письмо с отладкой:
echo -e "test message" | /usr/bin/msmtp --debug -t -i [email protected]
и смотрим результат:
loaded system configuration file /etc/msmtprc ignoring user configuration file /root/. msmtprc: No such file or directory falling back to default account using account default from /etc/msmtprc host = smtp.yandex.ru port = 25 proxy host = (not set) proxy port = 0 timeout = off protocol = smtp domain = localhost auth = choose user = [email protected] password = * ntlmdomain = (not set) tls = on tls_starttls = on tls_trust_file = (not set) tls_crl_file = (not set) tls_fingerprint = (not set) tls_key_file = (not set) tls_cert_file = (not set) tls_certcheck = off tls_min_dh_prime_bits = (not set) tls_priorities = (not set) auto_from = on maildomain = server1.example.com from = [email protected] add_missing_from_header = on add_missing_date_header = on remove_bcc_headers = on dsn_notify = (not set) dsn_return = (not set) logfile = (not set) syslog = LOG_MAIL aliases = (not set) reading recipients from the command line and the mail <-- 220 smtp3h.mail.yandex.net ESMTP (Want to use Yandex.Mail for your domain? Visit http://pdd.yandex.ru) --> EHLO localhost <-- 250-smtp3h. mail.yandex.net <-- 250-8BITMIME <-- 250-PIPELINING <-- 250-SIZE 42991616 <-- 250-STARTTLS <-- 250-AUTH LOGIN PLAIN XOAUTh3 <-- 250-DSN <-- 250 ENHANCEDSTATUSCODES --> STARTTLS <-- 220 Go ahead TLS certificate information: Owner: Common Name: smtp.yandex.ru Organization: Yandex LLC Organizational unit: ITO Locality: Moscow State or Province: Russian Federation Country: RU Issuer: Common Name: Yandex CA Organization: Yandex LLC Organizational unit: Yandex Certification Authority Country: RU Validity: Activation time: Mon 12 Oct 2015 03:41:24 PM MSK Expiration time: Wed 11 Oct 2017 03:41:24 PM MSK Fingerprints: SHA1: B7:0E:62:55:E1:3A:C0:F3:08:12:35:B2:9D:4B:25:D0:B8:C1:C6:39 MD5: BC:15:CE:B6:D4:FF:0D:95:4F:E5:1A:A7:3A:DF:DA:65 --> EHLO localhost <-- 250-smtp3h.mail.yandex.net <-- 250-8BITMIME <-- 250-PIPELINING <-- 250-SIZE 42991616 <-- 250-AUTH LOGIN PLAIN XOAUTh3 <-- 250-DSN <-- 250 ENHANCEDSTATUSCODES --> AUTH PLAIN AhJvb3ARY29uzMlntS5ydQBXYw5VcMMlazk= <-- 235 2. 7.0 Authentication successful. --> MAIL FROM:<[email protected]> --> RCPT TO:<[email protected]> --> DATA <-- 250 2.1.0 <[email protected]> ok <-- 250 2.1.5 <[email protected]> recipient ok <-- 354 Enter mail, end with "." on a line by itself --> From: [email protected] --> Date: Mon, 06 Jun 2016 16:17:00 +0300 --> test message --> . <-- 250 2.0.0 Ok: queued on smtp3h.mail.yandex.net as 1465219021-86hlZkGCpZ-H0J8ORE2 --> QUIT <-- 221 2.0.0 Closing connection.
Отлично, успех! Письмо ушло, правда, найдем мы его в спаме, так как оно почему-то пустое. Давайте проверим более привычным и «человеческим» способом:
echo "test message" | mailx -s 'test subject' [email protected]
Вот, теперь в ящике нормальное письмо. Здорово!
DKIM & SPF
А еще можно для каждого домена прописать записи DKIM и SPF. Если вы, как я, используете свой DNS-хостинг, то просто скопируйте соответствующие значения из “DNS редактора” в интерфейсе Яндекса. Внимание: для каждого домена и алиаса свой ключ!
Хост Тип Значение mail._domainkey.example.com TXT v=DKIM1; k=rsa; t=s; p=MIGf… mail._domainkey.server1.example.com TXT v=DKIM1; k=rsa; t=s; p=MIGf… mail._domainkey.server2.example.com TXT v=DKIM1; k=rsa; t=s; p=MIGf… mail._domainkey.server3.example.com TXT v=DKIM1; k=rsa; t=s; p=MIGf… Отсылаем с сервера письмо и смотрим в заголовки:
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=example.com; s=mail; t=1467009762; bh=Pb6s/Xlf4... Authentication-Results: smtp14.mail.yandex.net; dkim=pass [email protected]
Лепота!
В случае если отправка почты для домена будет происходить только через сервера Яндекс и с заранее известных IP-адресов, то можно смело прописать SPF-записи в соответствии с документацией https://yandex. ru/support/pdd/troubleshooting/dns.xml#step2
Хост Тип Значение example.com TXT v=spf1 redirect=_spf.yandex.net server1.example.com TXT v=spf1 redirect=_spf.yandex.net server2.example.com TXT v=spf1 redirect=_spf.yandex.net server3.example.com TXT v=spf1 redirect=_spf.yandex.net Нюансы
Скорее всего, вы молодцы, и ваше приложение работает не из под root’а. Попытка послать письмо из-под обычного пользователя опять приведёт к знакомой ошибке в логе msmtp:
Jun 6 14:21:24 server1 msmtp: host=smtp.yandex.ru tls=on auth=on [email protected] [email protected] [email protected] smtpstatus=553 smtpmsg='553 5.7.1 Sender address rejected: not owned by auth user.' errormsg='envelope from address user@server1. example.com not accepted by the server' exitcode=EX_DATAERR
Можно решить эту проблему по-разному. Например, можно явно указывать пользователя, отключив опцию
auto_from off
вmsmtp
. Но я уже решил, что меня это не устраивает.Правильное решение — добавить пользователя как алиас для нашего основного адреса:
Если вам требуется локальный SMTP-релей, то данная конфигурация вам тоже подходит. Нужно просто заменить msmtp на postfix или exim, настроенные на использование серверов Яндекса в качестве smart host’a (гуглить можно, например, по ключевым словам exim smarthost).
Резюме
Теперь любой сервер, который я поднимаю для своих задачек, сразу же получает настроенный канал отправки почты. В DNS и pdd.yandex.ru я заранее прописал несколько поддоменов про запас. Так как сервера я разворачиваю через SaltStack, то конфигурацию msmtp мои сервера получают автоматически.
Что я получил в итоге:
- Самое главное — нет заморочек с черными списками и IP-адресами серверов, так как письма уходят через сервера Яндекса
- DKIM/SPF «из коробки» — письма не попадают в спам
- msmtp простой SMTP-клиент, которому даже в памяти сервера висеть не нужно — запускается по необходимости
- msmtp — простейшая настройка в отличие от «взрослых» postfix, exim
- можно не беспокоиться о PTR-записях для ваших IP-адресов с точки зрения почтовой системы.
Надеюсь эта инструкция кому-нибудь пригодится. Буду рад узнать из комментариев, кто и как решает подобную проблему.
Добавить запись DNS — API. Яндекс.Почта для домена API
Этот запрос используется для добавления записи DNS для домена.
- Синтаксис запроса
- Пример запроса
- Структура ответа
Запрос должен быть отправлен по протоколу HTTPS методом POST.
ПОСТ /api2/admin/dns/добавить Хост: pddimp.yandex.ru ОписаниеТокен PDD.
"}}">: <токен PDD> ... ТипСтрока
Значение
Имя домена.
"}}">=<имя домена> & ТипСтрока
Значение
Тип записи DNS.
Возможные значения:
-
SRV
-
TXT
-
NS
-
MX
-
SOA
-
A
-
AAAA
-
CNAME
Строка
Значение
Адрес электронной почты администратора домена.
Этот параметр требуется только для записей SOA.
"}}">=<адрес электронной почты администратора>] [& ТипСтрока
Значение
Содержимое записи DNS.
Для записей типа:-
A — адрес в формате IPv4 (например, «194.84.46.241»).
-
AAAA — адрес в формате IPv6 (например, «2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d»).
-
CNAME, MX или NS — абсолютное доменное имя (FQDN).
-
TXT — текст TXT-записи (например, «v=spf1 redirect=_spf.yandex.ru»).
Целое число
Значение
Приоритет записи DNS (чем меньше значение, тем выше ее приоритет).
Этот параметр требуется только для записей SRV и MX.
Значение по умолчанию — 10.
"}}">=<приоритет записи>] [& ТипЦелое число
Значение
Вес записи SRV по отношению к другим записям SRV для того же домена и с тем же приоритетом.
Этот параметр требуется только для записей SRV.
"}}">=<вес записи SRV>] [&port"}}">=<порт хоста>] [& ТипСтрока
Значение
Каноническое имя хоста, предоставляющего услугу.
Этот параметр требуется только для записей SRV.
"}}">=<каноническое имя хоста>] [& ТипСтрока
Значение
Имя поддомена. Например, «domain.com» — это имя субдомена домена «com», а «my.domain.com» — это субдомен домена «domain.com».
Значение по умолчанию — «@» (корневой домен домена).
Этот параметр следует передавать, если вам нужно создать или изменить DNS-запись для поддомена, а не для домена.
"}}">=<имя поддомена>] [& ТипЦелое число
Значение
Время жизни записи DNS в секундах. Значение по умолчанию — 21600.
"}}">=<срок жизни записи>]Заголовки:
Имя | Описание |
---|---|
PddToken | Токен PDD. |
Параметры:
Параметр | Тип | Значение |
---|---|---|
Обязательное | ||
домен | Строка | Имя домен . |
тип | Строка | Тип записи DNS. Возможные значения:
|
admin_mail | Строка | Адрес электронной почты администратора домена. Этот параметр требуется только для записей SOA. |
content | String | Содержимое записи DNS. Для записей типа:
|
вес | Целое число | Вес записи SRV по отношению к другим записям SRV для того же домена и с тем же приоритетом. Этот параметр требуется только для записей SRV. |
порт | Строка | Порт TCP или UDP хоста, на котором находится служба. Услуга может быть, например, jabber. Этот параметр требуется только для записей SRV. |
цель | Строка | Каноническое имя хоста, предоставляющего услугу. Этот параметр требуется только для записей SRV. |
Дополнительно | ||
субдомен | Строка | Имя субдомена. Например, «domain.com» — это имя субдомена домена «com», а «my.domain.com» — это субдомен домена «domain.com». Значение по умолчанию — «@» (корневой домен домена). Этот параметр следует передавать, если вам нужно создать или изменить DNS-запись для поддомена, а не для домена. |
ttl | Целое число | Время жизни записи DNS в секундах. Значение по умолчанию — 21 600. |
POST /api2/registrar/dns/add Хост: pddimp.yandex.ru ОписаниеТокен PDD.
"}}">: <токен PDD> ОписаниеМаркер доступа OAuth.
"}}">: OAuth <токен OAuth> ... ТипСтрока
Значение
Имя домена.
"}}">=<имя домена> & ТипСтрока
Значение
Тип записи DNS.
Возможные значения:
-
SRV
-
TXT
-
НС
-
MX
-
SOA
-
А
900 06 -
AAAA
-
CNAME
Строка
Значение
Адрес электронной почты администратора домена.
Этот параметр требуется только для записей SOA.
"}}">=<адрес электронной почты администратора>] [& ТипСтрока
Значение
Содержимое записи DNS.
Для записей типа:-
A — адрес в формате IPv4 (например, «194.84.46.241»).
-
AAAA — адрес в формате IPv6 (например, «2001:0db8:11a3:09d7:1f34:8a2e:07a0:765d»).
-
CNAME, MX или NS — абсолютное доменное имя (FQDN).
-
TXT — текст TXT-записи (например, «v=spf1 redirect=_spf.yandex.ru»).
Целое число
Значение
Приоритет записи DNS (чем меньше значение, тем выше ее приоритет).
Этот параметр требуется только для записей SRV и MX.
Значение по умолчанию — 10.
"}}">=<приоритет записи>] [& ТипЦелое число
Значение
Вес записи SRV по отношению к другим записям SRV для того же домена и с тем же приоритетом.
Этот параметр требуется только для записей SRV.
"}}">=<вес записи SRV>] [&port"}}">=<порт хоста>] [& ТипСтрока
Значение
Каноническое имя хоста, предоставляющего услугу.
Этот параметр требуется только для записей SRV.
"}}">=<каноническое имя хоста>] [& ТипСтрока
Значение
Имя поддомена. Например, «domain.com» — это имя субдомена домена «com», а «my.domain.com» — это субдомен домена «domain.com».
Значение по умолчанию — «@» (корневой домен домена).
Этот параметр следует передавать, если вам нужно создать или изменить DNS-запись для поддомена, а не для домена.
"}}">=<имя поддомена>] [& ТипЦелое число
Значение
Время жизни записи DNS в секундах. Значение по умолчанию — 21600.
"}}">=<срок жизни записи>]Заголовки:
Имя | Описание |
---|---|
PddToken | Токен PDD. |
Авторизация | Маркер доступа OAuth. |
Параметры:
Параметр | Тип | Значение |
---|---|---|
Обязательный | ||
домен | Строка | Имя домена. |
тип | Строка | Тип записи DNS. Возможные значения:
|
admin_mail | Строка | 906 97|
content | String | Содержимое записи DNS. Для записей типа:
|
приоритет | Целое число | Приоритет записи DNS (чем меньше значение, тем выше ее приоритет). Этот параметр требуется только для записей SRV и MX. Значение по умолчанию — 10. |
вес | Целое число | Вес записи SRV по отношению к другим записям SRV для того же домена и с тем же приоритетом. Этот параметр требуется только для записей SRV. |
порт | Строка | Порт TCP или UDP хоста, на котором находится служба. Услуга может быть, например, jabber. Этот параметр требуется только для записей SRV. |
цель | Строка | Каноническое имя хоста, предоставляющего услугу. Этот параметр требуется только для записей SRV. |
Дополнительно | ||
субдомен | Строка | Имя субдомена. Например, «domain.com» — это имя субдомена домена «com», а «my.domain.com» — это субдомен домена «domain.com». Значение по умолчанию — «@» (корневой домен домена). Этот параметр следует передавать, если вам нужно создать или изменить DNS-запись для поддомена, а не для домена. |
ttl | Целое число | Время жизни записи DNS в секундах. Значение по умолчанию — 21 600. |
POST /api2/admin/dns/add HTTP/1.1 Хост: pddimp.yandex.ru PddToken: 123456789ABCDEF00000000000000000000000000000000000000 ... domain=domain.com&type=A&subdomain=www&ttl=14400&content=127.0.0.1
- cURL
curl -H 'PddToken: 123456789ABCDEF00000000000000000000000000000000000000' -d 'domain=domain.com&type=A&subdomain=www&ttl=1440 0&content=127.0.0.1' 'https://pddimp.yandex.ru/api2/admin/dns/ add'soa
POST /api2/admin/dns/добавить HTTP/1.1 Хост: pddimp.yandex.ru PddToken: 123456789ABCDEF00000000000000000000000000000000000000 Авторизация: OAuth 00123456789ABCDEF000000000000000000000000000000000000 ... domain=domain.com&type=A&subdomain=www&ttl=14400&content=127.0.0.1
- cURL
curl -H 'PddToken: 123456789ABCDEF00000000000000000000000000000000000000' -H 'Авторизация: OAuth 00123456789ABCDEF0 0000000000000000000000000000000000' -d 'domain=domain. com&type=A&subdomain=www&ttl=14400&content=127.0.0.1' 'https://pddimp.yandex.ru ru/api2/admin/dns/add'soa
{ " Тип значенияСтрока
Описание
Имя домена.
"}}">": "{имя домена}", Тип значенияОбъект
Описание
Информация о записи DNS.
"}}">": { " Тип значенияЦелое число
Описание
Идентификатор записи DNS.
"}}">": "{ID записи}", " Тип значенияСтрока
Описание
Тип записи DNS.
Возможные значения:
-
SRV
-
TXT
-
NS
-
MX
9 0006 -
SOA
-
А
-
AAAA
9004 2
ЗАПИСЬ
Строка
Описание
Имя домена.
"}}">": "{имя домена}", Тип значенияСтрока
Описание
Имя поддомена. Например, «my.domain.com» — это имя субдомена домена «domain.com». Вы можете использовать «мой» вместо «мой.домен.com».
"}}">": "{имя субдомена}", " Тип значенияСтрока
Описание
Абсолютное доменное имя (FQDN).
"}}">": "{абсолютное доменное имя}", " Тип значенияСтрока
Описание
Содержимое записи DNS.
"}}">": "{содержимое записи}", " Тип значенияЦелое число
Описание
Время жизни записи DNS, в секундах.
"}}">": "{срок жизни записи}", " Тип значенияЦелое число
Описание
Приоритет записи DNS. Существует для записей MX и SRV. Для всех остальных записей DNS возвращается пустая строка.
"}}">": "{ приоритет записи}" }, Тип значенияСтрока
Описание
Статус выполнения запроса.
Возможные значения: "}}">": "{статус выполнения запроса}" }{ " Тип значенияСтрока
Описание
Имя домена.
"}}">": "{имя домена}", " Тип значенияСтрока
Описание
Статус выполнения запроса.
Возможные значения: "}}">": "{статус выполнения запроса}", " Тип значенияСтрока
Описание
Код ошибки.
Включается в ответ, если запрос привел к ошибке.
Возможные значения:
- 900 42
-
bad_domain
— доменное имя не указано или не соответствует RFC. -
запрещено
— Запрещенное доменное имя. -
bad_token
(bad_login
,bad_passwd
) — был передан недопустимый токен PDD (или имя пользователя/пароль). -
no_auth
— заголовокPddToken
был опущен. -
not_allowed
— Эта операция не разрешена для данного пользователя (пользователь не является администратором домена). -
заблокирован
— Заблокированный домен (например, из-за спама и так далее).
неизвестно
— Временный сбой или API произошла ошибка (повторите запрос позже).0045 ) — пропущен обязательный параметр. -
занято
— Доменное имя используется другим пользователем. -
domain_limit_reached
— Превышено допустимое количество подключенных доменов (50). -
no_reply
— Яндекс.Почта для домена не может подключиться к серверу-источнику для импорта.
Была ли статья полезной?
Добавить почтовый ящик — API. Yandex.Mail for Domain API
Этот запрос используется для добавления почтового ящика для домена.
- Синтаксис запроса
- Пример запроса
- Структура ответа
Запрос должен быть отправлен по протоколу HTTPS методом POST.
ПУБЛИКАЦИЯ /api2/admin/email/добавить Хост: pddimp.yandex.ru ОписаниеТокен PDD.
"}}">: <токен PDD> ... ТипСтрока
Значение
Имя домена.
"}}">=<имя домена> & ТипСтрока
Значение
Электронный адрес почтового ящика в формате «username@domain. ru» или «username».
"}}">=<имя пользователя почтового ящика> & Тип 9", "&", "*", "(", ")", "_", "-", "+", ":", ";", ", ".""}}">=<пароль> отличаться от имени пользователя.
Заголовки:
Имя | Описание 9020 7 |
---|---|
PddToken | Токен PDD. |
Параметры:
Параметр | Тип | Значение |
---|---|---|
Обязательный | ||
домен | Строка | Имя домена. |
логин | String | Электронный адрес почтового ящика в формате «username@domain. ru» или «username». |
пароль | Строка | Пароль пользователя. 9″, «&», «*», «(«, «)», «_», «-«, «+», «:», «;», «, «.» отличаться от имени пользователя. |
POST /api2/registrar/email/добавить Хост: pddimp.yandex.ru ОписаниеТокен PDD.
"}}">: <токен PDD> ОписаниеМаркер доступа OAuth.
"}}">: OAuth <токен OAuth> ... ТипСтрока
Значение
Имя домена.
"}}">=<имя домена> & ТипСтрока
Значение
Электронный адрес почтового ящика в формате «[email protected]» или «username».
"}}">=<имя пользователя почтового ящика> & ТипСтрока
Значение
Пароль пользователя. », « &», «*», «(», «)», «_», «-», «+», «:», «;», «, «.»
отличаться от имени пользователя.
Заголовки:
Имя | Описание 9020 7 |
---|---|
PddToken | Токен PDD. |
Авторизация | Маркер доступа OAuth. |
Параметры:
Параметр | Тип | Значение |
---|---|---|
Обязательный | ||
домен | Строка | Имя домена. |
логин | String | Электронный адрес почтового ящика в формате «[email protected]» или «username». |
пароль | строка | 9″, «&», «*», «(«, «)», «_», «-«, «+», «:», «;», «, «.» отличаться от имени пользователя. |
POST /api2/admin/email/добавить HTTP/1.1 Хост: pddimp.yandex.ru PddToken: 123456789ABCDEF00000000000000000000000000000000000000 ... домен = домен. d 'domain=domain.com&login=newlogin&password=1234567890' 'https://pddimp.yandex.ru/api2/admin/email/add'
POST /api2/admin/email/add HTTP/1.1 Хост: pddimp.yandex.ru PddToken: 123456789ABCDEF00000000000000000000000000000000000000 Авторизация: OAuth 00123456789ABCDEF000000000000000000000000000000000000 . .. домен = домен. H 'Авторизация: OAuth 00123456789ABCDEF000000000000000000000000000000000000' -d 'domain=domain.com&login=newlogin&password=1234567890' 'https://pddimp.yandex.ru/api2/admin/email/add'
{ " Тип значенияСтрока
Описание
Имя домена.
"}}">": "{имя домена}", " Тип значенияСтрока
Описание
Адрес электронной почты почтового ящика.
"}}">":"{адрес электронной почты почтового ящика}", " Тип значенияЦелое число
Описание
Идентификатор почтового ящика.
"}}">": "{ID почтового ящика}", " Тип значенияСтрока
Описание
Статус выполнения запроса.
Возможные значения: "}}">": "{статус выполнения запроса}" }
{ " Тип значенияСтрока
Описание
Имя домена.
"}}">": "{имя домена}", " Тип значенияСтрока
Описание
Статус выполнения запроса.
Возможные значения: "}}">": "{статус выполнения запроса}", " Тип значенияСтрока
Описание
Код ошибки.
Включается в ответ, если запрос привел к ошибке.
Возможные значения:
- 900 42
-
bad_domain
— доменное имя не указано или не соответствует RFC. -
запрещено
— Запрещенное доменное имя. -
bad_token
(bad_login
,bad_passwd
) — был передан недопустимый токен PDD (или имя пользователя/пароль). -
no_auth
— заголовокPddToken
был опущен. -
not_allowed
— Эта операция не разрешена для данного пользователя (пользователь не является администратором домена).
неизвестно
— Временный сбой или API произошла ошибка (повторите запрос позже).0044 no_ip ) — пропущен обязательный параметр.