Skip to navigation

Delivery status

Notification of the delivery status of an outbound message.

The normal flow is SENT → DELIVERED → READ; the status never goes backwards, and FAILED and EXPIRED are terminal (no more events are received after them). Not all messages reach READ: it depends on whether the user has read receipts enabled, and DELIVERED/READ can arrive almost simultaneously.

An RCS send can consist of several cards/pieces; data.message_index indicates which piece the event refers to (0 = first).

Payload

The payload of this webhook request is an object.
originenumOptional

Origin of the message: direct API send (API) or bulk campaign send (CAMPAIGN).

Allowed values:
channelenumOptional

RCS channel of the send, according to the type of the agent/template used.

Allowed values:
message_idstringOptional

The same message_id returned by POST /v1/rcs/messages, except on inbound message events, where it identifies the inbound message itself.

statusenumOptional

Delivery status. It never goes backwards; FAILED and EXPIRED are terminal. READ depends on the user having read receipts enabled; EXPIRED means the message expired (ttl_message) without being delivered.

Allowed values:
occurred_atdatetimeOptional
Moment of the event.
timestampstringOptional

Moment of the event as epoch seconds (string). Redundant with occurred_at; use whichever you prefer.

campaign_idstringOptional

Optional. Only present when origin is CAMPAIGN and the message belongs to a campaign; omitted otherwise.

dataobjectOptional

Event-specific content; its shape depends on the event type.

Response

200
Event received by the client.