POST /v1/mail/services/{mailServiceId}/deliverability
Publish this domain's mail records.
Аутентификация
Отправьте ключ API в качестве токена носителя (bearer token). Ключ должен иметь разрешение mail.manage; ключ без него отклоняется с кодом 403, а не 404.
Этот эндпоинт не принимает идентификатор организации. Ваш ключ уже определяет организацию, к которой он принадлежит, и ответ ограничивается ее рамками.
Попробовать
Замените всё в угловых скобках на собственные значения, а плейсхолдер ключа — на ключ из вашей панели управления.
curl -X POST https://api.zinndigital.com/v1/mail/services/{mailServiceId}/deliverability \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ }'Вошли в систему? Консоль API в вашей панели управления автоматически подставляет реальный идентификатор вашей организации и ваш собственный ключ, а также выполняет запрос к работающему API, чтобы вы могли увидеть актуальный ответ. Откройте эту конечную точку в API-консоли
Подробнее
Write the correct SPF, DKIM and DMARC records into the domain's zone. ⛔ Refuses with 422 when the apex MX is somebody else's - that is not a state to confirm past from this screen, because the customer's mail is being delivered today and this button must never be how that stops. When records would be replaced, answers 409 until confirm: true is sent, so a destructive apply is always a deliberate second act (the confirm-gated shape #622 forced on DNS). Requires mail.manage.
Параметры
| Имя | Тип | Обязательно | Что это |
|---|---|---|---|
mailServiceId (path) | Uuid | Да | Email service ID (UUIDv7). |
Тело запроса
| Имя | Тип | Обязательно | Что это |
|---|---|---|---|
confirm | boolean | Нет | Required when needs_confirmation is true. Defaults to false so a destructive apply is never a side effect of clicking "fix". |
Ответ
| Имя | Тип | Обязательно | Что это |
|---|---|---|---|
domain | string | Да | — |
healthy | boolean | Да | All three mechanisms present and ours - nothing to publish. |
spf_ok | boolean | Да | — |
dkim_ok | boolean | Да | — |
dmarc_ok | boolean | Да | — |
fixable | boolean | Да | Whether a one-click apply is offered. False over a foreign apex MX or an unreadable zone - the panel shows the reason instead of a button. |
needs_confirmation | boolean | Да | True when applying would replace published records, so confirm is required. |
existing_apex_mx | string[] | Да | — |
foreign_mx | string[] | Да | Apex MX targets that are not ours - the reason a fix is refused. |
foreign_spf_includes | string[] | Да | — |
would_delete | string[] | Да | Records an apply would remove or replace, as NAME TYPE VALUE. Listed verbatim rather than counted: a customer must not be able to destroy mail records without seeing which ones… |
zone_unreadable | boolean | Да | — |
reason | string | Да | Customer-grade English. Never a driver message. |
warnings | string[] | Да | — |
live_mx | string[] | Да | The domain's MX hosts as PUBLIC DNS answers them right now (W43-09) - not our record of the zone. Empty when the domain publishes no MX, or when it could not be read (see… |
mx_readable | boolean | Да | False when the public MX lookup failed. A failed lookup is never read as "action needed". |
mx_ok | boolean | Да | Every live MX host is one this preset publishes, and there is at least one. |
action_needed | boolean | Да | The customer's OWN DNS must change: we cannot publish to this zone and its live MX does not point where this preset sends mail. The panel then lists required_records with copy… |
required_records | object[] | Да | The exact records to publish, as our preset would write them into a zone we host. |
Ошибки, которые может возвращать этот эндпоинт
401 · 403 · 404 · 409 · 422 · 429