Receiving Messages and Events

Receiving Inbound RCS Messages & Events

Naxai reports everything that happens on the recipient's side of an RCS conversation — messages, suggestion taps, typing, read receipts, subscribe/unsubscribe actions, and delivery status — as webhook events.

📘

New to webhooks? See Webhooks for how to create an endpoint, choose an authentication method, and subscribe to events.

Every event shares the same envelope:

FieldDescription
eventIdUnique identifier of the webhook event
eventNameThe event name, see the table below
eventTimestampWhen the event was generated, unix time
eventWebhookIdIdentifier of the webhook that delivered the event
eventDataThe event-specific payload, detailed below

Events

EventFires when
rcs.incoming.v1A recipient sends a message, file, or location to your Agent
rcs.actions.v1A recipient taps a suggested reply or action
rcs.subscribe.v1A recipient subscribes to your Agent
rcs.unsubscribe.v1A recipient unsubscribes from your Agent
rcs.typing.v1A recipient is typing a reply
rcs.read.v1A recipient reads a message you sent
rcs.status.v1The delivery status of a message you sent changes (delivered, failed, fallback to SMS, and so on)

rcs.incoming.v1

FieldDescription
agentIdThe Agent that received the message
messageIdUnique identifier of the incoming message
fromThe recipient's phone number
messageTypetext, file, or location
textThe message content — present when messageType is text
userFile.payload.mimeType / .fileSizeBytes / .fileUri / .fileNameThe file that was sent — present when messageType is file
location.latitude / location.longitudeThe location that was shared — present when messageType is location
receivedAtWhen the message was received, milliseconds since epoch

rcs.actions.v1

Fired when a recipient taps a suggested reply or action from a message you sent.

FieldDescription
agentIdThe Agent concerned
messageIdThe message that contained the suggestion
toThe recipient's phone number
textThe visible text of the suggestion that was tapped, can be empty
postbackDataThe postback data you set when sending that suggestion, can be empty
responseTypereply or action
receivedAtWhen the response was received, milliseconds since epoch

rcs.subscribe.v1 and rcs.unsubscribe.v1

Fired when a recipient subscribes to or unsubscribes from your Agent. See RCS Suppressions & Opt-outs.

FieldDescription
agentIdThe Agent concerned
messageIdThe message associated with the event
toThe recipient's phone number
receivedAtWhen the event was received, milliseconds since epoch

rcs.typing.v1

FieldDescription
agentIdThe Agent concerned
messageIdThe message the recipient is replying to
fromThe recipient's phone number
typingAtWhen the recipient started typing, milliseconds since epoch

rcs.read.v1

FieldDescription
agentIdThe Agent concerned
messageIdThe message that was read
toThe recipient's phone number
readAtWhen the message was read, milliseconds since epoch

rcs.status.v1

Reports the delivery status of a message you sent — for example, delivered, failed, or fell back to SMS.

FieldDescription
agentIdThe Agent concerned
messageIdThe message concerned
toThe recipient's phone number
mcc / mncMobile country code and mobile network code of the destination
statusThe status category, for example delivered
statusCodeThe status code, for example 200
statusReasonThe status reason string, for example 200-delivered
statusTimeWhen the status was recorded, milliseconds since epoch

See RCS Status & Error Codes for the full list of possible values.

What's next


Did this page help you?