A journey is a series of messages that are initiated by a single automation trigger.


Please contact Airship Sales to enable Journeys for your account.

Airship sends messages in the series based on your timing settings, and you can also set ConditionsTags that must or must not be present on a device (or channel_id) for members of your audience to receive a message from an automation or journey. The message is not sent if your conditions are not met. that determine the continuation of the series.

Journeys are goal-based. The goal determines how a user exits the journey:

  • Completion: Airship delivers all messages in the journey as long as conditions for delivery are met. Use this ending type for onboarding.

  • Event: Airship stops sending the remaining messages in the journey when the user achieves a desired result — select the custom event that will cause the user to exit the journey. Examples:

    • Abandoned cart: Create a series of reminder messages, and cancel the journey if the user completes a purchase.

    • Introduce new feature: Create a series educating users about a new feature, and cancel the journey if the user engages with the feature.

You can create journeys in the dashboard. Journeys support all channels and message types.

See also: Configure Triggers.

Message Frequency Limiting

Automation limits cap the number of automated messages a device can receive within a time interval, helping prevent you from over-notifying your audience, e.g., a maximum of 4 messages every 10 hours. Each automation and each message in a journey counts toward your automation limit. Automation limits are set at the project level.

Rule limits cap the number of times any member of your audience can trigger a journey, helping prevent you from over-notifying your audience, e.g., a maximum of 1 per day. Rule limits are set per journey.

Your automation limits and counts are displayed below the list of views in Messages » Messages Overview » Ongoing. See also: Manage Automation Limits.

Personalizing the First Message in a Journey

You can trigger journeys based on custom events. When you set up a journey using the Custom Event trigger, you can reference event properties using HandlebarsAirship's message personalization syntax using double curly braces ({{handlebars}}). You can use handlebars to insert variables and conditional logic in messages and templates. to personalize the message for each member of your audience. If you have a template set up using event properties, you can reference a template in the first message directly.

You will reference custom event properties in the $[0].properties namespace. If your events have a property called name, you would add it to your message or template using {{$[0]}}.

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",
            "units": "USD",
            "items": [
                "MLB regulation baseball", "Louisville Slugger"

Message Content

Hi {{$def $[0].properties.customer_name "valued customer"}}!

Thanks for ordering:
{{#each $[0].properties.items}} 1x {{.}}\n{{/each}}
total: {{$[0]}}{{$[0].properties.units}}

We'll message you again when it ships!