# How to create a button

## Working with button tabs

<div data-with-frame="true"><figure><img src="/files/Yej9TbkQlvOX9BpX7tZL" alt="" width="563"><figcaption></figcaption></figure></div>

Buttons can be created in two ways: by using the **button settings within a block**, or by using **connection between blocks**.

The first option is more functional and convenient to work with.

<figure><img src="/files/WOgoIUI6T3k58eMsNCcJ" alt="" width="563"><figcaption></figcaption></figure>

To create buttons directly from a block, open the desired block and go to the **Buttons** section:

<div data-with-frame="true"><figure><img src="/files/35nIf8UgKtokPTQxBIkV" alt=""><figcaption></figcaption></figure></div>

After clicking "+ Add button", enter the display text for the button in the "Text" field.

<div data-with-frame="true"><figure><img src="/files/b2pAfVZ0qpxUFG1SiFp0" alt="" width="563"><figcaption></figcaption></figure></div>

Next, select the button function.

To use a button for a simple transition to another state (without payments, phone requests, etc.), keep the function set to **"Default"**.

{% hint style="info" %}
**Learn more about other button functions in our articles:**

* ["Request the phone number" button](/chatbot/builder/buttons/phone.md)
* [Payment button](broken://pages/A0Jr3nKVSXNnpRiUXOFG)
* [Request location button](/chatbot/builder/buttons/request-geolocation-button.md)
* [Share button](/chatbot/builder/buttons/share-button.md)
* [Callback button](broken://pages/gr620GqOkTdMGddudMMV)
* [Web App button](/chatbot/builder/buttons/webapp.md)
  {% endhint %}

Click the **"Add"** button to confirm and add it to the block settings.

<div data-with-frame="true"><figure><img src="/files/MenAW0Wf80PYciQMJwhs" alt="" width="563"><figcaption></figcaption></figure></div>

There are two main types of buttons:

* **Keyboard buttons:** Appear below the input field and disappear after being pressed or when a message is typed.
* **Inline buttons:** Appear within the message bubble and remain visible after being pressed.

Some messengers also support an **Auto** mode, which automatically selects the best button type for the platform.

<div data-with-frame="true"><figure><img src="/files/vV1bQHMjtmoB4CWQhI1v" alt=""><figcaption></figcaption></figure></div>

The bot handles presses for both button types identically. You can add more buttons in two ways:

1. Click the **"+"** button to the right of an existing button.

<div data-with-frame="true"><figure><img src="/files/mUk15ZOx0pewJxQPRC9t" alt="" width="563"><figcaption></figcaption></figure></div>

**Result:** The new button appears on the same line.

<div data-with-frame="true"><figure><img src="/files/6HEfc0ADdbw7XnlN61cX" alt="" width="563"><figcaption></figcaption></figure></div>

2. If you click **"+ Add button",**

<div data-with-frame="true"><figure><img src="/files/4HohK6J8XOdDRaQ32aOY" alt="" width="563"><figcaption></figcaption></figure></div>

then the new button will be added below the previously created one:

<div data-with-frame="true"><figure><img src="/files/mZ3oH2nfbx6kcpUCDl92" alt="" width="563"><figcaption></figcaption></figure></div>

You can rearrange buttons and align them in a row by simply dragging a button to the desired position.

<div data-with-frame="true"><figure><img src="/files/2FByYbmhm4AQDeh6zDXg" alt="" width="563"><figcaption></figcaption></figure></div>

You can also easily rearrange buttons in this field by holding the left mouse button and dragging a button to a new position.

{% hint style="success" %}
**Please note!**&#x20;

To display a connection between blocks as a keyboard button instead of creating a separate button inside a block, follow these steps:

1. Enable the **"Show connections as buttons"** checkbox.
2. Set a trigger on the connector that links the two blocks.

The connector will then be displayed as a keyboard button to the user.

For a detailed guide, please refer to the article: [**"Connection with a button"**](/chatbot/builder/connections/buttons.md).
{% endhint %}

This version assumes the user needs to create a manual button while connection-buttons are disabled.

> 1. In the **Advanced** settings menu, locate the **"Show connections as buttons"** toggle and ensure it is turned **OFF**.
> 2. Now, click **"+ Add button"** to create a standard button within the block.

<div data-with-frame="true"><figure><img src="/files/xyW2B0I3CXmQzY6Npv1o" alt="" width="563"><figcaption></figcaption></figure></div>

### How to properly write a button label

When creating a button, you always choose the most engaging and attractive labels to attract customers. However, you must follow this rule: <mark style="color:red;">**the button label should not contain quotation marks**</mark>**.**

<mark style="color:red;">**Incorrect variant:**</mark>

<div data-with-frame="true"><figure><img src="/files/wg2s1mw2vfvuZvku0yXr" alt="" width="563"><figcaption></figcaption></figure></div>

If you need to emphasize words, you can use single quotation marks.

<mark style="color:green;">**Correct variant:**</mark>

<div data-with-frame="true"><figure><img src="/files/PnteAI28X4recatiMJRv" alt="" width="326"><figcaption></figcaption></figure></div>

You can also make buttons more vivid and colorful by using emojis:

<div data-with-frame="true"><figure><img src="/files/DPnU7FEvNSvnKhmFWZUO" alt="" width="354"><figcaption></figcaption></figure></div>

## How to set the button color

If needed, you can specify the button color — this works in Viber and Online chat.

<div data-with-frame="true"><figure><img src="/files/53hhsfi1sXxn7ymbccGW" alt="" width="563"><figcaption></figcaption></figure></div>

You can choose any button color in Viber or Online chat — click the black square to open the color palette:

<div data-with-frame="true"><figure><img src="/files/jRtvWT9tGRaOHvpTVCo1" alt="" width="563"><figcaption></figcaption></figure></div>

This is what colored buttons look like in the online chat.

<div data-with-frame="true"><figure><img src="/files/ngBHNaLCWB6yKHQA2Tcx" alt="" width="563"><figcaption></figcaption></figure></div>

### Advanced button settings fields

<div data-with-frame="true"><figure><img src="/files/OoqPx64ngvUTdbGzl1sN" alt="" width="419"><figcaption></figcaption></figure></div>

### Display buttons checkbox

**Display buttons:** by default, this toggle is enabled, and buttons are shown to the client.

<div data-with-frame="true"><figure><img src="/files/BsbYh9zilkn8tz66PpR8" alt="" width="563"><figcaption></figcaption></figure></div>

### Display connectors like button&#x20;

**Display connectors as buttons:** when enabled (default), all connector triggers from this block are displayed as buttons to the user.

<div data-with-frame="true"><figure><img src="/files/QmZO63RlYmi6bg2zqzxs" alt="" width="563"><figcaption></figcaption></figure></div>

### Tooltip for messengers without buttons

The **"Tooltip for messengers without buttons"** field provides alternative text for messengers that lack button support (e.g., standard WhatsApp). This guides users on what to type manually.

<div data-with-frame="true"><figure><img src="/files/rAqlTLYcUvejMb4el5QQ" alt="" width="563"><figcaption></figcaption></figure></div>

Since WhatsApp does not support buttons, use the **"Tooltip for messengers without buttons"** field to provide a numeric menu. This text, displayed only in WhatsApp, allows users to navigate the bot by typing numbers.

<div data-with-frame="true"><figure><img src="/files/VeJBQOw1RzHzKuBBnM1g" alt="" width="563"><figcaption></figcaption></figure></div>

### Advanced button settings – Button code field

The field **"Advanced button settings (button code)"** can be used to create unique buttons using code.

<div data-with-frame="true"><figure><img src="/files/nIxuZ32KKARtbjGwzl3u" alt="" width="563"><figcaption></figcaption></figure></div>


---

# Agent Instructions: 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:

```
GET https://docs.mavibot.ai/chatbot/builder/buttons/create.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
