# mail_relay_missing

The organization has no email relay, so the message cannot be sent (409 or 503).

## Meaning

The organization has neither its own relay (`mail.organizations`) nor the
deployment's (`mail.smtp`). The admin API answers `409` when creating a user with
`invite`, resending an invitation or sending a password-reset link; the hosted UI's
emailed second factor answers `503` when it would send a code.

## Impact

Nothing was sent, and for an invited user nothing was stored. Administrators cannot
invite users and users cannot get emailed codes in this organization. It is a
configuration gap, not a transient fault.

## Diagnosis

1. The admin refusal is recorded on its action (`user.invitation.sent`,
   `user.created` or `user.password_reset.sent`) with reason `conflict` and cause
   `mail_relay_missing`.
2. The dashboard's email page and `GET /v1/admin/orgs/{slug}/mail` show which relay,
   if any, the organization uses.

## Mitigation

- As an administrator: create the user with a password instead, or ask the operator
  for a relay.
- As an operator: configure `mail.smtp` for the deployment, or a relay for the
  organization under `mail.organizations`, and restart. See
  [Email](https://www.nauthera.io/docs/v1/email#relays).

## Escalation

Escalate when a relay is configured and the organization is still reported without
one. Open an issue with the request id, the `GET …/mail` answer and the server
version. Never attach SMTP credentials.

---

[Problem code runbooks](https://www.nauthera.io/docs/v1/runbooks/problems) · Generated from [`internal/runbook/problems.yaml`](https://github.com/nauthera/nauthera-server/blob/main/internal/runbook/problems.yaml) in nauthera-server.
