Ресурс domains: ваши домены отправителей и записи DNS, которые нужно прописать у регистратора. Те же записи и та же проверка, что в кабинете на странице «Домены». Домен появляется здесь, когда вы добавляете отправителя на своём домене; через API домены только читаются.
| Поле записи | Значение |
|---|---|
record | dkim, spf, dmarc, fbl, mail (приём почты домена, по желанию). |
type, host, priority | Тип записи (TXT или MX), имя записи относительно домена (@ значит сам домен), приоритет у MX. |
value | Что прописать. Для SPF значение собрано из текущего DNS домена, см. ниже. |
status | ok в порядке, warn работает, но лучше исправить, err нужно исправить, fail DNS домена не ответил (или приём почты ещё не проверен), off не подключено. При fail значение не прописывайте: запросите снова через 5 минут. |
code | Причина статуса: ok в порядке, fail DNS не ответил, off не подключено, missing записи нет, mismatch DKIM не совпадает с ключом, no_include в SPF нет нашего include, plus_all в SPF стоит +all, multiple записей SPF или DMARC больше одной, limit в SPF больше 10 DNS-запросов (значения нет), invalid в DMARC нет верного p=, no_dkim DMARC строже none без рабочего DKIM, none DMARC p=none, foreign MX FBL ведёт не к нам, partial у домена остались другие MX, not_confirmed домен не подтверждён, not_checked ещё не проверено. |
extra | Есть не у всех записей. SPF при ok и limit: число DNS-запросов в записи (больше 10 нельзя). DMARC: значение p из текущей записи. mail: several_accounts, домен указан в нескольких аккаунтах, напишите в поддержку. |
current | Что сейчас в DNS для этой записи. |
GET/mailer/domains.json
Список доменов
Все домены сразу, без проверки DNS. Доменов нет: ответ 204.
curl https://v1.estismail.com/mailer/domains.json \
-H "X-Estis-Auth: ВАШ_КЛЮЧ"<?php
$ch = curl_init('https://v1.estismail.com/mailer/domains.json');
curl_setopt_array($ch, [
CURLOPT_HTTPHEADER => ['X-Estis-Auth: ВАШ_КЛЮЧ'],
CURLOPT_RETURNTRANSFER => true,
]);
$response = curl_exec($ch);
echo curl_getinfo($ch, CURLINFO_HTTP_CODE), "\n", $response;import requests
r = requests.get(
"https://v1.estismail.com/mailer/domains.json",
headers={"X-Estis-Auth": "ВАШ_КЛЮЧ"},
)
print(r.status_code, r.text)const res = await fetch("https://v1.estismail.com/mailer/domains.json", {
headers: { "X-Estis-Auth": "ВАШ_КЛЮЧ" },
});
console.log(res.status, await res.text());Ответ 200
{
"domains": [
{
"id": 194925,
"domain": "shop.example.com"
}
]
}GET/mailer/domains/{id}.json
Записи DNS домена
Записи и их проверка в DNS. Проверка занимает до 10 секунд, результат держится 5 минут: после правки DNS запросите снова через 5 минут. checked_at время проверки.
curl https://v1.estismail.com/mailer/domains/194925.json \
-H "X-Estis-Auth: ВАШ_КЛЮЧ"<?php
$ch = curl_init('https://v1.estismail.com/mailer/domains/194925.json');
curl_setopt_array($ch, [
CURLOPT_HTTPHEADER => ['X-Estis-Auth: ВАШ_КЛЮЧ'],
CURLOPT_RETURNTRANSFER => true,
]);
$response = curl_exec($ch);
echo curl_getinfo($ch, CURLINFO_HTTP_CODE), "\n", $response;import requests
r = requests.get(
"https://v1.estismail.com/mailer/domains/194925.json",
headers={"X-Estis-Auth": "ВАШ_КЛЮЧ"},
)
print(r.status_code, r.text)const res = await fetch("https://v1.estismail.com/mailer/domains/194925.json", {
headers: { "X-Estis-Auth": "ВАШ_КЛЮЧ" },
});
console.log(res.status, await res.text());Ответ 200
{
"id": 194925,
"domain": "shop.example.com",
"checked_at": 1760900000,
"records": [
{
"record": "dkim",
"type": "TXT",
"host": "estismail._domainkey",
"value": "v=DKIM1; k=rsa; p=MIIBIjANBgkqh...IDAQAB",
"status": "ok",
"code": "ok",
"current": [
"v=DKIM1; k=rsa; p=MIIBIjANBgkqh...IDAQAB"
]
},
{
"record": "spf",
"type": "TXT",
"host": "@",
"value": "v=spf1 include:_spf.google.com include:estismail.com ~all",
"status": "err",
"code": "no_include",
"current": [
"v=spf1 include:_spf.google.com ~all"
]
},
{
"record": "dmarc",
"type": "TXT",
"host": "_dmarc",
"value": "v=DMARC1; p=reject;",
"status": "warn",
"code": "none",
"current": [
"v=DMARC1; p=none"
],
"extra": "none"
},
{
"record": "fbl",
"type": "MX",
"host": "estisfbl",
"priority": 10,
"value": "fbl.estisrapid.pro",
"status": "ok",
"code": "ok",
"current": [
"fbl.estisrapid.pro"
]
},
{
"record": "mail",
"type": "MX",
"host": "@",
"priority": 10,
"value": "fbl.estisrapid.pro.",
"status": "off",
"code": "off",
"current": [],
"optional": true
}
],
"monitoring": {
"postmaster_mailru": false
}
}Как прописать у регистратора
- Добавляйте записи в DNS домена у регистратора или хостинга: тип, имя и значение из ответа. Имя
@значит сам домен;estismail._domainkeyу части регистраторов пишется полностью:estismail._domainkey.shop.example.com. - SPF строится из текущего DNS домена. Если у домена уже есть запись SPF, замените её на нашу склеенную (в ней ваши include и наш), а не добавляйте вторую: две записи SPF ломают проверку почты. Если у SPF
status: fail, DNS домена не ответил и значение стандартное, без ваших include: не прописывайте его, запросите снова через 5 минут. - DKIM: значение длинное. Если регистратор не принимает строку длиннее 255 знаков, разбейте её на части в кавычках, как он подсказывает, без пробелов внутри ключа.
- DMARC
p=rejectставьте, когда DKIM уже в порядке: иначе письма без подписи будут отклоняться. - MX FBL (
estisfbl) нужен для жалоб на спам. Записьmailдобавляйте, только если хотите принимать всю почту домена в «Ответы»: прежние ящики домена перестанут получать письма. - Изменения в DNS расходятся от нескольких минут до суток.
Вопросы по API: support@estismail.com