POST /v1/mail/services
Set email up on a domain.
Аутентификация
Отправьте ключ API в качестве токена носителя (bearer token). Ключ должен иметь разрешение mail.manage; ключ без него отклоняется с кодом 403, а не 404.
Идентификатор вашей организации
Этот эндпоинт принимает org_id в качестве поля в теле JSON.
Идентификатор вашей организации находится на экране ключей API в вашей панели управления, рядом с самим ключом. Это один и тот же идентификатор для каждого вашего запроса.
Попробовать
Замените всё в угловых скобках на собственные значения, а плейсхолдер ключа — на ключ из вашей панели управления.
curl -X POST https://api.zinndigital.com/v1/mail/services \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "fqdn": <string> }'Вошли в систему? Консоль API в вашей панели управления автоматически подставляет реальный идентификатор вашей организации и ваш собственный ключ, а также выполняет запрос к работающему API, чтобы вы могли увидеть актуальный ответ. Откройте эту конечную точку в API-консоли
Подробнее
Registers the email service and requests its provisioning. Returns 201 with the service pending: creating the backend account and publishing the mail DNS is a durable Temporal workflow (CLAUDE.md §2.9), so poll status or subscribe to mail.provisioned / mail.provisioning_failed. ⛔ Provisioning refuses to overwrite existing mail. If the domain's apex already carries a foreign MX, or its zone cannot be read at all, the service ends failed rather than replacing records that are delivering someone's live email. That refusal is not retried — it is a decision about the customer's own domain. Requires mail.manage. Fails 409 when the domain already has an email service, and 422 when the plan does not include mailboxes.
Тело запроса
| Имя | Тип | Обязательно | Что это |
|---|---|---|---|
org_id | Uuid | Нет | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
fqdn | string | Да | The domain to set email up on. |
domain_id | Uuid | null | Нет | — |
provider | MailProvider | Нет | Who runs the mailboxes for this domain. Defaults to zinn — our own email. google_workspace and microsoft_365 publish that provider's own MX, SPF, DKIM and autodiscover… |
provider_config | MailProviderConfig | null | Нет | The custom provider's values. Required in effect for custom; ignored otherwise. |
Ответ
| Имя | Тип | Обязательно | Что это |
|---|---|---|---|
id | Uuid | Да | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
fqdn | string | Да | The domain the mailboxes are on. |
provider_config | MailProviderConfig | null | Нет | The custom provider's declared values, served back so the domain screen can show and edit what was declared. null on every other provider, whose values are documented and… |
site | MailServiceSite | null | Нет | The site currently serving this domain, or null when no site does. Derived from the hostname, never stored: mail attaches to a domain and a domain outlives the site on it,… |
mailbox_provisioning | MailboxProvisioning | Да | Whether we pre-create a starter mailbox on this domain. managed — we make one when the domain is provisioned (the Footprint-Free/PBN line and our own fleet); self_service… |
mail_only | boolean | Да | This domain uses us for mail and nothing else — an active mail service on a hostname no website of ours serves. Published as one server-side answer because more than one… |
domain_id | Uuid | null | Нет | The registered domain this serves, when we hold the registration. |
status | MailServiceStatus | Да | A mail service's lifecycle state. |
provider | MailProvider | Да | Which provider serves a domain's mail. custom is the reseller's own provider (W40-MAIL, owner ruling 2026-09-06): a white-label reseller sells mail they buy elsewhere,… |
mailbox_quota_mb | integer | Да | Size of each mailbox in MB, captured when the service was created. |
mailbox_limit | integer | Да | Mailboxes allowed on this domain; -1 is uncapped. Captured when the service was created; a later downgrade is enforced against the live plan as well, so the number actually… |
mailboxes_used | integer | Да | How many mailboxes currently consume the allowance. |
dns_applied_at | object | Нет | When the mail DNS was last published. null means never — mailboxes that exist but receive nothing, which is the one state a customer must be told about. |
created_at | string | Да | — |
Ошибки, которые может возвращать этот эндпоинт
401 · 403 · 409 · 422 · 429