Configure content elements

Configure content elements for Scenes, including buttons, containers, media, text, questions, NPS, and input fields.

View as Markdown

Configure content elements after adding them to a screen. For each element, configure its settings in the center panel and its design properties in the right sidebar.

Button or Button Group

Add a single button or up to five buttons in a group. When using multiple buttons in a screen, add single buttons if you want to place content between them, and use a button group to keep buttons together.

After configuring the first button in a group, select Add button for more. One Button Group is allowed per screen.

Set for each button:

Field or settingDescription
TextRequired. The button label.
Content descriptionOptional. Text to be announced by assistive technology such as screen readers. It is announced after the button label text.
Loading state textOptional, appears only for buttons using the Validate Form or Submit Responses action. The text momentarily replaces the button label text while the action occurs. Example loading state text: “Processing”, “Processing…”, “Submitting now!”.
ActionRequired. The behavior that occurs when a user taps/clicks the button. The button can also add or remove 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. Tags are case-sensitive., emit a 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 Events API. They can contain properties that you can use to personalize messages., and/or opt a user into 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.. Follow the steps in Actions for in-app experiences.
Action: Scene behaviorOptional. Determines how the Scene behaves when a user taps the button: No action, Next screen, Previous screen, Dismiss (closes the Scene), or Dismiss and cancel Repeat (closes the Scene and overrides the Repeat setting).

Scene behavior is not available when the action is Next, Previous, or No Action. The actions Dismiss Message, Preference Center, and Deep Link have Scene behavior options Dismiss and Dismiss and cancel Repeat only.

Action: Reporting labelOptional. A label to differentiate clicks/taps for the button in reporting.

By default, clicks/taps on elements with a configured action are reported using the In-app button tap event in the format button-tap-<button_action>--<button label>, where <button label> is the visible text on the element. When you enter your own reporting label, it replaces that text in the event name.

For example, if you enter Cat socks55 for the Submit Responses action, the event in reporting is button-tap-submit_feedback--Cat socks55.

Reporting labels support 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..

For the Button Group element, set the Layout if there are two buttons total. This determines if buttons appear separate, joined, or stacked. Three or more buttons are automatically stacked.

In the sidebar, first select a button style configured in your brand guidelines, and then configure the design properties.

Container

Create a Container for other content elements. By default, screen elements are stacked vertically, and you can drag them into your preferred order. When you place elements in a Container, you can arrange them vertically or horizontally. Containers also support nesting, so you can do things like place images side by side.

Immediately after selecting Container, select an element to add to that container. Use the breadcrumbs above the content elements to navigate between nested containers and back to the root screen.

To fix a container at the bottom of a screen, see Add content elements. Containers do not support NPS.

In the sidebar, configure Background color and Background media using the same steps as the screen background.

Custom View

Embed a Custom ViewA native view from your mobile or web application embedded into a Scene. Custom Views can display any native content your app exposes, so you can reuse that existing content within any screen in a Scene. into a screen. Since the actual content of a native view is unknown by the device preview, the preview displays a placeholder.

Set for the Custom View element:

Field or settingDescription
NameThe view name as registered in your mobile app or website code.
Content descriptionOptional. Text to be announced by assistive technology such as screen readers.
PropertiesOptional. Key-value pairs to pass to the device for reference by your app’s code. Property values support 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..

Email

Email collection: iOS SDK 18.13+Android SDK 18.5+
Email registration: iOS SDK 19.1+Android SDK 19.2+

Add a field to register a submitted email address as a channel or only collect it as data. You must also configure a Button or Media (image only) using the Submit Responses action. Use a Text element to add a title for the field and provide disclosures. See also Providing disclosures and other required information.

Email addresses submitted through this element are validated, collected, and optionally registered as channels:

Important

When collecting email addresses, record the collection or opt-in date for compliance purposes. Customers are responsible for providing their End Users with clear notice about how their email addresses will be used, in line with specific use cases and regulatory requirements in the Customer’s jurisdiction.

Set for the Email element:

Field or settingDescription
PlaceholderOptional. This text appears in the field before a user selects the field. It should describe the expected input. For example, “Email address”, “sabine@example.com”, or “Please enter your work email address”.
Accessibility descriptionRequired. Text announced by assistive technology such as screen readers when a user focuses on the field. Enter a description, or associate an existing Text element used as the field’s label.

Selecting text requires: iOS SDK 19.8+Android SDK 19.10+

Reporting labelRequired. This text appears as the Survey Question for question type email in Performance AnalyticsA customizable marketing intelligence tool that provides access to reports and graphs based on engagement data..
Submission typeRequired. Determines whether the email address will be only collected as data or also registered as a channel and opted in to transactional messaging.

For channel registration, you can also opt users in to commercial messaging. Enable Double opt-in to trigger an AutomationA set of conditions that your audience must meet before they receive a message. or SequenceA series of messages that is initiated by a trigger. Airship sends messages in the series based on your timing settings, and you can also set conditions that determine its audience and continuation. Sequences can be connected to each other and to other messaging components to create continuous user experiences in a Journey. using the Double Opt-In trigger. Adding event property key-value pairs for double opt-in is optional but recommended to trigger a specific Automation or Sequence.

RequiredOptional. Makes entering an email address a requirement for making the Submit Responses button or image active. Check the box to enable.

In the sidebar, first select an input style configured in your brand guidelines, and then configure the design properties.

List

Add a bulleted list where the bullet is an image you provide. After configuring the first list item, select Add another for more.

Set for each list item:

Field or settingDescription
MediaRequired. The URL of an image to use as the bullet. URLs must be HTTPS and accessible by your mobile audience.

If your Airship plan includes CDN support, you can also upload media or select from previous uploads in your project’s media library. See Insert media in message content in Media library.

TextRequired. The text that follows the bullet.
Alternative textOptional. Text to be announced by assistive technology such as screen readers. Alternative text, also known as alt text, is a textual description of an image or video that is used when a person cannot see or access the visual image to help them understand its meaning.

In the sidebar, first select a text style configured in your brand guidelines, and then configure the design properties.

Media

Add an image or video. 10 media elements maximum per screen.

Set for the Media element:

Field or settingDescription
URL or UploadRequired. The URL of the image or video to display. URLs must be HTTPS and accessible by your mobile audience.

If your Airship plan includes CDN support, you can also upload media or select from previous uploads in your project’s media library. See Insert media in message content in Media library.

Video displays in landscape mode and does not start until a user selects the Play button. (Orientation and behavior are different for background video.) Video is not supported in Story mode.

Alternative textOptional. Text to be announced by assistive technology such as screen readers. Alternative text, also known as alt text, is a textual description of an image or video that is used when a person cannot see or access the visual image to help them understand its meaning.
Add actionOptional. The behavior that occurs when a user taps/clicks the image. The option appears after providing a URL or upload. Not supported for video. The click/tap can also add or remove 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. Tags are case-sensitive., emit a 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 Events API. They can contain properties that you can use to personalize messages., and/or opt a user 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.. Follow the steps in Actions for in-app experiences. iOS SDK 18.12+Android SDK 18.4+
Action: Scene behaviorOptional, appears only when an action is set. Determines how the Scene behaves when a user taps the image: No action, Next screen, Previous screen, Dismiss (closes the Scene), or Dismiss and cancel Repeat (closes the Scene and overrides the Repeat setting).

Scene behavior is not available when the action is Next, Previous, or No Action. The actions Dismiss Message, Preference Center, and Deep Link have Scene behavior options Dismiss and Dismiss and cancel Repeat only.

Action: Reporting labelRequired. A label to differentiate clicks/taps for the image in reporting.

By default, clicks/taps on elements with a configured action are reported using the In-app button tap event in the format button-tap-<button_action>--<button label>, where <button label> is the visible text on the element. When you enter your own reporting label, it replaces that text in the event name.

For example, if you enter Cat socks55 for the Submit Responses action, the event in reporting is button-tap-submit_feedback--Cat socks55.

Reporting labels support 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..

NPS

Add a Net Promoter Score (NPS) survey. The survey presents a question with a 0-10 answer scale that measures how likely users are to recommend your brand or product. Use it to gauge overall sentiment (relational NPS) or feedback on a specific experience like booking a flight (transactional NPS).

Scenes support a single NPS survey. You must also configure a Button or Media (image only) using the Submit Responses action. NPS is not supported in Story mode.

The device preview only displays settings for the unselected state, so you should verify the appearance of the selected state by testing on an actual device.

Set for the NPS element:

Field or settingDescription
QuestionRequired. The question that should be answered by the user. The question text also functions as the content description, which is announced by assistive technology such as screen readers.
LabelsRequired. A description of each end of the 0-10 scale. For example, “Not at all likely” and “Very likely.”
RequiredOptional. Makes answering the question a requirement for making the Submit Responses button or image active. Check the box to enable.

In the sidebar, first select a text style configured in your brand guidelines, and then configure the design properties.

Question

Add a question with a field where users can enter their own answers, or add a single or multiple choice question with answers users can select.

Scenes support up to 10 questions. You must also configure a Button or Media (image only) using the Submit Responses action. Questions are not supported in Story mode.

Set for the Question element:

Field or settingDescription
Question typeRequired. Open questions are followed by a text field where users can enter a response. Single Choice questions are followed by radio buttons for selecting one of multiple answers you provide. Multiple Choice questions are followed by check boxes for selecting one or more answers you provide.
QuestionRequired. The question that should be answered by the user. The question text also functions as the content description, which is announced by assistive technology such as screen readers. In Performance AnalyticsA customizable marketing intelligence tool that provides access to reports and graphs based on engagement data., it appears as the Survey Question.
RequiredOptional. Makes answering the question a requirement for making the Submit Responses button or image active. Check the box to enable.
AnswersRequired for single and multiple choice questions. The options a user can select to answer the question. To reorder answers, hover over an answer, select and hold the drag handle icon (), then drag and drop to a new position.
Store as attributeOptional, for single choice questions only. Enables storing answers as text or number attributesMetadata used for audience segmentation and personalization. Attributes 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.. To use this feature, you must first add the attributes to your project. See the steps following this table.
Randomize orderOptional for single and multiple choice questions. Presents the answers in random order when the Scene is viewed in the app. If you reordered the answers by dragging and dropping, that order is ignored when you enable randomized order. Check the box to enable.

To configure storing as attribute:

  1. Toggle to enable.
  2. Search for and select an attribute.
  3. Enter a value next to each answer. The value must match the attribute type (text or number). If empty, the response is not stored as an attribute. You cannot use the same attribute in multiple questions in a single Scene.

The design properties for the question and answers are in separate sections. In the sidebar, first select a text or input style configured in your brand guidelines, and then configure the design properties.

SMS

iOS SDK 19.6+Android SDK 19.9+

Add a field to register a submitted phone number as a channel or only collect it as data. Channel registration requires selecting a sender IDAn originating phone number or string identifier used to indicate who an SMS message comes from. Members of your audience subscribe (opt in) to each sender ID they want to receive messages from. to associate with the channels. Collection requires selecting which countries can submit phone numbers. The selected countries, or the country code associated with the sender ID, are listed in a dropdown menu and represented by the country’s flag. If more than one country is available for the field, the user must select one before entering their phone number.

You must also configure a Button or Media (image only) using the Submit Responses action. Use a Text element to add a title for the field and provide disclosures. See also Providing disclosures and other required information.

Important

When collecting phone numbers, record the collection or opt-in date for compliance purposes. Customers are responsible for providing their End Users with clear notice about how their phone numbers will be used, in line with specific use cases and regulatory requirements in the Customer’s jurisdiction.

Set for the SMS element:

Field or settingDescription
PlaceholderOptional. This text appears in the field before a user selects the field. It should describe the expected input. For example, “Phone number” or “Please enter your phone number”.
Accessibility descriptionRequired. Text announced by assistive technology such as screen readers when a user focuses on the field. Enter a description, or associate an existing Text element used as the field’s label.

Selecting text requires: iOS SDK 19.8+Android SDK 19.10+

Reporting labelRequired. This text appears as the Survey Question for question type sms in Performance AnalyticsA customizable marketing intelligence tool that provides access to reports and graphs based on engagement data..
Submission typeRequired. Determines whether the phone number is only collected as data or also registered as a channel. For channel registration, select at least one sender IDAn originating phone number or string identifier used to indicate who an SMS message comes from. Members of your audience subscribe (opt in) to each sender ID they want to receive messages from. to associate with the channels, one ID per country. For collection, select which countries can submit phone numbers.
RequiredOptional. Makes entering a phone number a requirement for making the Submit Responses button or image active. Check the box to enable.

In the sidebar, first select an input style configured in your brand guidelines, and then configure the design properties.

Text

Add a string of text. Scenes support up to 15 Text elements per screen.

When using a Text element as the label for an input field, set it as the field’s accessibility description. See Accessibility description in Email, SMS, and Text Input.

Set for the Text element:

Field or settingDescription
TextRequired. The text to display.
Add actionOptional. Makes the text function as a link. The link can be a web URL, Adaptive LinkA vendor-agnostic, shortened mobile wallet pass link that supports templates for both Google Wallet and Apple Wallet. When a user taps the link, Airship determines the user’s platform and generates the right pass for that platform., or Deep Link. Follow the steps for Web Page, Adaptive Link, or Deep Link in Actions for in-app experiences.
Action: Scene behaviorOptional, appears only when an action is set. Determines how the Scene behaves when a user taps the text link: No action, Next screen, Previous screen, Dismiss (closes the Scene), or Dismiss and cancel Repeat (closes the Scene and overrides the Repeat setting).

Scene behavior is not available when the action is Next, Previous, or No Action. The actions Dismiss Message, Preference Center, and Deep Link have Scene behavior options Dismiss and Dismiss and cancel Repeat only.

Action: Reporting labelOptional. A label to differentiate clicks/taps for the text link in reporting.

By default, clicks/taps on elements with a configured action are reported using the In-app button tap event in the format button-tap-<button_action>--<button label>, where <button label> is the visible text on the element. When you enter your own reporting label, it replaces that text in the event name.

For example, if you enter Cat socks55 for the Submit Responses action, the event in reporting is button-tap-submit_feedback--Cat socks55.

Reporting labels support 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..

Tip

You can add a link to your privacy terms in a text footer using the Web Page action. Privacy terms can help users understand your data collection practices.

In the sidebar, first select a text style configured in your brand guidelines, and then configure the design properties.

Text Input

Add a single-line text input field. You must also configure a Button or Media (image only) using the Submit Responses action. Use a Text element to add a title for the field.

Set for the Text Input element:

Field or settingDescription
PlaceholderOptional. This text appears in the field before a user selects the field. It should describe the expected input. For example, “Favorite film” or “Please enter your favorite film”.
Accessibility descriptionRequired. Text announced by assistive technology such as screen readers when a user focuses on the field. Enter a description, or associate an existing Text element used as the field’s label.

Selecting text requires: iOS SDK 19.8+Android SDK 19.10+

Reporting labelRequired. This text appears as the Survey Question in Performance AnalyticsA customizable marketing intelligence tool that provides access to reports and graphs based on engagement data..
RequiredOptional. Makes entering text a requirement for making the Submit Responses button or image active. Check the box to enable.
Store as AttributeOptional. Enables storing input as a text attributeMetadata used for audience segmentation and personalization. Attributes 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.. To use this feature, you must first add the attribute to your project. Toggle to enable, then search for and select an attribute.

In the sidebar, first select an input style configured in your brand guidelines, and then configure the design properties.