Manage Events

Configure events and event properties for segmentation, automation, and Goals.

Custom EventsEvents 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. can contain properties that you have defined outside of Airship. To make these events and their properties accessible to our segmentation and automation services, you may need to configure them on the Events configuration page, if you wish to:

  1. Activate events and their properties for event segmentation. See Event Segmentation for details on event types and properties.
  2. Add/Define properties for events you want to use for Custom Event TriggersA trigger that initiates an Automation or Sequence when a Custom Event associated with members of your audience occurs. or Cancellation EventsCustom Events that prevent an Automation, Sequence, In-App Automation, or Scene from sending/displaying if they occur while the Automation (or other) is in a delay period..
  3. Specify events when setting up GoalsSelected events that generate a set of performance reports. You can also use them for measurement in Holdout Experiments and Feature Flag A/B tests..

See also:

Create a new event

Add a new custom or predefined event to your project.

  1. Next to your project name, select the dropdown menu (), then Settings.

  2. Under Project settings, select Events.

  3. Select Create event.

  4. Enter a name for your new custom event or search for a predefined event to activate.

    Predefined events have reserved names and will appear in search results with a Predefined event flag. For a list of available predefined events, see Predefined events and properties in the Events reference.

    If you choose one of the predefined events, the event properties will be populated for you. If you are creating a new custom event that is unknown to Airship, select Create custom “[search term]” event to create it.

  5. (Optional) Enter a description for the event.

  6. Select an event category or select Create category and enter a category name.

     Note

    When Airship adds a new default category that matches a custom category, the default category will replace the custom one. For example, if Airship adds a default “Shipped” category, it will replace your custom “Shipment sent” category, and “Shipment sent” will be removed from your project.

  7. (Optional) Check the box to Activate for segmentation.

  8. (Optional) Add event properties. Predefined events are already populated with properties, and you can add more. You can also edit or remove properties for predefined events.

    Select Add property, then enter a property name and select its type: String, Number, Boolean, Date, Array, or Any. The type determines which operators are available to you when using event segmentation. Select Any if the value for the property is unknown or if it could be multiple types. Select Add another and repeat to assign additional properties for the event.

     Note

    Properties of type “Any” cannot be used for segmentation. They will not appear in the dashboard segment builder and cannot be referenced using the API.

    Similarly, properties of type “Array” have these restrictions by default. However, you can make the contents of an array accessible for segmentation by defining their nested properties. See Defining nested array properties below.

  9. Select Save.

Defining nested array properties

When adding an “Array” type property for an event, you can make the contents of the array accessible for segmentation by defining its nested properties using JSON Path expressions.

After adding the array property, add sub-properties using the syntax $.arrayproperty[*].subproperty. The asterisk (*) acts as a wildcard, indicating that the path should match the sub-property for any item within the array property. This makes it possible to segment your audience based on the characteristics of individual items within an array without needing to refer to their specific locations.

For example, consider a Products array where each product object has a name and price:

{
  "Products": [
    {
      "name": "Laptop",
      "price": 1200
    },
    {
      "name": "Mouse",
      "price": 25
    }
  ]
}

To enable segmentation on the name and price of individual products within the Products array, you would define the following properties for the event in your project:

  • Products of type Array, to acknowledge the array itself
  • $.Products[*].name of type String, for segmentation using the name of any product in the array
  • $.Products[*].price of type Number, for segmentation using the price of any product in the array

Edit or delete events

Deleted events or event properties will no longer be available for use in segmentation. If you change an event’s name, only the new name will be available for use in segmentation.

Similarly, deleted event properties will no longer be available for selection when configuring Automation and Sequence triggers. However, the event itself will still remain available for triggers.

  1. Next to your project name, select the dropdown menu (), then Settings.
  2. Under Project settings, select Events. The table includes a maximum of 1,000 events.
  3. Search for an event, then:
    • To delete, select the trash can icon () in its row.
    • To edit, select the pencil icon () in its row, make your changes, and then select Save.