About events

Use events to target and trigger messages, personalize content, and measure campaign performance.

View as Markdown

How events work

Events are records of activity. Airship SDKs and APIs generate many events automatically. You can also define your own and send them from your app, website, or server. Events can represent the following:

  • User behavior, such as app opens, page views, and purchases
  • Airship system activity, such as compliance events, message sends, and message expiration
  • External activity from your other systems, such as POS transactions or CRM updates

Each event typically includes when it occurred, which user or device it is associated with, the event type, and additional details or properties.

For events submitted from your server or an external system, also called server-side events, see Track events using the Custom Events API.

When you only need presence or absence for future campaigns, such as purchaser, use a tagMetadata that you can associate with a channel or named user for audience segmentation. Generally, a tag is a descriptive term indicating a user preference or other categorization, such as wine_enthusiast or weather_alerts_los_angeles.. Use an event such as purchased when you need timing, frequency, properties, conversion measurement, or to start a message when the activity occurs.

Using events with messaging

Events support the following messaging capabilities:

Event types, data sources, and setup

Events can come from Airship, the Airship SDKs, and you. The following table shows the data source, description, and setup required for each event type:

TypeData sourceDescriptionSetup
DefaultAirship SDKs or systemThe Airship SDKs automatically record standard events such as app opens and web clicks. Airship also records system events such as message sends and email unsubscribes. See Default events in the Events Reference.None.
CustomCustomerYou can define the event name and properties, such as a purchase with a product SKU and price.Add the event in your project settings. Track it from the SDKs, the Custom Events API, or message actions.
PredefinedCustomerPredefined events are custom events with reserved names and default properties you can modify or extend, for common actions such as purchases and registering an account. See Predefined events in the Events Reference.Add the event in your project settings. Track it with an SDK template, the Custom Events API, or message actions.

Default events are always available for segmentation. When adding predefined and custom events to your project, you can activate them for segmentation.

Where events are stored

The following table shows where each event type is stored:

Event typeStorage
DefaultChannel
CustomContact or channel
PredefinedContact or channel

An event stored on 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. applies across all channels associated with that user, and an event stored on a channelA device or address registered with Airship to receive messages, such as a mobile app, web browser, email address, or SMS number. It stores opt-in status, device-specific information, and metadata used for targeting. Each channel has a unique channel ID. applies only to that channel. Events from any channel roll up to the contact, so channel-level event activity is available for contact targeting.

For the broader audience-data storage model, see Data storage in Your audience. For details on the segmentation systems and how to check your project’s setting, see Channel-level segmentation in Segmenting your audience.

Reporting

Custom and predefined events appear in message and Scene reports so you can see which messages drove conversions. Airship attributes an event to a push after a direct open, or after an open within a 12-hour window without a notification tap.

See:

Real-Time Data Streaming

Default events appear in Real-Time Data StreamingA service that delivers user-level events in real time to your backend or third-party systems using the Data Streaming API. with distinct type values. Those types and names may differ from the names used for segmentation. For segmentation names, see the Events Reference. For stream schemas, see Real-Time Data Streaming events.

Custom and predefined events appear in the stream as type CUSTOM and are differentiated by name. Performance AnalyticsA customizable marketing intelligence tool that provides access to reports and graphs based on engagement data. uses the same name.