Event format assignment
Event format assignment defines how inbound messages are structured and delivered to your webhook.
Each subscription automatically receives a default format, which is channel-specific to ensure consistent processing. If the default format does not meet your requirements, you can select another supported format for available channels. This allows you to control the payload structure that is sent to your webhook.
Default formats by channel
Each subscription automatically assigns a default format for handling inbound messages. These formats are channel-specific to ensure consistent processing of inbound messages.
Supported channels use the following predefined JSON-based formats to structure and process inbound messages:
| Channel | Format |
|---|---|
| Apple Messages for Business | MO_OTT_CONTACT |
| Facebook Messenger | MO_OTT_MSISDN |
| LINE | MO_OTT_MSISDN |
| MMS | MO_MMS_2 |
| RCS | MO_OTT_MSISDN |
| SMS | MO_JSON_2 |
| Viber Business Messages | MO_OTT_MSISDN |
MO_OTT_CONTACT | |
| Zalo | MO_OTT_MSISDN |
Selectable event formats
Early accessUse event formats to choose the payload in which you want to receive events to your webhook.
Event formats are currently available for selection for Apple Messages for Business, Facebook Messenger, MMS, SMS, Open Channel, Blocklist, and Mobile Identity events. If you need to change the format for other channels or events, contact Support.
You can choose between two options:
- Static formats: Fixed payload schema that corresponds to a specific API version (for example, SMS API v3 or MMS API v1). All events of that type are delivered in the selected schema, regardless of how the original message was sent.
- Adaptive subscription format: Dynamic schema where the system delivers the payload that matches the API you used to send the original message.
Select the categories below to see which formats are available for selection.
Apple Messages for Business
| Event | Format name | Format payload |
|---|---|---|
| Delivery | adaptive.subscription.format | Payload is picked based on the API used in your submission |
delivery.apple-messages-for-business.v3.json | Example: Receive AMB delivery reports (opens in a new tab) | |
delivery.apple-messages-for-business.v4.json | Example: Receive delivery reports (opens in a new tab) | |
| Inbound message | inbound-message.apple-messages-for-business.v1.json | Example: Receive incoming message (opens in a new tab) |
inbound-message.apple-messages-for-business.v2.json | Example: Receive inbound messages (opens in a new tab) |
Facebook Messenger
| Event | Format name | Format payload |
|---|---|---|
| Delivery | adaptive.subscription.format | Payload is picked based on the API used in your submission |
delivery.facebook.v5.json | Example: Receive delivery reports (opens in a new tab) | |
delivery.facebook.v4.json | Example: Receive Messenger delivery reports (opens in a new tab) | |
| Inbound message | inbound-message.facebook.v1.json | Example: Receive incoming message (opens in a new tab) |
inbound-message.facebook.v2.json | Example: Receive inbound message (opens in a new tab) | |
| Marketing opt-in | marketing.facebook.v1.json | Example: Receive Messenger Opt In Marketing event (opens in a new tab) |
| Marketing opt-out | marketing.facebook.v1.json | Example: Receive Messenger Opt Out Marketing event (opens in a new tab) |
SMS
| Event | Format name | Format payload |
|---|---|---|
| Click | tracking.sms.v1.json | Example: Receive SMS tracking notifications (opens in a new tab) |
| Delivery | adaptive.subscription.format | Payload is picked based on the API used in your submission |
delivery.sms.v2.json | Example: Receive delivery status report (opens in a new tab) | |
delivery.sms.v3.json | Example: Receive outbound SMS message report (opens in a new tab) | |
delivery.sms.v4.json | Example: Receive outbound SMS message reports (opens in a new tab) | |
delivery.sms.v5.json | Example: Receive delivery reports (opens in a new tab) | |
| Inbound message | inbound-message.sms.v1.json | Example: Receive inbound SMS messages (opens in a new tab) |
inbound-message.sms.v2.json | Example: Receive inbound messages (opens in a new tab) |
MMS
| Event | Format name | Format payload |
|---|---|---|
| Click | tracking.mms.v1.json | Example: Receive MMS tracking notifications (opens in a new tab) |
| Delivery | adaptive.subscription.format | Payload is picked based on the API used in your submission |
delivery.mms.v1.json | Example: Receive outbound MMS message report (opens in a new tab) | |
delivery.mms.v3.json | Example: Receive delivery reports (opens in a new tab) | |
delivery.mms.v4.json | Example: Receive MMS delivery reports (opens in a new tab) | |
| Inbound message | inbound-message.mms.v1.json | Example: Receive inbound MMS messages (opens in a new tab) |
inbound-message.mms.v2.json | Example: Receive inbound messages (opens in a new tab) |
Open Channel
| Event | Format name | Format payload |
|---|---|---|
| Delivery | event.open-channel.v1.json | Example: Receive Open Channel outbound Message (opens in a new tab) |
Mobile identity
| Event | Format name | Format payload |
|---|---|---|
| Silent verification | silent-verification.mobile-identity.v1.json | Paylod is picked based on the API used in your submission. Example: Receive silent mobile verification result (opens in a new tab) / Receive advanced silent mobile verification result (opens in a new tab) |
Blocklist
| Event | Format name | Format payload |
|---|---|---|
| Block | event.blocklist.v1.json | Example: Receive blocklist event (opens in a new tab) |
| Unblock | event.blocklist.v1.json | Example: Receive blocklist event (opens in a new tab) |
How to select a different format
You can select a different format when creating or editing a subscription.
Web interface
- Log in (opens in a new tab) and go to Developer Tools > Subscriptions Management.
- Find your SMS or MMS subscription in the list.
- Open the three-dot menu next to the subscription name and select Edit.
- On the Select events screen, choose your preferred event format from the dropdown.
- Save your subscription to apply the new settings.
API
You can configure event formats when creating (opens in a new tab) or updating (opens in a new tab) a subscription by including the format field in the events object.
Example without a format (default will be applied):
"events": [
"DELIVERY"
]Example with a selected format:
"events": [
{
"event": "DELIVERY",
"format": "delivery.sms.v3.json"
}
]If the format field is not provided, the system automatically assigns the default format for that event and channel.