RCS Delivery Receipt (DR) Events
RCS Delivery Receipt (DR) Events provide real-time updates on the status of messages sent via the RCS messaging protocol. These events are essential for tracking the lifecycle of a message, from submission to reading by the recipient.
This section outlines the types of DR events, their significance, and the structure of the payloads returned by the API.
Event Types
Each DR event includes a 'type' field that indicates the current status of the message. The following types are supported:
Type | Description |
---|---|
SENT | Message successfully submitted from Google to the carrier. |
DELIVERED | Message successfully delivered to the recipient's handset. |
READ | Message has been read on the recipient's handset. |
ERROR | Message was undelivered due to an error. |
Sample Payloads
Each DR event payload is a JSON object containing metadata about the message and its delivery status.
SENT Event:
{
"type": "SENT",
"eventId": "c8c3aa5d-1082-45a9-9f88-026c99808674",
"from": "917673908652",
"to": "mmx_traffic",
"sentAt": "2025-06-16T13:46:38.929Z",
"messageId": "4543932d-c8f0-48c4-90bf-f9a00562095f"
}
Note:
The
"to"
parameter is the agent service code.
DELIVERED Event:
{
"type": "DELIVERED",
"eventId": "MxfdhMDmfQQSqKCtBlrIGcIg",
"from": "917673908652",
"to": "mmx_traffic",
"sentAt": "2025-06-16T13:46:41.295Z",
"messageId": "4543932d-c8f0-48c4-90bf-f9a00562095f"
}
READ Event:
{
"type": "READ",
"eventId": "MxZJragNjfT=qY4Yx6mlq5cA",
"from": "917673908652",
"to": "mmx_traffic",
"sentAt": "2025-06-16T13:46:49.193Z",
"messageId": "4543932d-c8f0-48c4-90bf-f9a00562095f"
}
Field Descriptions
The following list contains the field description for delivery receipts:
Field | Type | Description |
---|---|---|
type | String | Status of the message (SENT, DELIVERED, READ, ERROR). |
eventId | String | Unique identifier for the delivery event. |
from | String | Sender's identifier (usually a phone number). Sender is the recipient's mobile number to which messages have been sent. |
to | String | Recipient or service identifier. to is a service code and it can be alphanumeric/numeric/long number/short number/special characters. |
sentAt | String | ISO 8601 timestamp indicating when the event occurred. |
messageId | String | Unique identifier for the message being tracked. |
Message Lifecycle Example
A typical message lifecycle may include the following sequence of events:
- SENT → Message submitted to carrier.
- DELIVERED → Message delivered to recipient's device.
- READ → Message opened/read by recipient.
If delivery fails, an ERROR event may be triggered instead of a DELIVERED event.
Updated about 8 hours ago