Compose JSON messages in the advanced editor

Updated

This page is part of the build-your-own inbox approach.

When you send an inbox message from a campaign or broadcast—or from your backend—you author its content in the advanced editor. The advanced editor delivers your message as the JSON payload that you render from your bespoke inbox client.

  1. Add an Inbox message to your campaign or broadcast workflow (or create an Inbox transactional message), then choose the Advanced editor.

  2. Define your message settings: Topics, Type, and Expiration.

    • Topics: help you filter the inbox for specific messages.
    • Type: acts as a signal to your inbox client about how to render the message.
    • Expiration: the time between when the message is sent and when it expires. Messages only expire if they’re sent but not delivered. By default, messages expire after 60 days, which is also the maximum.
      The inbox message settings screen with the message settings filled in
      The inbox message settings screen with the message settings filled in
  3. In the JSON area, provide the payload that represents your message. By default we include a title and body, but you can add any fields your client expects, like an image or link.

    Personalize content with liquidA syntax that supports variables, letting you personalize messages for your audience. For example, if you want to reference a person’s first name, you might use the variable {{customer.first_name}}.: use {{customer.<attribute_name>}} for profile attributesA key-value pair that you associate with a person or an object—like a person’s name, the date they were created in your workspace, or a company’s billing date etc. Use attributes to target people and personalize messages., {{event.<attribute_name>}} for event data, and {{trigger.<attribute_name>}} for broadcast or transactional trigger data.

    {
     "title": "Hey, {{customer.first_name}}, your order shipped!",
     "body": "You can track your order #{{event.order_number}} here:",
     "link": "https://example.com/orders/{{event.order_number}}"
    }
    
  4. Save your message.

For the full campaign and broadcast flow, see send inbox messages. To trigger messages from your backend, see trigger inbox messages from your backend.

Copied to clipboard!