SMS log
The SMS log — the Messages page in the Bird dashboard — is your workspace's record of every message it has sent and received: every send made through POST /v1/sms/messages lands here, newest first, alongside inbound messages. Use it to confirm a message went out, see where it is in the delivery lifecycle, and read its segment count, cost, and carrier detail. It is the per-message companion to the aggregate Metrics page — Metrics tells you the rates across everything you send, the SMS log lets you drill into a single message. For a tour of where this page sits in the dashboard, see the dashboard tour.

The message list
Each row is one message. The columns are:
| Column | What it shows |
|---|---|
| Status | The message's current delivery status (see Statuses below), shown as a color-coded indicator |
| From | The sender — the number, sender ID, or short code the message was sent from |
| To | The recipient's number |
| Message | The start of the message body (click it, or anywhere on the row, to open the message) |
| Category | The message category, shown as a short badge (TXN, MKTG, AUTH, SVC) |
| Sent | When the send was accepted, as a relative time (hover for the exact timestamp) |
The list is paginated, 25 messages per page; use Prev and Next to move between pages.
Searching and filtering
A message log fills up fast, so the page leads with a recipient search and four filters. They combine — a status filter plus a date range narrows to messages matching both.
Search by recipient. The search box matches an exact recipient number in E.164 format — type the full number you sent to (e.g. +15551234567) to find every message addressed to it. It is an exact match, not a substring search.
Status. Filter to one or more delivery statuses — status is multi-select, so you can, say, show everything that didn't arrive by selecting Undelivered, Failed, and Expired together. The options are the statuses listed below.
Category. Filter by message category: Transactional, Marketing, Authentication, or Service.
Direction. Filter by Outbound (messages you sent) or Inbound (messages received from a subscriber).
Date. Filter by when the message was sent — pick a preset or choose a custom range from the calendar.
When a filter combination matches nothing, the page shows a no-results state with a Clear filters action to reset back to the full list.
Statuses
A message's status is where it currently sits in the delivery lifecycle. Outbound messages walk from accepted toward a terminal receipt; inbound messages arrive as received.
| Status | Meaning |
|---|---|
| Scheduled | Queued to send at a future time |
| Accepted | Bird admitted the message and is preparing to hand it to a carrier |
| Sent | Handed to the carrier; awaiting a delivery receipt |
| Delivered | The carrier confirmed delivery to the handset |
| Undelivered | A non-permanent non-delivery — the handset was off, unreachable, or the content was blocked |
| Failed | A permanent failure; the message will not be delivered |
| Rejected | Bird refused the message before it reached a carrier (a validation or policy rejection) |
| Canceled | A scheduled message that was canceled before it sent |
| Expired | The message's validity window elapsed before a terminal receipt arrived |
| Received | An inbound message from a subscriber |
The indicator is color-coded: green for delivered and received, blue for in-flight (Accepted, Sent, Scheduled), a warning color for Undelivered and Expired, and a destructive color for Failed, Rejected, and Canceled.
Inspecting a message
Click any row to open the message in a side panel. It has two tabs — Events and Details — and its header shows the message body, the current status, the recipient, and the category. While a message is still in flight, the panel refreshes itself every few seconds, so a status change or a delivery receipt appears without a manual reload.

Events
The default tab is a timeline of everything that happened to the message, in order, each with its timestamp. This is the same event stream described in the SMS events reference, rendered for one message: Accepted → Sent → Delivered, or a failure event (Undelivered, Failed, Rejected, Expired). Delivery events show the carrier and MCC/MNC (the mobile network) they were confirmed on; failure events carry their error description and code inline, so a failed message tells you why on its own timeline.
Details
The Details tab is the message's metadata:
- Message ID, Direction, From, To, and Category
- Segments — the billable segment count, the encoding (GSM_7BIT or UCS2), and the character count (see segments and encoding)
- Cost — the amount and currency, once the message has been priced
- Carrier and MCC/MNC — the delivering network, when known
- Validity period — the window the message stays valid for delivery, in seconds
- Sent, Handed to carrier, and Delivered timestamps
- Error — the description and code, on a message that didn't arrive
- Any Tags and Metadata you set on the send
Most fields can be copied with one click.
Next steps
- Tracking & metrics — aggregate delivery, failure, segment, and spend numbers across everything you send
- SMS events reference — the full event vocabulary the timeline is built from
- Sending SMS — the send payload, including categories, tags, and metadata