# `PhoenixKit.Modules.Emails.Status`
[🔗](https://github.com/BeamLabEU/phoenix_kit_emails/blob/0.4.2/lib/phoenix_kit/modules/emails/status.ex#L1)

One snapshot of what the email system is actually doing right now.

Exists because every failure mode in this package is silent by design: the
interceptor swallows its own errors so a logging problem can never break a
send. That is the right trade — but it means an operator looking at "Email
system: enabled" has no way to tell it apart from "enabled and recording
nothing". `summary/0` answers the questions the settings page should not have
to guess at:

  * is the system on;
  * *is anything being logged*, and if not, why;
  * which mailer the messages actually leave through;
  * is the queue on, and can it even run (the `:emails` Oban queue lives in
    the host application's config — a package cannot add it);
  * what has happened today.

# `t`

```elixir
@type t() :: %{
  system_enabled: boolean(),
  logging: :active | :system_disabled | :sender_invalid,
  sender: %{email: String.t(), loggable?: boolean()},
  transport: %{
    kind: :integration | :static,
    name: String.t() | nil,
    adapter: String.t()
  },
  queue: map(),
  save_body: boolean(),
  sampling_rate: integer(),
  today: %{
    logged: integer(),
    sent: integer(),
    failed: integer(),
    queued: integer()
  }
}
```

# `summary`

```elixir
@spec summary() :: t()
```

Everything the settings page needs, in one read.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
