RCS Mobile Originated (MO) Callback Events

RCS Mobile Originated (MO) Callback Events refer to messages or actions initiated by the end user from their device and sent to the customer callback URL. These events represent incoming messages or user interactions that originate from the user's handset.

Field Descriptions

The following list describes the callback payload:

FieldTypeDescriptionExample
typestringType of event (e.g., USER_MESSAGE, SUBSCRIBE, UNSUBSCRIBE).SUBSCRIBE
eventIdstringUnique identifier for the event.Mx0g83M74OQgSXGK60iZM7Hg
fromstringSender's identifier (usually a phone number).19XXXXXXXX7
tostringRecipient or service identifier.kio_rcs
sentAtstringISO 8601 timestamp indicating when the event occurred.2026-04-20T08:58:17.240Z
messageIdstringUnique identifier for the message.6a25ff08-42e4-4f07-984a-4dXXXXXc7709
carrierIdStringIdentifier of the carrier/network operator.VZ

MO messages with predefined Keyword

End users can send RCS MO messages containing predefined keywords as text to request specific actions, such as subscribing or unsubscribing from RCS communications.

The following predefined keywords and corresponding actions are supported in the Kaleyra RCS service:

KeywordMeaningExpected Behaviour
START/SUBSCRIBEUser Opt-InUser gives consent to start receiving messages from the brand.
STOP/UNSUBSCRIBEUser Opt-OutUser revokes consent; agent must stop all future messaging.

Sample Payloads

UNSUBSCRIBE Event:

{
  "code": "4006",
  "message": "Unsubscription request received from the carrier",
  "data": {
    "type": "UNSUBSCRIBE",
    "from": "19XXXXXXXXX",
    "to": "kio_rcs",
    "sentAt": "2026-04-20T09:01:28.667Z",
    "messageId": "e467ccda-179b-472f-9c73-6XXXXXXXX0XX",
    "carrierId": "VZ"
  },
  "error": {}
}

FOLLOWED Event for UNSUBSCRIBE:

{
  "code": "4007",
  "message": "Mobile-originated message received from the carrier",
  "data": {
    "type": "USER_MESSAGE",
    "eventId": "Mx4S-xOe57S8aXXXXXXXXC94",
    "from": "19782412456",
    "to": "kio_rcs",
    "sentAt": "2026-04-20T09:01:28.671Z",
    "messageId": "79d81bcb-1747-4c5f-bb18-a32XXXXXXXX2",
    "userMessage": {
      "type": "TEXT",
      "text": "STOP"
    },
    "carrierId": "VZ"
  },
  "error": {}
}

SUBSCRIBE Event:

{
  "code": "4005",
  "message": "Subscription request received from the carrier",
  "data": {
    "type": "SUBSCRIBE",
    "from": "19XXXXXXXXX",
    "to": "kio_rcs",
    "sentAt": "2026-04-20T08:58:17.239Z",
    "messageId": "bba968a8-62f6-44a9-9291-8XXXXXXXX2a5579f8b37",
    "carrierId": "VZ"
  },
  "error": {}
}

FOLLOWED EVENT for SUBSCRIBE:

{
  "code": "4007",
  "message": "Mobile-originated message received from the carrier",
  "data": {
    "type": "USER_MESSAGE",
    "eventId": "Mx0g83M74OQgSXGK60iZM7Hg",
    "from": "19XXXXXXXX7",
    "to": "kio_rcs",
    "sentAt": "2026-04-20T08:58:17.240Z",
    "messageId": "6a25ff08-42e4-4f07-984a-4dXXXXXc7709",
    "userMessage": {
      "type": "TEXT",
      "text": "START"
    },
    "carrierId": "VZ"
  },
  "error": {}
}

MO Callback against Suggestions

The following MO callbacks are sent from the carrier to the brand when end users take actions after reading an RCS message, such as replying with a message or clicking on a CTA (for example, dial).

USER REPLY

{
  "code": "2007",
  "message": "Mobile-originated message received from the carrier",
  "data": {
    "type": "USER_MESSAGE",
    "eventId": "Mxj1-Cl49JSHekXXXXXMSlYw",
    "from": "17XXXXXXXXX",
    "to": "kio_rcs",
    "sentAt": "2026-04-16T13:28:41.124Z",
    "messageId": "bdf242e6-817c-4656-b433-2aXXXXXXXXba",
    "userMessage": {
      "type": "RESPONSE",
      "response": {
        "text": "Avail-Offer",
        "postbackData": "flight_offer",
        "type": "REPLY",
        "mo_type": "REPLY"
      }
    },
    "carrierId": "ATT"
  },
  "error": {}
}

DIAL

{
  "code": "2007",
  "message": "Mobile-originated message received from the carrier",
  "data": {
    "type": "USER_MESSAGE",
    "eventId": "Mx8GTVJBK8TwmXXXXXWsZ9g8",
    "from": "17XXXXXXXXX",
    "to": "kio_rcs",
    "sentAt": "2026-04-16T12:58:24.275Z",
    "messageId": "1f72cbfd-c072-4674-a2de-a09XXXXX2c6a",
    "userMessage": {
      "type": "RESPONSE",
      "response": {
        "text": "Customer Support",
        "postbackData": "postback_data_1234",
        "type": "ACTION",
        "mo_type": "DIAL"
      }
    },
    "carrierId": "ATT"
  },
  "error": {}
}

Open_URL

{
  "code": "4007",
  "message": "Mobile-originated message received from the carrier",
  "data": {
    "type": "USER_MESSAGE",
    "eventId": "Mxxo2zJ39jRCXXXXXXXXyMsq",
    "from": "19XXXXXXXXX",
    "to": "kio_rcs",
    "sentAt": "2026-04-16T10:53:53.301Z",
    "messageId": "951d8e87-d9dc-4141-bd8c-46cXXXXXXXX0",
    "userMessage": {
      "type": "RESPONSE",
      "response": {
        "text": "Round Trip",
        "postbackData": "one_way_trip",
        "type": "ACTION",
        "mo_type": "OPEN_URL"
      }
    },
    "carrierId": "VZ"
  },
  "error": {}
}

VIEW_LOCATION

{
  "code": "2007",
  "message": "Mobile-originated message received from the carrier",
  "data": {
    "type": "USER_MESSAGE",
    "eventId": "MxkBa65KRLT8XXXXXXXXaH25",
    "from": "91XXXXXXXXXX",
    "to": "rcs-stage-vg-21",
    "sentAt": "2026-04-14T19:09:02.218Z",
    "messageId": "aff0e099-4b74-4423-887d-5eXXXXX966b8",
    "userMessage": {
      "type": "RESPONSE",
      "response": {
        "text": "View in Maps",
        "postbackData": "View in Maps",
        "type": "ACTION",
        "mo_type": "VIEW_LOCATION"
      }
    },
    "carrierId": "ATT"
  },
  "error": {}
}

ASK LOCATION

{
  "code": "2007",
  "message": "Mobile-originated message received from the carrier",
  "data": {
    "type": "USER_MESSAGE",
    "eventId": "Mx2WkzJMdFRXXXXXXXX0ScZA",
    "from": "91XXXXXXXXXX",
    "to": "rcs-stage-vg-21",
    "sentAt": "2026-04-14T19:00:11.001Z",
    "messageId": "3d27f981-d06a-4b8e-ad5d-536XXXXX6089",
    "userMessage": {
      "type": "RESPONSE",
      "response": {
        "text": "Share your location",
        "postbackData": "Ask location",
        "type": "ACTION",
        "mo_type": "ASK_LOCATION"
      }
    },
    "carrierId": "ATT"
  },
  "error": {}
}

CALENDAR_EVENT

{
  "code": "2007",
  "message": "Mobile-originated message received from the carrier",
  "data": {
    "type": "USER_MESSAGE",
    "eventId": "Mxe7uDZWzLTM2-QqXXXXXdrg",
    "from": "91XXXXXXXXXX",
    "to": "rcs-stage-vg-21",
    "sentAt": "2026-04-14T18:59:03.590Z",
    "messageId": "b13fa61f-c599-4427-b022-9fXXXXXea7de",
    "userMessage": {
      "type": "RESPONSE",
      "response": {
        "text": "Add Reminder",
        "postbackData": "postback_data_1234",
        "type": "ACTION",
        "mo_type": "CREATE_CALENDAR_EVENT"
      }
    },
    "carrierId": "ATT"
  },
  "error": {}
}

USER_LOCATION

{
  "code": "2007",
  "message": "Mobile-originated message received from the carrier",
  "data": {
    "type": "USER_MESSAGE",
    "eventId": "MxHg11LNgLR1XXXXXeigpfPQ",
    "from": "91XXXXXXXXXX",
    "to": "rcs-stage-vg-21",
    "sentAt": "2026-04-14T19:05:55.685Z",
    "messageId": "68dbbb1d-2470-4cf4-85ba-529a5XXXXX16",
    "userMessage": {
      "type": "LOCATION",
      "location": {
        "latitude": 28.658577,
        "longitude": 77.4736007
      }
    },
    "carrierId": "ATT"
  },
  "error": {}
}

COMPOSING

{
  "code": "4003",
  "message": "Composing notification received from the carrier",
  "data": {
    "type": "COMPOSING",
    "from": "19XXXXXXXXXXX",
    "to": "kio_rcs",
    "sentAt": "2026-04-16T16:57:46.515Z",
    "messageId": "90e4d680-2a03-4ef2-abf8-013XXXXX4cde",
    "carrierId": "VZ"
  },
  "error": {}
}




© 2026 Kaleyra Inc. All rights reserved.
Trademarks, logos and service marks displayed on this site are registered and unregistered trademarks of Kaleyra Inc.