swepayError Catalog

Native Email

Domain Already Registered 409

The sending domain is already registered for this tenant.

type https://errors.swepay.com.br/native-mail/domain-already-registered

What this means

A request to register a sending domain was rejected because that domain is already registered for the tenant. This is a uniqueness conflict on the (tenant, domain) pair — the request body itself is valid; it conflicts with the current state.

Conflicts are about state, not input shape. Re-sending the same registration will keep returning 409 until the existing domain is removed.

Common causes

  • The domain was already registered by a previous request.
  • A concurrent request registered the same domain first.
  • A retry re-sent a registration that had already succeeded.

How to resolve

  1. List your registered domains via GET /v1/domains.
  2. If the domain already exists, reuse it (check its verification status) instead of registering it again.
  3. To re-register from scratch, remove it first via DELETE /v1/domains/{domain}, then POST /v1/domains.

Example response

HTTP 409 · application/problem+json
{
  "type": "https://errors.swepay.com.br/native-mail/domain-already-registered",
  "title": "Domain Already Registered",
  "status": 409,
  "detail": "Domain 'mail.empresa.com.br' is already registered for tenant 'acme'.",
  "instance": "/v1/domains",
  "code": "DOMAIN_ALREADY_REGISTERED",
  "recovery": "Use the existing domain or remove it before registering it again.",
  "requestId": "1-67a8c3f1-2b9e4d6a8c1f0e3b"
}

References

Machine-readable: /native-mail/domain-already-registered.json