How to Configure the List Input Block in Chat Workflows
The Get List Input block displays a vertically stacked list of options so customers can compare richer items (text + description + optional image) and choose one item or multiple items during a Live Chat workflow.
Use this block when buttons or drop-downs are not enough—for example, when each option needs a description and (optionally) an image thumbnail.
Prerequisites
- An agent’s role must include the permission to Manage chat workflows within the Agent Portal.
- If you plan to store the selected value in a Chat API Field, ensure that the required chat field is created and added to a Chat Form. The Chat Form must belong to the same brand selected when creating the workflow. Workflow blocks can access only the chat fields mapped to the workflow’s brand. For detailed instructions, learn more on How to Add a Chat Field in a Chat Form.
The List Input Block in Chat Workflows is supported exclusively in live chat.
Add the Get List Input block
-
Open your workflow designer (for example, Conversation Created trigger for Live Chat).
-
Click Add Block (+) where you want to capture the user’s selection.
-
Navigate to: User Inputs → Interactive Layout → Get List Input.
Step 1. General Configuration
When you add the block, BoldDesk opens the configuration dialog with the General Configuration tab by default.
-
Block Name (optional, recommended)
Enter a descriptive name to easily identify the block in the workflow. -
Message (required)
- Enter the prompt displayed to the customer.
- Example: “What do you need help with?”
- The Message acts as the primary prompt in User Input blocks.
- Placeholder support: You can use placeholders to dynamically include relevant details in the prompt.
-
Optional
Enable this setting if customers should be allowed to proceed without making a selection.
(When enabled, users can skip the input block.) -
Click Next to proceed to Field Configurations.
Step 2. Field Configurations
In Field Configurations, you define how selections are stored, single vs multi-select, and whether the list is Static or Dynamic.
1. Input Mode Selection (Single-select vs Multi-select)
-
Allow users to select multiple list items
- Disabled → Single-select: Customers can select only one item
- Enabled → Multi-select: Customers can select multiple items
-
When multi-select is enabled, BoldDesk displays Selection Range options:
- Minimum — Set the minimum number of selections required
- Maximum — Set the maximum number of selections allowed
2. Choose where to store the user’s selection
You must define where the captured user input will be stored. The captured input can be stored in the following options:
- Chat API Field Name (stores to a configured conversation/chat field), or
- Temporary Field (stores to a workflow temporary field)
This matches the general behavior of User Input blocks: the response is stored either in a Temporary Field or in a API Field — not both.
Option A. Store to a Chat API Field
- Leave Use Temporary Fields unchecked.
- Select the required API Field Name.
Use this when you want the selected value persisted as a conversation field that can be used across workflows.
Option B. Store to a Temporary Field (workflow-only)
The Temporary Field input appears only when Use Temporary Fields is enabled.
- Enable Use Temporary Fields.
- Provide a Temporary Field name.
3. Choose List Type
In this step, define how the Get List Input block will populate its list items. This determines whether items are manually defined or dynamically sourced from workflow data.
Static List
Use Static when you want to define a fixed set of items directly within the block(for example, plans, curated offers, or menu options).
-
Click Add List Item
-
You can add up to 10 list items
Each list item includes:
- Label (required)
- Value (required)
- Description (required)
- Image URL (optional)
Dynamic List
Use Dynamic when list items should be generated at runtime from workflow data—typically from a Temporary Field containing an array/list of objects (such as a webhook response).
-
Select the Temporary Field Name that contains the list data.
-
Map the list item properties (Text, Description, Value, Image URL) to the corresponding object fields (based on your returned object structure).
- A maximum of 10 items is supported.
- Image URL must be in a supported format; invalid URLs will prevent saving.
- Text-length limits (Text/Description/Value) are enforced.
- Dynamic lists rely on data captured earlier in the workflow and stored in Temporary Fields. To learn how to store data in a workflow then store it in temporary fields, explore How to Set Up Webhook‑Based External License Validation in Chat Workflows.
Save-Time Validations
BoldDesk enforces validation rules to ensure all required configurations are completed before the block can be saved. Ensure the following:
General validations
- Message is required.
- A storage option must be configured:
- API Field Name (if Temporary Fields is disabled), or
- Temporary Field Name (if Temporary Fields is enabled).
Static list validations
- At least one list item must be configured.
- Each list item must include Text, Description, and Value.
- Value must be unique across all list items (duplicate values are not permitted).
Dynamic list validations
-
A Temporary Field Name must be selected as the data source.
-
Mappings must be configured for all required list item properties (Text, Description, and Value) to ensure proper data rendering at runtime.
Runtime behavior (end-user experience)
When the workflow reaches the block, the customer sees:
- Your configured Message
- A vertically stacked list of items
- Each item shows:
- Text
- Description
- Optional Image (if configured)
Selection behavior
- Single Select: customer selects one item only.
- Multi Select: customer can select multiple items and must satisfy Minimum/Maximum if configured.
Optional vs mandatory behavior
- If Optional is enabled, the customer can proceed without selecting anything and the workflow continues.
- If Optional is disabled, the workflow waits at this step until the customer makes a valid selection.
Dynamic mode runtime behavior (data-driven lists)
When Dynamic is used:
- BoldDesk reads the list from the configured Temporary Field Name. (Temporary fields must be created earlier in the workflow so the value exists at runtime.)
- BoldDesk transforms each object into a list item using your mappings.
- Runtime constraints:
- If more than 10 items exist, only the first 10 are displayed.
- If the mandatory property is empty, the object is skipped. Example: if “Text” is empty then the object is skipped.
- If no valid items remain, the workflow is stopped and an error is logged (prevents an empty UI).
Output storage (what gets saved)
After selection:
- Single Select: stores a single value
- Multi Select: stores an array of selected values
Where it is stored depends on your configuration:
- Chat API Field Name (conversation field), or
- Temporary Field Name (workflow-only; cleared after workflow ends).
Operational notes and edge cases
Deleting blocks
- If a parent block is deleted, the Get List Input block is reattached to the parent block of the deleted block to keep the workflow connected.
- If the Get List Input block is deleted, its configuration is removed. Any downstream references to its output field (temporary field or API field) must be updated before the workflow can run.
Switching Static ↔ Dynamic
Switching between Static and Dynamic triggers revalidation:
- Static list entries are ignored when Dynamic is enabled.
- Required Dynamic configurations must be reselected before saving.
Example use case — E-commerce add-on selection (Dynamic Multi Select)
Scenario: During assisted checkout, the workflow recommends add-ons and allows the customer to choose up to 3.
Message:
“Based on your selection, you can enhance your purchase with the following options. Please select the items you’d like to include.”
Configuration
- Enable Allow users to select multiple list items.
- Set Minimum = 0 if the selection is optional.
- Set Maximum = 3.
- Set List Type = Dynamic.
- Use a temporary field that stores the recommended products as an array of objects.
Sample webhook response
The webhook response should return a valid JSON array of objects. Each object should include the properties required by the Get List Input block, such as text, description, value, and optionally imageUrl.
[
{
"text": "Wireless Mouse",
"description": "Ergonomic design with long battery life.",
"value": "PROD_MOUSE_001",
"imageUrl": "https://example.com/images/wireless-mouse.png"
},
{
"text": "Laptop Sleeve",
"description": "Water-resistant sleeve compatible with 15-inch laptops.",
"value": "PROD_SLEEVE_002",
"imageUrl": "https://example.com/images/laptop-sleeve.png"
},
{
"text": "Extended Warranty",
"description": "Adds 2 additional years of coverage.",
"value": "PROD_WARRANTY_003",
"imageUrl": "https://example.com/images/extended-warranty.png"
}
]
Dynamic mapping in the List Input block requires the webhook response to be a valid JSON array.
Webhook response mapping
Store the webhook response array in a temporary field, for example:
tf_add_on_options
Then, in the Get List Input block, select the same temporary field as the dynamic list data source.
Temporary Field Name: tf_add_on_options
Dynamic list property mapping
Map the fields from each object in the temporary field to the list item properties.
Label → text
Description → description
Value → value
Image URL → imageUrl
The value field should be unique for each item because this is the internal value stored after the customer selects an option. Customers do not see the value field in the Live Chat widget. They see the mapped text, description, and image if configured.
Example items
After mapping the dynamic response, the customer sees options such as:
- Wireless Mouse — Ergonomic design with long battery life.
- Laptop Sleeve — Water-resistant sleeve compatible with 15-inch laptops.
- Extended Warranty — Adds 2 additional years of coverage.
The value field is stored internally after selection and can be used in later workflow steps.
| Customer sees | Stored value |
|---|---|
| Wireless Mouse | PROD_MOUSE_001 |
| Laptop Sleeve | PROD_SLEEVE_002 |
| Extended Warranty | PROD_WARRANTY_003 |
Result
The selected item values are stored as an array and can be used downstream for pricing recalculation and order summary.
For example, if the customer selects Wireless Mouse and Extended Warranty, the stored value may look like this:
[
"PROD_MOUSE_001",
"PROD_WARRANTY_003"
]
This stored array can then be used in later workflow steps to update the order summary, calculate the add-on price, or pass the selected item values to another API.
Example use case — Support topic routing (Static Single Select)
Scenario: A customer starts a live chat and needs to select the type of support they need. Since the support topics are fixed and do not need to be loaded from a webhook or temporary field, use a Static list.
This use case is helpful when you want to capture the customer’s intent early and route the conversation to the correct team.
Message:
“What do you need help with?”
Configuration
- Disable Allow users to select multiple list items.
- Set List Type to Static.
- Add each support topic manually using Add List Item.
- Store the selected value in a Chat API Field, such as
cf_support_topic, so the value remains available in the conversation details and can be used for routing, reporting, or downstream workflow conditions.
Example static list items
- Billing Support — Get help with invoices, payments, refunds, subscriptions, or billing-related questions. — Value:
Billing Support - Technical Support — Get help with product issues, errors, setup, configuration, or troubleshooting. — Value:
Technical Support - Account Access — Get help with login issues, password reset, verification, or account permissions. — Value:
Account Access - Product Information — Learn more about product features, pricing, plans, or general product details. — Value:
Product Information
Result
The customer selects one support topic, and the selected value is stored in the configured Chat API Field. The workflow then uses that value to route the chat to the correct team, such as Billing, Technical Support, Account Support, or Sales.
Frequently Asked Questions
-
What problem does the Get List Input block solve in BoldDesk Live Chat workflows?
The Get List Input block is used when you want a customer to choose from a rich list of options in a chat workflow—where each option can include a title (text), a description, and an optional image thumbnail. It’s best when buttons or dropdowns feel too limited for explaining each option. -
Where do I find the Get List Input block in the workflow designer?
In the Chat Workflow designer, add a new block and navigate to:
Add Block (+) → User Inputs → Interactive Layout → Get List Input.
You can place it anywhere in the workflow where you want to capture the customer’s selection, such as after a Conversation Created trigger. -
Can customers select one option or multiple options—and how do I control that?
Yes—this block supports both selection modes:- Single-select: customer can choose one item only (this happens when Allow users to select multiple list items is disabled).
- Multi-select: customer can choose multiple items (this happens when the option is enabled).
When multi-select is enabled, you can enforce limits using: - Minimum number of selections required
- Maximum number of selections allowed
-
Where is the customer’s selection saved after they choose an item via the “Get List Input” block?
The block saves the selection to one destination only, depending on how you configure it:- Chat API Field Name (saves the result into a configured chat/conversation field), or
- Temporary Field (saves the result into a workflow-only field)
You must choose one of these options. The same selection cannot be saved to both at the same time.