Creating In-App Message

In-App messages are messages that are displayed to the user while they are using a mobile app. You can define the content of the message and the rules for its display to target the message to a specific audience.

šŸ“˜

Important

To send In-App messages from our platform, you need to Install SDK.

To create a new message:

  1. Go to the Messages → Messages → In-App section. Click the New In-App button.

    In-App Messages page with the Messages menu item and New In-App button highlighted
  2. Select the message type:

  • Fullscreen
    • blocks app content
    • closes by pressing the cross icon
  • Popup
    • blocks app content
    • closes when tapping outside the message or by pressing the cross icon
  • Slideup
    • has top or bottom positioning
    • does not block app content
    • closes by swiping left/right and up/down depending on the positioning or by clicking on the cross icon
  • Floating Bar
    • has bottom positioning
    • does not block app content
    • closes with a swipe left/right/down or by pressing the cross icon

All of the above message types are created in a drag-and-drop editor. You can also use the HTML editor to get more options for customizing the message content.

Create new In-App message dialog with five message type options: Fullscreen, Popup, Slideup, Floating Bar, and HTML editor
šŸ“˜

Note

All In-App message types are supported in SDK versions starting from Android 2.5.0/iOS 2.5.0.

Working in the Drag-and-drop Editor

Let's look at creating a full-screen message - the functionality of other In-App types is identical.

The components for building the message are located in the left-hand side panel. To add a component, drag and drop it to the editor field.

In-App drag-and-drop editor with the Add component panel on the left and the Overlay settings panel on the right

Columns and Container can contain other components, except for the Floating image component.

Floating image overlays other components. It can be used, for example, to emphasize a specific element.

In-App editor with the Floating image component highlighted, showing a floating icon overlaying the message and its Size and Image settings

The right-hand side panel of the editor contains a menu with editing options for each component. Click the relevant component to display its menu.

To return to the main layer menu of the editor, click anywhere outside the components.

In-App editor with the Container component selected, showing its floating toolbar and the settings panel on the right

The following settings are available for the components.

Action on click

Expand the +Add Action menu and choose the action to be performed when clicking on the element:

  • Open URL
  • Use click tracking
  • Close the current message

You can add one or several actions.

In-App editor Action on click section with the Add action dropdown open, showing Open URL, Close current message, and Use click tracking options

Align Inner Elements

Select the appropriate icon for aligning elements within the container or columns.

Enter the value for the distance between elements in the corresponding field. The minimum value is 0.

Container settings panel with the Align inner elements section highlighted, showing an alignment grid and Distance between elements field

Size

Expand the drop-down lists and select the necessary sizes from the following options.

For width:

  • Fixed width. The minimum value is 20.
  • By container width.
  • By content width.

For height:

  • Fixed height. The minimum value is 20.
  • By container height.
  • By content height.
Container settings panel Size section with the width and height dropdowns highlighted, showing Fixed height, By container height, and By content height options

Columns

For the Columns component, you can choose the following settings:

  • Equalize width. This option sets equal width for all columns.
  • Number of columns. Select the number of columns from 1 to 8.
  • Spacing between columns. Enter a number in the field to set the distance between columns in pixels. The range is from 0 to 40.
Container settings panel Columns section highlighted, showing Equalize width, column count options, and Distance between columns field

Stack Vertically in Portrait Mode

When this option is enabled, the columns are displayed vertically when the message is viewed in portrait mode.

Container settings panel with the Stack vertically in portrait mode toggle highlighted, turned on

Background

To select the background of the component, activate the Background slide button and choose one of the following options:

  • Image to upload your pictures or select from the built-in library.
  • Color to choose the desired color from the palette or enter its code manually.
Container settings panel with the Background section highlighted, toggle on and Color option selected

Background Blur

The acceptable values for background blur range from 0 to 100.

Container settings panel with the Background blur toggle highlighted, turned on, showing a blurred background in the preview

Stroke

Activate Stroke to set formatting for the outer contour of the Container and Columns components. You can set the same stroke format for all sides at once or for each individually by choosing:

  • Stroke Type: solid, dashed, dotted.
  • Thickness: Acceptable values are from 0 to 100.
  • Color: Choose it from the palette or specify manually.
Container settings panel with the Stroke section highlighted, showing Each side selected with solid line style, thickness, and color fields

Shadow

Activate the slide button to set shadows for the component. The following settings are available:

  • Vertical (x) and horizontal (y) spread.
  • Blur.
  • Size.
  • Color.

Hover over each value field to see its minimum and maximum value.

Button settings panel with the Shadow section highlighted, showing X, Y, Blur, and Size fields

Round Corners

This option allows you to set the value for rounding the component's corners.

Button settings panel with the Round corners section highlighted, showing four corner radius fields set to 15

Text Formatting

Select the component that contains text to access the formatting menu.

Text component settings panel highlighted, showing Text style, Font family, Font size, Text color, Text case, Text align, and spacing options

Custom Fonts

In the text formatting menu, open the Font field and switch to the My fonts tab to add and use your own fonts, matching your brand style without switching to the HTML editor.

Click + Add font and fill in the font parameters:

  • Font name
  • URL with CSS file
  • Family

You can get these parameters from Google Fonts or another font library — the process is the same as for the Email editor.

Once added, the font appears in the My fonts list, where you can edit or delete it, and becomes available for selection in the Font field for any text component.

šŸ“˜

Note

Some email and app clients may not support custom fonts or fail to load them. In that case, a similar system font is used as a fallback.

Icon

For the Button component, you can add an icon with the following parameters:

  • Size
  • Alignment
  • Distance before text
Button settings panel with the Icon section highlighted, showing Size, alignment options, and Distance before text fields

Hover Effects

Activate the slide button to make the button more interactive when hovered over or tapped.

Button settings panel with the Hover effects section highlighted, showing Text color, Stroke, Background, and Shadow options for the hover state

Loop Animation

The Loop animation option allows you to choose the following parameters for the Button component from the drop-down lists:

  • Animation type.
  • Number of repetitions.
Button settings panel with the Loop animation section highlighted, showing Wobble animation type and loop count set to 3

Slider

Drag the slider from the left-side panel and drop it into the message template. Set up slider and Manage slides buttons will appear on the right-side panel.

In-App editor with a Slider component added, showing Set up slider and Manage slides buttons on the right panel

In the slider setup window, you can set up navigation buttons, indications, slideshow animation, and the slider's general design.

Slider setup panel showing slider type options, Navigation buttons, Indication, Slideshow animation, and Loop sides toggle

Manage slides’ order, add, duplicate, or rename slides after clicking the Manage slides button.

Slides panel listing Slide 1 and Slide 2 with an Add slide button below

Also, you can add a slide by clicking on the + sign.

In-App editor slider with the plus sign for adding a slide highlighted next to the slide counter

To change or edit an image, click on it in the template, after which it will appear in the right settings panel. Clicking on the image from the slider in the settings panel opens the editing window.

In-App editor slider settings panel with the slide image highlighted, showing Change and Edit buttons in the bottom right

Use navigation buttons to switch between the slider’s images.

In-App editor slider showing left and right navigation arrow buttons highlighted beside the slider component

Set the action on click:

In-App editor slider settings panel with the Add action dropdown open, showing Open URL, Close current message, and Use click tracking options

Context Menu

A Context menu becomes available upon right-clicking on the message component with the following actions:

In-App editor right-click context menu on a component, showing Copy, Duplicate, Cut, Delete, and floating image layering options
  • Copy
  • Duplicate
  • Cut
  • Delete
  • Put behind all floating images
  • Put in front all floating images
  • To container

Close button

The Close button allows the user to close the message.

You can use standard and custom icons with settings for color, size, and positioning on the screen.

Close button settings panel with Show close button enabled, showing icon style options, color, size, and position fields
šŸ“˜

Note

The position of the Close button is calculated from the top-right or top-left corner of the message.

Message Orientation

The message can be displayed in Portrait or Landscape mode, depending on how the user holds the device (vertically or horizontally).

To see how the message will display on the device, click the Orientation icon at the editor's top.

In-App message preview with Portrait and Landscape toggle buttons at the top, showing the message displayed in portrait mode

Ā Press the Save button on the top panel of the editor to apply the changes after configuring the In-App message.

In-App editor top panel with the Save button highlighted, showing the Overlay settings panel on the right

Fill in the New Message field. This field is available for searching messages in the general list; users will not see it.

Message details page with the New message name field underlined, showing In-app parameters and a phone preview of the message

HTML Editor

This method of creating In-App messages is more labor-intensive and requires specific technical skills in working with HTML and CSS; however, it provides a more flexible approach to customizing message content.

Fill in the In-app name field.

HTML editor top panel with the empty In-app name field highlighted

HTML Settings

Open the HTML tab.

HTML editor panel with the HTML tab highlighted, showing an empty code editor with placeholder text

You can put your HTML code or use our base code.

Using base code

Copy and paste the base HTML into the code window. Insert your code instead of Your code goes here text.

HTML editor code window with base HTML code pasted in, showing head and style tags and the Copy base HTML button highlighted

Custom HTML markup rules

  1. Use buttons instead of anchors
🚧

Attention

Usage of Anchor HTML elements is forbidden.

  1. Set data attributes for the clickable element

Each clickable element must have the required data attributes.

  • Code of the button that should open the URL:
- \<button  
                  data-target-component-id="1c92f19e-c994-11ed-afa1-0242ac120002"  
                  data-sys-action-type="OPEN_URL"  
                  data-sys-action-params="{"url":"<https://google.com"}">  
                  class="button">  
  </button>
  • Code of the button that should close a widget:
- <button
                  data-target-component-id="c740db99-cfbb-4857-b790-cb5631c33255"
                  data-sys-action-type="CLOSE_WIDGET"
                  class="close-button">  
  </button>
Attribute nameAttribute value
data-sys-action-typeOne of action:
  • CLOSE_WIDGET
  • CLICK
  • OPEN_URLCLICK and OPEN_URL are counted in the statistics as clicks, CLOSE_WIDGET — no.
data-target-component-idGenerate a unique element’s UUID (e.g., using Online UUID Generator )

Use Margin Top 50 px (approx) so the content does not overflow the iOS devices panel.

CSS Settings

Open the CSS tab and add CSS rules in the code window.

HTML editor panel with the CSS tab highlighted, showing an empty code editor with placeholder text

Adding CSS code is optional, but custom HTML is usually displayed incorrectly without CSS.

After adding the code, press the Save and exit button on the top panel of the editor to apply the changes.

HTML editor code window with sample HTML code entered and the Save and exit button highlighted

Messages created using the HTML editor are marked with the corresponding icon.

Messages list showing an In-App message labeled with an HTML tag icon next to its name

Velocity Personalization

Supports:

  • resolving any context key as a root-level variable, for example $eventParam;
  • fallback syntax ${key|'altKey'}, which lets you use an alternative key when the primary key is unavailable;
  • contact context aligned with other communication channels, including case-insensitive access to contact fields, for example $firstName and $FirstName.

These features are available for In-App messages that users see after clicking a mobile push notification.

Multilingual Version (optional)

You can create multiple language message if this option is available in your pricing plan. Click the globe icon in the editor's top panel, specify the default language, and add language versions.

In-App editor top panel with the language globe icon highlighted, showing the Overlay settings panel on the right

When adding a language version, the automatic translation option is enabled by default. To translate manually, disable it.

Language selection dropdown with the Translate automatically toggle highlighted, turned on, and a list of available languages
šŸ“˜

Note

The language is determined by the device language, and not by the one written in the contact card.


Did this page help you?