Message logs
Message logs provide visibility into individual sent and received messages across all communication channels and platform services. Use them to track delivery status, investigate failures, and audit specific messages. Coverage matches Detailed reports; both tools draw from the same data source.
Access and availability
Message logs require the Analyze Manager role. See Manage roles for role management. With this role, you can view data for your account and related sub-accounts. If you log in as a sub-account, you see only your own account data. For retention and full data availability details, see Reporting overview.
If you run into access or data issues with Message logs, check the following:
- Cannot access Message logs: Verify you have the Analyze Manager role. If your role is correct but access is still unavailable, contact your account manager.
- No results returned: Your filters may be too narrow. Try widening the date range or removing filters one at a time.
- Export is missing expected fields: The Logs export includes a subset of available fields. For the full set, use Detailed reports.
Access methods
Message logs are available through two access methods with different capabilities:
| Logs | API endpoints | |
|---|---|---|
| Access | Analyze > Logs | Channel-specific GET endpoints |
| Retention | 3 months | Last 48 hours |
| Record limit | Export all visible entries | 1,000 per request |
| Channels | All channels in one view | Per-channel endpoints; not available for all channels |
| Filters | Full filter set | Limited to endpoint parameters |
| Features | Search, export | Cursor-based pagination |
Not sure whether to use Logs or another tool? See Which tool do I need.
Logs
Track the status of individual messages across all channels in the web interface. Each row shows one message with its delivery status, timestamps, sender/recipient, error codes, and metadata.
To get started:
- In the web interface, go to Analyze > Logs.
- Use the search bar to find messages by message ID, email subject, sender name, destination, or data payload. Use Available filters to narrow results further.
- Select a row to expand the full message details.
- Select Export to download the visible entries. The export includes a subset of available fields. For the full set of fields, use Detailed reports.
For delivery status definitions and error code details, see Response status and error codes.
Available filters [#filters-logs]
Use the Filters panel to narrow results. Filters can be combined.
| Filter | Description |
|---|---|
| Find messages only with exact match | When enabled, returns only messages that exactly match the search bar text |
| Date | Custom date range selection |
| Status | Delivered, Pending, Rejected, Undeliverable, Expired |
| Accounts | Specific account in your account hierarchy |
| Users | User who sent the message |
| Channels | Inbound or outbound, specific channels |
| To | Recipient address or number |
| From | Sender ID or number |
| Communication | Campaign or communication name |
| Countries | Destination country |
| Networks | Destination mobile network operator |
| SIP trunks | Specific SIP trunk (Voice and Video only) |
| Message ID | Specific message lookup by ID |
| Application IDs | Multitenant application identifier |
| Entity IDs | Multitenant entity identifier |
Data payload [#data-payload]
Attach custom metadata to messages for identifying, tracking, or analyzing specific sends.
- Web interface: Define attributes in Customer Profiles > Configuration > Person custom attributes, then select one in the Data payload field when sending a message.
- API: Set the
callbackDataparameter to a string value. The maximum length depends on the channel. Most messaging channels allow 4,000 characters. Some allow less: 700 characters for Voice advanced text-to-speech, and 200 characters for Voice IVR and Mobile App Messaging. For the exact limit, check the send-message endpoint in the API reference for your channel.
When the value is a JSON object, each key appears as a separate column in the export. Data payload is available in Message logs, Detailed reports, and webhook delivery reports, where it is returned as callbackData. It is not available in aggregated tools (Metrics API, Dashboards, Delivery and traffic performance report).
API endpoints [#api-endpoints]
Query message logs programmatically using channel-specific GET endpoints.
- Retention: Last 48 hours
- Records per request: 1,000 maximum (default: 50)
- Pagination: Cursor-based; set
useCursor: true - Rate limiting: Applies per channel
The following channels have a dedicated logs endpoint:
Webhooks
Receive per-message delivery events in real time rather than querying logs after the fact.
Detailed reports
Export the full set of per-message fields in bulk, with up to 3 months of data.
Column reference
Definitions for all fields available in message logs and detailed reports.