> For the complete documentation index, see [llms.txt](https://help.wotnot.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.wotnot.io/build/action-blocks/buttons.md).

# Buttons

Buttons offers a rich UX for users by showing them a list of predefined options to choose from. This makes the chat more conversational.

<figure><img src="/files/lkfDUwamdGtaUxpH5f2F" alt=""><figcaption></figcaption></figure>

The button action block is made up of 3 things:

1. Question to ask
2. Options to be displayed
3. Saving user input

## Question

A question that explains the user to choose from the list of buttons displayed.&#x20;

For example, “What do you need assistance in?”.

## Options

Along with the question, we show a list of pre-defined options that the user can choose from.&#x20;

These buttons are generally of two types:

### Branch buttons

Adding a branch button, adds a grey color node on the canvas. Using this node you can create different paths for each button in the chat flow.

For example, you can have a question like “How often do you shop online?” with the buttons,

* Every other day
* Once in a week
* Once in a month
* Rarely

{% hint style="info" %}
You can add a maximum of 10 buttons. To add more buttons, use the [Dynamic data](/build/action-blocks/dynamic-data.md) action block.
{% endhint %}

### URL buttons

Adding a URL button, allows you to open a webpage when that button is selected.&#x20;

For example, you can have a button which says “Read case study” which when clicked opens a webpage on a new tab.&#x20;

{% hint style="info" %}
You can also use 'mailto:<hello@example.com>' and 'tel:+919999999999' to open the email client or phone dialer when the button is clicked.&#x20;

![](/files/iXQ2Ea7n3MR7X4QGrjEn)

![](/files/k9X4KSwoDIRrWKie7mTc)
{% endhint %}

### Variables

Variables are used to store the button selected by the user, so you can reference it for later use.&#x20;

You can either choose an existing variable from the dropdown or create a new one.

[Learn more](/build/interface/variables.md)<br>

## Some more button settings&#x20;

### Search

Enabling it shows a searchbox on top of the list of buttons, so that users can easily find the option they are looking for.&#x20;

This is really helpful when you have a huge list of buttons.

<div align="left"><figure><img src="/files/YT3ZYmKRXStW3yypVarX" alt="" width="368"><figcaption></figcaption></figure></div>

### Multi-select

Allows the user to select multiple buttons at a time. After choosing the required buttons, user would need to hit “Send” to proceed to the next step in the chat flow.

When using multi-select, the flow will always route to the “Default” branch.

When using variables for multi-select, all values will be stored in a comma separated format i.e. “Fever, cough”.&#x20;

<div align="left"><figure><img src="/files/6QvnlSsjAoMzwm9GkUVI" alt=""><figcaption></figcaption></figure></div>

### Buttons layout

Renders the button in the specified format:

* **Horizontal** – Horizontal placement of buttons as per available space.
* **Vertical** – Each item is displayed in a new line.

<figure><img src="/files/xFzXDHO89YQ6ltIixpCh" alt=""><figcaption></figcaption></figure>

### Buttons sorting

You can choose to sort the list of buttons in the following order:

* A - Z – In an ascending order starting from A.
* Z - A – In a descending order starting from Z.
* Random – Button list will be randomized
* As defined – The order as displayed in the action panel.

### Free text input

By enabling "Enable free text" option, users can either choose from predefined buttons or type their own response in the chat input. Also, on the canvas a new "Free text" node will be added, which can be connected to an [AI agent](/build/action-blocks/agent.md) action block for AI-generated responses.

This allows for more natural, two-way conversations, and any free text entered can be handled by an AI agent for dynamic responses.

<figure><img src="/files/gp6RuVbVOWhWTdc6iLUl" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.wotnot.io/build/action-blocks/buttons.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
