Operator guideENnewslettersend-logs

Email Newsletters / Send Logs

Delivery-log search surface for newsletter sends, with campaign, email, status, and UTC date filters.

Reader view

Clean portal guidance

This page keeps the operator explanation, field and action descriptions, and screenshots visible without exposing repo paths, raw sidecars, or editorial-only implementation details.

Narrative content

Page body

What this page shows

This tab is the read-only delivery-history surface for newsletter sends. Operators use it to confirm whether a campaign reached a contact, failed, bounced, was opened, or is still in another backend delivery state.

How operators use it

  • narrow one log slice by campaign, contact, email, template, status, and UTC date ranges
  • compare recent sends from one campaign against older delivery events on the same route
  • inspect whether the delivery pipeline reached SENT, DELIVERED, OPENED, BOUNCED, FAILED, or another warning-state status
  • review the stored HTML body snippet and bounce reason without reopening the parent campaign editor

Important caveats

  • The log search is read-only on this route.
  • Sent At and Created At filters are both UTC-based ranges, and the To pickers are normalized to end-of-day 23:59:59 before the query is sent.
  • The FE exposes top and bottom pagination plus page-size selection, but no row-level Info, Edit, or retry action is currently rendered.
  • The filter accordion turns its title into Filters (Active) when any draft filter value is populated.
  • Draft filter edits do not re-query the grid until Search applies them.
  • Campaign filter options come from the newsletter config/program list, not from a dedicated send-log campaign endpoint.
Calculation notes

Calculations

calculation

Staged filter apply

Logic
The tab keeps separate draft and applied state for campaign, contact, email, template, status, `Sent At`, and `Created At`., Editing filter widgets does not re-query the grid immediately., `Search` copies the draft values into the applied request state and resets pagination to page `0`.
calculation

Reset clears draft and applied filters

Logic
`Reset` clears all draft filter inputs, both date presets, and all applied query values., `Reset` also resets pagination to page `0`.
calculation

Date preset population

Logic
`SentAt Preset` and `CreatedAt Preset` populate only the draft date values., Manual edits to the related date pickers clear the active preset., Preset changes do not affect the backend query until `Search` is pressed.
calculation

End-of-day normalization

Logic
`Sent At To (UTC)` and `Created At To (UTC)` are normalized to `23:59:59` on the chosen day before they are applied.
calculation

Offset pagination

Logic
`useGetSendLogs` derives `offset` from `pageNo` and `limit` when no explicit offset is provided., Changing rows per page resets the visible page back to `0`.
calculation

Status pill rendering

Logic
Missing or empty status values render as `UNKNOWN` with a warning pill., `SENT` and `DELIVERED` render as success pills., `BOUNCED` and `FAILED` render as error pills., `OPENED` renders as an info pill., Other statuses are uppercased and rendered as warning pills.
calculation

Commented row actions

Logic
The FE file still contains a commented row-action block for edit/info-style navigation., No row-level action buttons are rendered on the current verified surface.
Grid columns

Columns

field

ID

Internal newsletter send-log record identifier.

Visual Type
grid-column
field

Campaign

Program that generated the delivery event.

Visual Type
grid-column
field

Campaign Type

Campaign category returned with the send-log record.

Visual Type
grid-column
field

Contact Name

Recipient display name recorded with the log.

Visual Type
grid-column
field

Language

Locale or language code tied to the delivery record.

Visual Type
grid-column
field

Email

Recipient email address used for the send.

Visual Type
grid-column
field

Template Name

Template used for the delivery record.

Visual Type
grid-column
field

Status

Delivery result or lifecycle state.

Visual Type
badge
Caveats
Missing status values are shown as `UNKNOWN`., `SENT` and `DELIVERED` render as success pills., `BOUNCED` and `FAILED` render as error pills., `OPENED` renders as an info pill., Other values are uppercased and shown as warning pills.
field

Bounced Reason

Backend-provided bounce reason when the message could not be delivered.

Visual Type
grid-column
field

Body HTML

Stored HTML body preview for the sent message.

Visual Type
grid-column
Caveats
The FE truncates the visible value to the first 60 characters and appends `...` when the body is longer.
field

Sent At

Timestamp when the message was sent.

Visual Type
datetime
Caveats
The FE renders this value with the browser locale formatter rather than forcing the label to UTC.
field

Created At

UTC timestamp when the send-log record was created.

Visual Type
datetime
Caveats
The FE renders a tooltip that explicitly states `Time in UTC zone.`
Filter dictionary

Filters

field

Campaign

Narrows logs to one newsletter campaign from the full campaign option list loaded for this tab.

Type
select
Affects
list_results
Caveats
The FE loads campaign options through the newsletter config/program list, not a dedicated send-log campaign endpoint.
field

Contact Name

Narrows logs by recipient display name.

Type
text
Affects
list_results
field

Email

Narrows logs by recipient email.

Type
text
Affects
list_results
field

Template Name

Narrows logs by the resolved template name.

Type
text
Affects
list_results
field

Status

Narrows logs by delivery state such as `SENT`, `FAILED`, or `BOUNCED`.

Type
select
Affects
list_results
field

SentAt Preset

Quickly applies one predefined UTC range for `Sent At`.

Type
preset-select
Affects
list_results
Caveats
Preset ranges include `Today`, `Yesterday`, `Last 7 Days`, `Previous Week`, `Previous Month`, `Current Year`, and `Previous Year`.
field

Sent At From (UTC)

Lower UTC boundary for the sent-at range.

Type
datetime
Affects
list_results
field

Sent At To (UTC)

Upper UTC boundary for the sent-at range.

Type
datetime
Affects
list_results
Caveats
The FE normalizes the chosen date to end-of-day `23:59:59` before sending it to the backend.
field

CreatedAt Preset

Quickly applies one predefined UTC range for `Created At`.

Type
preset-select
Affects
list_results
Caveats
Preset ranges mirror the `SentAt Preset` list.
field

Created At From (UTC)

Lower UTC boundary for the record creation range.

Type
datetime
Affects
list_results
field

Created At To (UTC)

Upper UTC boundary for the record creation range.

Type
datetime
Affects
list_results
Caveats
The FE also normalizes this picker to end-of-day `23:59:59`.
Operational notes

Notes

item

Send-log data is proxied from `nx-newsletter-service` and uses the same core-backed proxy config as the rest of the module.

item

The route is read-only from the operator perspective.

item

`SendLogsView` uses staged draft filters and applies them only when `Search` copies them into the query state.

item

`useGetSendLogs` builds offset pagination from `pageNo` and `limit` before it calls `/api/newsletter/send-logs`.

item

Campaign filter options come from `useGetCampaigns`, which reads the newsletter config/program list rather than a dedicated send-log campaign endpoint.

item

The newsletter-service contract still exposes a detail route, but the current FE keeps the row-level edit or info action commented out.

Related references

Related pages

pageDistribution Lists

Operator documentation for newsletter recipient lists, including detail, rename, contacts inspection, and CSV upload or attach flows.

pageEmail Newsletters

Operator workspace for newsletter campaigns, distribution lists, and send-log review through the backoffice newsletter proxy.

pageEmail Newsletters / Campaigns

Main newsletter program inventory with filters, status badges, active-state checks, and edit navigation.

pageEmail Newsletters / Distribution Lists

Reusable contact-list inventory with CSV preview, upload, create, and add-contacts actions.

pageEmail Newsletters / Program

Full create and edit workflow for one newsletter campaign program, including recipients, templates, notifications, coupons, and delivery settings.

pageActivity Tag Rules

Operator documentation for activity-driven tag automation rules, including list, create, edit, detail inspection, and recent application history.