Button Actions

Choose the action that occurs when a user taps a button in your In-App Automated message. These are called button actions. This page details the different button actions, how to set them, and additional options.

Setting Button Actions

A button action is the action that occurs when a user taps a button in your In-App Automated message. You add buttons during the Content step of the In-App Automation composer, and you set button actions during the Actions step. You must associate an action for each button.

  1. Select a button action.
  2. (Optional) Set tag behavior.
  3. (Optional) Limit the display to once if the user taps the message.
  4. Repeat for each button.
  5. Click to move on to the next step.

Fullscreen messages include a Footer field. The footer functions as a button, and it is configured in the same way as the other buttons. They are presented in separate panes: Footer and Buttons.

The footer is designed to link to your Terms and Conditions, Privacy Policy, or additional information to help the user make a more informed decision about the actions they could take in this message. The actions available for the footer button are Deep Link and Web Page.

Adaptive Link opens a mobile wallet pass. The Adaptive Link must be configured before it will appear in the dropdown menu. See: Adaptive Links Tutorial.


Only Adaptive Links created in the dashboard will appear in the dropdown list.

App Rating

App Rating prompts the user to rate the app in the app store. Optionally enter a custom message title and body.


App Rating display behavior differs by operating system and version:

  • The Title and Body dialog appear for iOS 10 or below and Android only.

  • iOS 11 will instead display its system dialog for app rating. Additionally, Apple limits app rating dialogs to three times in a 365-day period. App rating prompts will process as configured by your In-App Automation settings, but the displayed dialog is controlled by Apple, not Airship.


iOS requires that you provide your app's Apple ID, which is used as the iTunes App Store Identifier. You can do this via our dashboard, or by editing your plist dictionary.

From within your project, go to Settings » Configuration » iTunes ID, enter the Apple ID, then click Save.
Plist dictionary
Add the following to your plist dictionary, substituting 1111111111 with the app's actual ID:

<key>itunesID</key> <string>1111111111</string>

Android and Amazon generate app store links automatically based on information already in your app, so no configuration is required.


A quick way to find the Apple ID is to copy the numbers at the end of the app's iTunes URL. If the URL is https://itunes.apple.com/app/id123456789, the Apple ID is 123456789.

Another way is to locate your app in iTunes Connect and copy the Apple ID.

Deep Link opens to a configured screen within your app or on the web. The Deep Link must be configured before it will appear in the dropdown menu. See: Manage Deep Links. Select from the dropdown menu.

If you selected a Deep Link template, each template segment field will be available to fill in. If no deep links have been predefined, you will see a link to the configuration documentation.

Dismiss Message

Dismiss Message dismisses the In-App Message.


The default action of a button is to dismiss the message, without any other effect. For example, a “Not Now” button allows a user to defer taking action and dismisses the message, which can be configured to reappear at a later time. An effective way to pair actions is to provide a "Not Now" button with the Dismiss Action, and an additional button with the Deep Link action, providing a direct link to your content.


Our Deep Link functionality supports URL templates, which expose a friendly interface to your users in our UI, while constructing the correct URL behind the scenes on the fly. You can specify substitution parameters by enclosing them in brackets. For example, if you want to define a Deep Link for a product page screen in your app (or on your mobile website), you can make the product ID number a substitution parameter. Here is an example URL:

https://yourcompany.com/products/{Product Id}

When you enter this URL in the Airship interface, the form parses it and previews the form your users see in the Message composer. It automatically identifies “Product Id” as the parameter name, and provides a field to substitute in the actual identifier. So if you had previously entered a product ID of 1872983490 for the above Product ID, the generated URL would be:


The interface treats all values for each field as a string.

Location Opt-in

Location Opt-in opens the system prompt for location opt-in.

Push Opt-in

Push Opt-in opens the system prompt for push notification opt-in.


Share prompts the user to share the message on social networks. Enter the text you would like to accompany the share, including any promotional information, shortened links, hashtags, etc.

Web Page

Web Page opens to a web page or any valid-device level URL such as App Store or app protocol links. The web page opens in the device's default browser. Enter a URL.

Set a Tag

Set a tag on the device when the button is pressed. It's also possible to remove a tag, or combine setting and removal actions on one button press.

  1. Click Set a tag.
  2. Select Add or Remove, then search for tags that exist in the system, or create a new tag.

The ability to set tags based on user actions is key to promoting new features. The suggested approach is to display messages regarding a feature if the tag does not exist, and to then set the tag to record either the fact that the user has acknowledged the message, or to record actual usage of the feature. You can set a tag when a user clicks a button on an In-App Message, or even upon In-App Message display, but recording actual feature usage requires some native code within the app. See:

Disable Multiple Display

Keep the message from displaying more than once if the user taps the message. Check the box to enable.


Use this for repeated goal-related messages, e.g., prompt to opt-in. You would want to prevent re-display when the user accomplishes the goal.