Add messages to a sequence
Follow these steps to add messages to a new or existing sequence.
You add messages to a sequence from the Sequence ManagerA preview of the messages in a Sequence, with options for editing and testing, and for running experiments.. You can access this screen from these locations:
- Journey MapA visualization of messaging components that can be connected to create a continuous user experience. You can also create and edit from the map.: Select a sequence, click its card in the map, then click .
- Messages OverviewA view of all your project’s messages, with options for editing their settings, content, status, and more.: Click for a sequence.
For sequences that don’t yet contain messages, you can start the following steps immediately after opening the Manage screen. For sequences with at least one message, first click Add message from the Manage screen, then complete these steps.
Configure optional settings
In addition to configuring the message itself, you can set audience requirements and a delay period.
Conditions
Conditions are requirements your audience must meet in order to receive a message from a sequence. If a member of the audience doesn’t meet the conditions, they will not receive this message or any subsequent messages in the sequence; they will exit the sequence. If you add multiple conditions, they are handled as a boolean OR. If any condition is met, the message will be sent.
To set conditions:
- Select Add conditions , and then select a condition and configure:
Condition Description Steps Contact This condition specifies that ContactsAny user in your project. Contacts are identified as either an Anonymous Contact or a Named User. Airship can set targeting data on these identifiers, which are also used to map devices and channels to a specific user. must be anonymous or associated with a Named UserA customer-provided identifier used for mapping multiple devices and channels to a specific individual.. It is available for the first message in a Sequence only. Select Anonymous contacts or Authenticated contacts. Segmentation This condition specifies that Contacts must be a member of a SegmentA reusable audience group you create by selecting unique or shared user data. that you build. Define your audience using the same segmentation data and process as when building a SegmentA reusable audience group you create by selecting unique or shared user data.. Subscription This condition specifies that Contacts must be opted in to or out of a Subscription ListAn audience list of users who are opted in to messaging about a specific topic. Users can manage their opt-in status per list using a Preference Center.. You can select multiple lists.
Airship evaluates subscription status across all channels collectively. A Contact is subscribed to a list when they have at least one opted-in channel and unsubscribed when they have no opted-in channels.Search for and select a list, then select whether they must be in to or out of the list. - Select the arrow icon () to close the configuration panel.
Delay
You can set a delay period for the message. This is the time Airship should wait after receiving the triggering event before sending your message. Set the value to zero (0) minutes to send immediately or adjust the default value (one hour) to the desired delay period. The maximum delay period is 90 days.
For the first message in your sequence:
- The delay period starts when the triggering event is received by Airship.
- For the First Seen trigger, a delay shorter than one hour may result in dropped sends.
- For sequences with the goal of Event, a delay shorter than one hour may result in sends going to users who converted/cancelled.
- For sequences using the Inactivity trigger, there is no delay setting for the first message.
For subsequent messages:
- The delay period starts when the previous message was sent.
- For sequences with the goal of Event, a delay shorter than one hour may result in sends going to users who converted/cancelled.
To set a delay:
- Under Message Delay, select the currently set time period.
- Enter a value in minutes, hours, or days.
- Select Save.
Configure the message
Select Add message content. You can add message content without setting conditions or a delay. After completing a step, select the next step in the header to move on.
Setup
Projects using the channel-level segmentation system do not have a Setup step. However, if they are enabled for Channel Coordination, you must select and configure a strategy and save it before moving to the Content step.
Also, for the channel-level segmentation system, each strategy targets a Named UserA customer-provided identifier used for mapping multiple devices and channels to a specific individual., not a ContactAny user in your project. Contacts are identified as either an Anonymous Contact or a Named User. Airship can set targeting data on these identifiers, which are also used to map devices and channels to a specific user..
First, select a Channel CoordinationA group of strategies for targeting users where they are most likely to receive your message. strategy:
- Fan Out targets a Contact on all the channels they are opted in to, maximizing the chances they receive your message.
- Last Active targets a Contact on the opted-in channel they used most recently.
- Originating Channel targets a Contact on the channel that triggered the Sequence.
- Priority Channel targets a Contact on the first channel they are opted in to, in the priority order you set.
Then, enable the channel types to include in your audience. For Mobile Apps, also select from the available platforms. For Priority Channel, also drag the channel types into priority order.
Use Channel conditions to filter which channels are included in the audience. A channel must meet the conditions to remain in the audience.
For example, if your audience includes users with app, email, and SMS channels, and you set a channel condition requiring membership in an email Subscription List:
- Only email channels that meet that condition would remain in the audience.
- All app and SMS channels would be excluded.
To set channel conditions, use the same process as when building a SegmentA reusable audience group you create by selecting unique or shared user data.. You can use the following data in your conditions:
- AutogroupA default tag group. When devices are registered in Airship, they are automatically assigned a tag within the
autogrouptag group; the tag is a numeric value of 1 to 100. Some uses for autogroup tags are creating a control group, and to randomly Segment your audience. Autogroup must be enabled for your account — contact Support or your account manager. - Channel IDAn Airship-specific unique identifier used to address a channel instance, e.g., a smartphone, web browser, email address.
- Device PropertiesMetadata representing the default attributes and property tags of a device, such as language and time zone settings, OS and browser versions, and notification opt-in status. Device properties are used for audience segmentation. The data used for the tags and attributes is collected automatically from the Airship SDKs, and are updated daily.
- EventsEvents represent activities in the Airship system, as well as user behavior in your app or website. You can also send external activities (e.g., POS transactions) into the Airship system as events. Events power Airship data products and can be used in audience segments, as Automation triggers, and for partner integrations.
- Lifecycle ListAutomatically generated audience lists that capture app open, uninstall, notification, and dormancy information within the past 24 hours, one week, or 30 days.
- Predicted to Churn statusAnalyzes your audience for users that exhibit behaviors indicating they are likely to become inactive, and tags the users as High, Medium, or Low Risk.
- Subscription ListAn audience list of users who are opted in to messaging about a specific topic. Users can manage their opt-in status per list using a Preference Center.
- TagMetadata that you can associate with channels or Named Users for audience segmentation. Generally, they are descriptive terms indicating user preferences or other categorizations, e.g.,
wine_enthusiastorweather_alerts_los_angeles. Tags are case-sensitive. in thedeviceTag GroupAn array of tags that you can associate with both channels and Named Users. — See Primary device tags. - Uploaded (Static) ListA reusable audience list that you create. Uploaded lists are static and updatable. In the API, they are referred to as Static Lists.
Selected Lifecycle, Subscription, and Uploaded Lists must contain Channel IDs or Named Users as the identifier, not a mix of the two.
Content
Configure the message content per enabled channel. See Content by channel.
Delivery
Configure delivery. Timing settings do not appear if you chose the Inactivity trigger.
Review
Review the device preview and message summary. Click the arrows to page through the various previews. The channel and display type dynamically update in the dropdown menu above. You can also select a preview directly from the dropdown menu.
If you want to make changes, click the associated step in the header, make your changes, then return to Review.
Send a test message to verify its appearance and behavior on each configured channel. The message is sent to your selected recipients immediately, and it appears as a test in Messages OverviewA view of all your project’s messages, with options for editing their settings, content, status, and more..
- Select Send Test.
- Select Send Test.
- Under Test audience, enter at least one Named UserA customer-provided identifier used for mapping multiple devices and channels to a specific individual. or Test GroupA preview group is audience group used for previewing personalized content in the dashboard. Wherever a personalization preview is available, you can select a preview group, and its group members’ attributes will appear for any Handlebars references to attributes. You can enable any preview group as a test group so you can send test messages to its group members. These messages appear as tests in Messages Overview. and select from the results. If your message includes email, you can also search for email addresses. If no matches appear for an address, you can select Create channel for <address>, and the channel will be registered for your project and opted in to transactional messaging.
- (If your message contains HandlebarsHandlebars is Airship’s templating language for personalization. Handlebars expressions use double curly braces wrapped around a content template, ranging from a simple variable, e.g.,
{{first_name}}, to complex evaluations of personalization data.) Under Personalization, select and configure a personalization data source:Data source Description Steps Test message recipient The message will be personalized using information associated with each test audience member. n/a Preview Data tool The message will be personalized using the data currently entered in the Preview Data tool. The same values will apply to all test message recipients. You can also manually edit the JSON. (Optional) Edit the JSON data. - Select Send.
Click Save & Continue to complete adding the message to your sequence.
From the Sequence ManagerA preview of the messages in a Sequence, with options for editing and testing, and for running experiments., now you can:
- Add another message to extend the sequence.
- Test the sequence before starting it or publishing changes.
- Create a control group before starting the sequence.
- Click Start to make the sequence available to your audience.
- Click Publish changes to apply your changes to a sequence that is already in progress. Audience members who have already triggered the sequence will only see the added or edited message content if they have not yet passed this point in the sequence.
Personalizing messages
For Sequences using the Custom Event trigger, you can personalize messages using AttributesMetadata used for audience segmentation and personalization. They extend the concept of Tags by adding comparison operators and values to determine whether or not to target a user, helping you better evaluate your audience. or Custom EventEvents that indicate that a user performed a predefined action, such as adding an item to a shopping cart, viewing a screen, or clicking an Unsubscribe button. Custom Events can trigger automation, including Sequences and Scenes. You can code them into your app or website, or send them to Airship from an external source using the Custom Event API. Custom Events contain properties that you can use to personalize messages. properties. In both cases, you reference variables using HandlebarsHandlebars is Airship’s templating language for personalization. Handlebars expressions use double curly braces wrapped around a content template, ranging from a simple variable, e.g., {{first_name}}, to complex evaluations of personalization data. to personalize the message for each member of your audience. If you set up templates, you can reference your templates when setting up messages in the Sequence.
For example, if your events have a property called name, you would add it to your message or template using {{name}}.
Custom event properties used to be referenced in the $data.events.[0].properties namespace. If you have templates referencing properties in this namespace, they’ll still work, but you’ll have to continue using this namespace until you contact Airship Support and move over to the simplified namespace for custom event properties.
You can personalize a message using both attributes and custom event properties. If both an attribute and a custom event property have the same name, Airship will attempt to use the custom event property — the most recent property — to personalize the message.
For example, if you have a custom event representing a purchase, you can send an automated message confirming the purchase and providing information about what the user bought.
Custom Event
{
"occurred": "{{event_time}}",
"user": {
"named_user_id": "user"
},
"body": {
"name": "purchase",
"subscribe": true,
"properties": {
"customer_name": "user",
"total": 48,
"cost_units": "USD",
"purchase": [
{
"qty": 4,
"item": "MLB regulation baseball",
"per": "$12",
"total": "$48"
}
]
}
}
}Message Content
Hi {{$def customer_name "valued customer"}}!
Thanks for your purchase of:
{{#each purchase}}
{{qty}}x {{per}} {{item}} = {{this.total}}
{{/each}}
total: ${{total}}
Is being processed. We'll message you again when it ships!Localize your sequence messages
Learn how to localize your messages in your sequence using HandlebarsHandlebars is Airship’s templating language for personalization. Handlebars expressions use double curly braces wrapped around a content template, ranging from a simple variable, e.g., {{first_name}}, to complex evaluations of personalization data. with conditions targeting ua_language and/or ua_country tags. Localizing messages in this way ensures that your audience only sees the message intended for their language settings.
The else statement acts as the default message for members of your audience who do not have a ua_language