Skip to main content

Send a contact an interactive message

4-minute readLevel: BeginnerLast Updated: October 2025

Interactive messages let you send messages that include interactive elements—such as buttons, list menus, or a location request—so your end users (chatbot users) can engage in dynamic conversations.
This is especially useful for:

  • Enhancing the user experience: Buttons or lists reduce typing effort for end users.
  • Supporting NGOs in data collection: Interactive inputs help gather cleaner, structured data that’s easier to categorize and validate.

Note: You must first create an interactive message by following the steps outlined here. Only then can you use it inside the flow editor as part of a chatbot flow.
This document covers:

  1. Types of interactive messages
  2. How to create an interactive message
  3. How to use an interactive message in the flow editor

Types of interactive messages

  1. Reply Buttons – Include up to three clickable buttons within a single message.


    Reply buttons preview
    Important guidelines:
    • Using emojis: Emojis are allowed on buttons. If you use them, copy the entire button text (including emojis) when configuring Wait for Response. Use the “Phrase” match to validate the full response string. See the Wait for Response documentation.
    • Character limit: Per Meta guidelines, each button label can be a maximum of 20 characters. For example, “Yes I want to participate” (26 characters) is not allowed.
    • Markdown restrictions: Markdown characters like * and _ are not allowed in button labels. Using them will trigger “Character policy violated”.
    Character policy violation example
  2. List Message – Present up to 10 options in a list within a message.



    Important guidelines:
    • Lists add extra steps for users: (1) open the list, (2) select an option, (3) confirm and send.
    • Emojis are not allowed in the title field of list options.
    • Meta limits: up to 24 characters for list titles and 60 characters for descriptions.
    List message preview
  3. Location Request – Ask the end user to share their location.



    Location request preview

All interactive messages follow this structure: Message body + Interaction method (buttons, list options, or a location request). You cannot send only the interaction options without a message body.


Steps to create an interactive message

Step 1: Log in to Glific.
Step 2: From the left menu, click Quick ToolsInteractive msg.

Quick Tools menu

Step 3: Click + Create (top right).

Create interactive message button

Step 4: On the Add a new Interactive message page, fill in the details below.

Add new interactive message form

  • Type – Choose Reply Buttons, List Message, or Location Request.

    • Reply Buttons
      Reply buttons form
      1. Enter the text for the first button.
      2. Click + to add the second (and third) button.
      3. (Optional) Select an Attachment Type.
      4. (Optional) Provide an Attachment URL. If Allow dynamic media is checked, you can use an expression to fetch the media URL dynamically.
    • List Message
      List message form
      1. Enter the List Header—the text shown on the list button (see the preview).
      2. Enter the Title for List 1 (see how titles and items appear in the preview).
      3. Enter the Title for the first item in List 1.
      4. Enter the Description for the item.
      5. Click Add list item to add more items.
      6. Click Add list to add another list section.
    • Location Request
      Location request form
      1. Write the message that will appear with the Send Location button.
      2. To learn how to convert shared coordinates into meaningful place data, see Google Maps API for reverse geolocation.
  • Title – A name for easy search. If you check the box, this title also appears at the top of the message for end users.
  • Message – The content you want to send, along with the chosen interaction (buttons, list, or location request).
  • Footer – Optional subtext displayed at the bottom of the message.
  • Tag – Create or select a tag to make future searching and categorization easier.
  • Translate – See Using interactive messages in different languages.

How to add interactive messages in the flow editor

Step 1: Create a flow.
Step 2: When adding a new node, select Send the contact an interactive message as the action type.
Step 3: Use the dropdown to choose the interactive message you created. You can also type its title to filter the list.

Flow editor interactive message selection

Step 4: Click OK.
See the sample flow.

Using interactive messages in different languages

Step 1: Create the interactive message in your default language (see steps above).
Step 2: After saving, click Translate.

Translate button

A pop-up appears. Selecting Auto translate the content will translate the message box text into your preconfigured languages.

Auto translate popup

Step 3: The message content (including list header, list names, list options, and button options) is translated for all specified languages. The language-specific interactive message will automatically appear for contacts whose profile language matches.

Translations preview

Please verify and, if needed, edit the translated fields before saving.
Step 4: Click SAVE.
See the sample flow.

Note: It’s best to add translations while creating the interactive message. You can also add them later by switching languages in the flow editor and updating category/rule translations. Adding translations during creation—either via auto-translate or manually—automatically populates the corresponding category and rule translation fields.

Steps to add translations

If translations are to be added after creating and using the interactive message in the flow editor, they need to be updated in two places:

  • In the interactive message – to make them visible to end users.
  • In the flow editor – to ensure the flow logic remains intact.

Step 1: Click on the edit icon on the interactive message node.

Screenshot 2025-10-29 at 8 52 11 PM

Step 2: The edit page of the interactive message will open. From the top-right corner, click on the language for which you want to add translations.

Screenshot 2025-10-29 at 8 53 00 PM

Enter the translations for the message body and the buttons/list items. Repeat this process for each language you wish to include.

Screenshot 2025-10-29 at 8 53 21 PM

Step 3: Click on Save

Step 4: On the flow editor, navigate to the languages on the top right corner.

Screenshot 2025-10-29 at 8 54 04 PM

Step 5: Select the language you wish to add translations for. The below screenshot shows the Hindi language view.

Screenshot 2025-10-29 at 8 54 34 PM

Note: The values entered under validations such as has only the phrase, has a number, etc. act as rules to verify whether a user’s response matches the expected input. These are grouped into categories, as shown below. Depending on the design, these categories may or may not be visible to the end user. Learn more about Wait for Response here.

Screenshot 2025-10-29 at 8 55 09 PM

Click on the Wait for Response node linked to the interactive message for which you want to add translations.

In the Rule Translations tab and enter the corresponding translations for the button text. In cases where the validation type is set to has any of the words, you can add the translated terms as comma-separated values, and continue similarly for other validation types.

Screenshot 2025-10-30 at 8 44 40 AM

In the Category Translation tab, you can add translated category names as per your design requirements. If no translations are provided here, the system will use the default values when referenced, for example, in the above case, if hindi category translations are not added, when the category name is referenced as @results.topic_selected.category. In Hindi, the default category names (which are in english) will be picked.

Screenshot 2025-10-30 at 8 44 58 AM

Step 5: Click on Ok

Step 6: Test the flows in the languages for which the translations were added, to make sure, they have been added correctly and the flow does not break/terminate.