Skip to content

Email Logs

The Email Logs page is the dispatch history for every outbound notification — emails, webhooks, and in-app messages. Use it when a customer says "I didn't get the invite email" or "the password reset never arrived."

Layout

  • Header with title, description, and (in development mode) a Send Sample Emails button.
  • Toolbar with channel filter, status filter, search, Clear, count, and a time-range toggle.
  • Table of dispatches.

Toolbar

ControlBehaviour
ChannelAll / Email / Webhook / In-App.
StatusAll / Sent / Pending / Failed / Bounced.
SearchFree text across subject, template slug, recipient IDP ID, channel, status, error message.
ClearResets all filters and the search.
Count"N of M" — filtered vs. total.

Columns

ColumnNotes
ChannelEmail / Webhook / In-App badge.
StatusSent / Pending / Failed / Bounced badge.
TemplateTemplate slug in monospace (e.g. user_invite).
SubjectEmail subject or event description, truncated.
RecipientUser avatar if an IDP ID is available; dash otherwise.
ErrorError message in red if the dispatch failed; dash otherwise.
Sent AtWhen dispatched.
CreatedWhen the log entry was created.

The table loads the most recent 200 records — there is no pagination.

Send Sample Emails

The Send Sample Emails button appears only when mock data is enabled in the deployment — it is intended for development and demo environments, where it triggers a batch of sample notifications so you can verify the templates render correctly.

In production, the button is not visible.

Typical investigations

  • "User didn't receive their invite" — filter Template = user_invite, search the recipient name. If status is Sent, the email went out — check spam folder. If Failed, look at the error.
  • "Webhook delivery failed" — filter Channel = Webhook, Status = Failed. The error column shows what went wrong.
  • "In-app notification missing" — filter Channel = In-App. If absent, the notification was never enqueued.

Notes

  • The table is a flat list with no row-click action; it is purely informational.
  • Sent does not guarantee Delivered. Bounces show up in the Bounced status if the email provider reports them back.
  • Error text is the raw error from the upstream provider. Long errors are truncated; copy-paste from the cell to read the full text.
  • The page does not auto-refresh. Reload to see new entries.