---
sourceDocument: Brazil Conversational Interfaces
sourceDocumentLink: https://www.servicenow.com/docs/r/conversational-interfaces

 Release :

    - brazil

ft:locale :

    - en-US

ft:publication_title :

    - Brazil Conversational Interfaces

ft:clusterId :

    - convint

bundleId :

    - convint

workflow :

    - Platform


---

# Carousel user input control

# Carousel user input control {#ariaid-title1}

Release version: Brazil  
Updated September 10, 2026  
![](https://www.servicenow.com/docs/portal-asset/ico-clock) 4 minutes to read  
Use the Carousel user input control in a Virtual Agent topic to present a prompt and a horizontal series of labeled images. The user can select a single item from the carousel.
Tip:  
If you want to change the default number of listed items per page, you can modify the com.glide.cs.picker_page_limit system property. The default value is 10.

## Carousel input control properties {#va-carousel-input__section_ftv_zb2_d1c}

Note:  
The Carousel user input control is not supported in ServiceNow Otto in Virtual Agent.  
{#va-carousel-input__table_qmh_lgk_h1c__entry__2}

| Property | Description |
|-|-|
| Node name | Name that identifies this node in the topic flow. |
| Variable name | Name of the variable that stores the user response to this prompt. The variable name is automatically created from the Node name property. |
| Allow automatic slot-filling | Toggle to allow this node's value to be automatically set by other nodes, as well as during topic discovery. When this toggle is activated, the Detail description field changes from dynamic Data Pill Picker and script options to a static text field. |
| Detail description | Description of the information that you need from users. If the Allow automatic slot filling toggle is deactivated, you can create a dynamic detail description by selecting the Data Pill Picker icon ![]() to define conditions, or select the Open Editor icon ![]() to enter a script. If the Allow automatic slot filling toggle is activated, you can only enter a static description. |
| Define carousel items | Use a script to create items for selection in your carousel. The script should return an array containing one or more items. See the Example carousel item expression section in this topic. |
| Advanced (optional) ||
| Enforce user prompt ||
| Enforce user prompt | Toggle to open a field for a custom message shown to the user instead of the message generated by the large language model (LLM). You can create custom messages in plain language, input a script, or define conditions with the data pill picker. |
| Validation | Add a script to validate the user input. For example, check if the user entered a valid email address. |
| Additional instructions for LLM | Further instructions to the LLM, such as adding data formats, restrictions, or default values for user responses. You can create additional instructions in plain language, input a script, or define conditions with the data pill picker. |
| Hide or skip this node ||
| Conditionally show this node if | No-code condition statement or low-code script that specifies a condition for presenting this node in the conversation. The condition must evaluate to true. This field is not applicable when the Carousel node is used within the Input Collector node. |
| Allow user to skip this node if | No-code condition statement or low-code script that specifies a condition for letting users skip this node in the conversation. The condition must evaluate to true. You can set this field using either the condition builder or a script. If users enter a value such as <kbd class="ph userinput">skip this step</kbd> when the conditions do not allow skipping, they receive a message saying the node cannot be skipped and are re-prompted to provide an answer. |
[ ]

{#va-carousel-input__table_qmh_lgk_h1c}

## Example Carousel input control {#va-carousel-input__section_szy_zc2_d1c}

{#va-carousel-input__table_tzy_zc2_d1c__entry__2}

| Carousel properties | Carousel prompt |
|-|-|
|   | Figure 1. Carousel prompt |
[ ]

{#va-carousel-input__table_tzy_zc2_d1c}

## Example carousel item expression {#va-carousel-input__section_hv4_5xl_vdb}

    (function execute() {
        var options = [];
           options.push(
                {
                    'Name': 'Item 1',
                    'Value': 'item_1',
                    'Description': 'Acme keyboard model 200',
                    'Body': 'https://images.pexels.com/photos/688666/pexels-photo-688666.jpeg'
                    'Card_name': 'AcmeCard'
                    'Card_data': {"identifier":"IT hardware and software","header":"Acme keyboard model 200","description":"The model 200 keyboard is a ten-key-less keyboard."}
                }
           );
           options.push(
                {
                    'Name': 'Item 2',
                    'Value': 'item_2',
                    'Description': 'Acme keyboard model 300',
                    'Body': 'https://images.pexels.com/photos/916472/pexels-photo-916472.jpeg'
                    'Card_name': 'AcmeCard'
                    'Card_data': {"identifier":"IT hardware and software","header":"Acme keyboard model 300","description":"The model 300 keyboard is a full-size keyboard with a ten-key pad."}
                }
           );
           return options;

    })()

The script in the Carousel Item Expression property defines and returns an array containing the items that appear in your carousel. The elements of this array must contain `name`,
`value`, and `body` keys. In the example, the script creates an array called `options` and adds two elements, each with the required keys. The images here are hard-coded as an
example.
{#va-carousel-input__table_bs1_ctp_vdb__entry__2}

| Key | Description |
|-|-|
| Name | Name of the carousel item. This name is shown below the image on the carousel. |
| Value | Value for the item. When a user selects a carousel item, this value is stored in the variable named in the Variable name property. |
| Description | Text string that describes the carousel item. The description is shown below the image name. A carousel with more than three items displays left and right arrows for scrolling through the images and a Select button under each item. If a description is over 140 characters, users can expand the content. |
| Body | Image used in the carousel item. The value is a URL for an image file. |
| Card_name | Text string header identifying the card shown in the carousel. |
| Card_data | Array containing text strings to be presented on the card. Values include identifier, header, and description. |
[Table 1. Example code key]

{#va-carousel-input__table_bs1_ctp_vdb}

## Channel support {#va-carousel-input__section_dlw_3th_yrb}

{#va-carousel-input__table_ew4_kmx_rsb__entry__3}

| Channel | LLM support | Constraints |
|-|-|-|
| Microsoft Teams | Not Supported | None. If the carousel contains more than 10 items, users must select Next to review the remaining items. |
| Slack | Not Supported | None |
| SMS Twilio | Not Supported | Not applicable |
| WhatsApp | Not Supported | None |
| Google Chat | Supported | None |
[Table 2. Channel support for the Carousel user input control]

{#va-carousel-input__table_ew4_kmx_rsb}

