# `PostHog.Emails.Status`
[🔗](https://github.com/posthog/posthog-elixir/blob/v2.20.0/lib/posthog/emails/results.ex#L36)

What happened to an email that `PostHog.Emails.send/2` queued.

## Fields

- `:id` - the message ID that `send/2` returned.
- `:status` - one of `"queued"`, `"sent"`, `"failed"`, `"delivered"`, `"bounced"` or
  `"complained"`. Later versions of PostHog can return values this list does not have yet.
  - `"queued"`: the email waits to go out.
  - `"sent"`: PostHog handed the email to the email provider.
  - `"failed"`: the email was not sent, and `:reason` says why.
  - `"delivered"`: the recipient's mail server accepted the email.
  - `"bounced"` and `"complained"`: the recipient's mail provider reported them after delivery.
- `:created_at` - when PostHog queued the email.
- `:status_at` - when the email reached its current status.
- `:reason` - why a failed email was not sent, such as `"provider_error"` or
  `"recipient_suppressed"`, or the bounce type of a bounced email: `"hard"`, `"soft"` or
  `"unknown"`. `nil` otherwise.

# `t`

```elixir
@type t() :: %PostHog.Emails.Status{
  created_at: DateTime.t(),
  id: String.t(),
  reason: String.t() | nil,
  status: String.t(),
  status_at: DateTime.t()
}
```

The status of a queued email.

---

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