# Blocks

A bot scenario is built from blocks. Each block does one thing: sends a message, checks a condition, waits, saves data, takes a payment. Blocks are connected by arrows, and the bot guides a person along them starting from the "Start" block.

This page explains how to work with blocks on the scheme and covers the settings all blocks share. What each block does is described on the group pages at the end.

## How to add a block

- **From a block's output.** Hover over the circle to the right of an output, hold the mouse button and drag an arrow to an empty spot. Choose the block you need in the "Select block" list — it appears already connected. This is how blocks are added in the [quick start](https://support.watbot.org/quick-start).
- **With the "Add a block" button** on the top toolbar. The "Block creation" window opens: categories on the left, search by block name at the top. The "Frequently used" category collects the blocks you add most often.
- **From the context menu.** Right-click an empty spot on the scheme and choose "Add block" — the block appears at that point.

![The "Block creation" window: categories on the left, search and the list of blocks](https://support.watbot.org/_media/en/01-chatbots/03-blocks/_images/add-block.webp?v=1791781230)

## Outputs and connections

The rows inside a block are its outputs. An output fires on its own event: the person pressed a button, typed something of their own, a condition was met, a payment went through. An arrow — a connection — leads from an output to the next block.

- **Draw a connection** — drag an arrow from the output's circle to another block.
- **Delete a connection** — hover over it and click the cross.
- **Follow a connection** — hover over the output row and click the jump icon: the scheme shows the block this output leads to.

## Block actions

When you hover over a block's header, the ▶ icon and a three-dot menu appear.

- **▶ "Test from this block"** — opens the bot test window and starts the scenario from this block.
- **"Rename"** — give the block your own name. Names make blocks easier to find on the scheme.
- **"Copy"** — the block goes to the clipboard. Paste it through the scheme's context menu: right-click → "Paste".
- **"Duplicate"** — a copy of the block appears next to it.
- **"Copy link"** — a link that opens the scheme right at this block.
- **"Send from previous block"** — send this block to those who are standing on the blocks before it. The same action is available in the settings panel and is described below.
- **"Set as starting block"** — the scenario will begin from this block. The item is available for the "Simple message", "Message chain" and "Start" blocks.
- **"Delete"** — the block is deleted for good. The start block cannot be deleted.

![The "⋯" menu in the block header: rename, copy, duplicate, link, send from previous block, start block, delete](https://support.watbot.org/_media/en/01-chatbots/03-blocks/_images/block-menu.webp?v=1791781230)

To copy or delete several blocks at once, tick their checkboxes: a checkbox appears in place of the icon in the block's header.

The block's ID is shown at its bottom — click it to copy. A clock icon with a number next to it shows how many contacts are waiting to be sent something at this block.

## Block settings

Click a block — the "Block settings" panel opens on the right. Changes are saved automatically as soon as you leave a field: "Saved" appears at the top of the panel.

The three-dot menu in the panel header expands it to full screen or moves it to the other side: "Show on the left", "Show on the right".

![The "⋯" menu in the settings panel header: full screen, left, right](https://support.watbot.org/_media/en/01-chatbots/03-blocks/_images/panel-menu.webp?v=1791781230)

At the bottom of the panel, every block has shared sections.

![Common sections at the bottom of the panel: "Send from previous block", "Execution log" and "Block"](https://support.watbot.org/_media/en/01-chatbots/03-blocks/_images/common-sections.webp?v=1791781230)

### Send from previous block

The section appears when at least one connection leads into the block. It sends this block to everyone who is currently on the blocks before it. Useful when the block was connected later and people got stuck on the previous one.

The block goes out as a mailing: its progress and the stop button are in the "Mailings" section. Anyone who leaves the block on their own in time will not get it twice. Contacts unsubscribed from mailings receive the block too.

### Execution log

The "Open" button shows how the block ran over the last 7 days: contact, user message, status, error, start time and duration. The log is the place to start when a block does not behave as you expected.

![The "Execution log" window: contacts, status, start time and duration, an expanded entry](https://support.watbot.org/_media/en/01-chatbots/03-blocks/_images/execution-log.webp?v=1791781230)

### Block

Here you set the "Block name" and see the block's ID.

## All blocks

The list is built from the platform itself, so it always shows the blocks available to you right now. The categories are the same as in the "Block creation" window.

### Simple

| Block | What it does |
| --- | --- |
| [Simple message](https://support.watbot.org/chatbots/blocks/messages/text) | Simple text message |
| [Message chain](https://support.watbot.org/chatbots/blocks/messages/chain) | The message chain is sent sequentially and may consist of text, photo, video, audio, document |
| [Assign tag](https://support.watbot.org/chatbots/blocks/contact-data/add-tags) | Assign a tag to a bot subscriber |
| [Delete tag](https://support.watbot.org/chatbots/blocks/contact-data/delete-tags) | Remove tag from bot subscriber |
| [Request](https://support.watbot.org/chatbots/blocks/notifications/notification) | Send request to CRM, messenger or email |
| [Scenario](https://support.watbot.org/chatbots/blocks/logic/script) | Switching to another schema of the current bot |
| [Condition](https://support.watbot.org/chatbots/blocks/logic/condition) | Dividing the schema into two branches, according to which the users are distributed according to the specified condition |
| [Switch](https://support.watbot.org/chatbots/blocks/logic/switch-case) | Separation of the schema into several branches, along which users go according to the first suitable condition |
| [Phone number request](https://support.watbot.org/chatbots/blocks/messages/request-phone) | Phone number request from bot user |
| [Email request](https://support.watbot.org/chatbots/blocks/messages/request-email) | Email request from bot user |
| [Timer](https://support.watbot.org/chatbots/blocks/time/timer) | The user is sent further along the scheme and at the same time the block for delayed sending by timer is set |
| [Delay](https://support.watbot.org/chatbots/blocks/time/smart-delay) | Delay before sending next block |
| [Delete variable](https://support.watbot.org/chatbots/blocks/contact-data/delete-variables) | Remove custom variables from bot subscriber |
| [Start](https://support.watbot.org/chatbots/blocks/messages/start) | Start block |
| [Global menu](https://support.watbot.org/chatbots/blocks/messages/global-menu) | The global menu is called when there is no match for the local menu of any block. |

### AI

| Block | What it does |
| --- | --- |
| [AI Agent](https://support.watbot.org/chatbots/blocks/ai-agent) | A text AI agent that can independently hold a conversation with the user, as well as route the user along the chat-bot scenario. |

### Notifications

| Block | What it does |
| --- | --- |
| [Contact Notification](https://support.watbot.org/chatbots/blocks/notifications/notification-contact) | Send a notification to a given bot contact |
| [Send a message](https://support.watbot.org/chatbots/blocks/notifications/send-message-to-contact) | Send messages from a bot user to another bot user |
| [Send a quick message](https://support.watbot.org/chatbots/blocks/notifications/send-fast-message-to-contact) | Sending a message from a bot user to another bot user without opening a dialog. For example, by pressing a button, a predefined message is sent to the interlocutor. |
| [Send email](https://support.watbot.org/chatbots/blocks/notifications/letter-to-the-future) | Possibility for the bot user to send a letter to his Email |

### CRM

| Block | What it does |
| --- | --- |
| [Deal stage](https://support.watbot.org/chatbots/blocks/notifications/deal-status) | Choosing a stage for the deal |
| [Close deal](https://support.watbot.org/chatbots/blocks/notifications/deal-close) | Closing the open deal of the contact |
| [Deal assignee](https://support.watbot.org/chatbots/blocks/notifications/order-assignee) | Assigning user to the order |

### Lists and tables

| Block | What it does |
| --- | --- |
| [Read list entries](https://support.watbot.org/chatbots/blocks/lists/list-read) | Reading entries from the list created in the Lists section |
| [Read list entry](https://support.watbot.org/chatbots/blocks/lists/list-read-item) | Reading an entry from the list created in the Lists section |
| [Add list entry](https://support.watbot.org/chatbots/blocks/lists/list-write-item) | Add an entry to the list of custom variables, constants and free text |
| [Check if a list entry exists](https://support.watbot.org/chatbots/blocks/lists/list-exists-item) | Check the existence of an entry in the list by specified filters |
| [Delete list entries](https://support.watbot.org/chatbots/blocks/lists/list-delete) | Delete list items by id |
| [Delete list entry](https://support.watbot.org/chatbots/blocks/lists/list-delete-item) | Delete list item by id |
| [Read rows from a table](https://support.watbot.org/chatbots/blocks/lists/wat-sheet-reader) | Ability to display data from Tables into a bot |

### Payments

| Block | What it does |
| --- | --- |
| [T-Bank](https://support.watbot.org/chatbots/blocks/payments/payment-tbank) | Internet acquiring from T-Bank |
| [YooKassa](https://support.watbot.org/chatbots/blocks/payments/payment) | Acceptance of payments using the YooKassa payment service |
| [YooMoney](https://support.watbot.org/chatbots/blocks/payments/payment-yandex-money) | Acceptance of payments using the Yandex.Money payment service |
| [Robokassa](https://support.watbot.org/chatbots/blocks/payments/payment-robokassa) | Acceptance of payments using the Robokassa service |
| [Cloudpayments](https://support.watbot.org/chatbots/blocks/payments/payment-cloudpayments) | Acceptance of payments using the Cloudpayments service |
| [Prodamus](https://support.watbot.org/chatbots/blocks/payments/payment-prodamus) | Acceptance of payments using the Prodamus payment service |
| [bePaid](https://support.watbot.org/chatbots/blocks/payments/payment-bepaid) | Acceptance of payments using the bePaid service |
| [LiqPay](https://support.watbot.org/chatbots/blocks/payments/payment-liqpay) | Acceptance of payments using the LiqPay service |
| [JustClick](https://support.watbot.org/chatbots/blocks/payments/payment-just-click) | Acceptance of payments using the JustClick payment service |
| [Crypto Pay](https://support.watbot.org/chatbots/blocks/payments/payment-crypto-pay) | Accepting payments using the Telegram payment bot @CryptoBot |
| [Top up a contact's account](https://support.watbot.org/chatbots/blocks/contact-data/top-up-balance) | Replenishment of the contact's internal account, or write-off, when using a negative amount in the block settings. |
| [Debit a contact's account](https://support.watbot.org/chatbots/blocks/contact-data/debit-balance) | Replenishment of the contact's internal account, or write-off, when using a negative amount in the block settings. |

### Shop

| Block | What it does |
| --- | --- |
| [Reward the referrer](https://support.watbot.org/chatbots/blocks/contact-data/referrer-reward) | Possibility to accrue remuneration to referrers up to level 10. |

### Mailing

| Block | What it does |
| --- | --- |
| [Subscribe to mailing list](https://support.watbot.org/chatbots/blocks/contact-data/add-to-mailing) | Subscribe current contact to mailing list |
| [Unsubscribe from mailing list](https://support.watbot.org/chatbots/blocks/contact-data/remove-from-mailing) | Unsubscribe current contact from mailing list |

### Integrations

| Block | What it does |
| --- | --- |
| [GetCourse order](https://support.watbot.org/chatbots/blocks/integrations/get-course-deal) | Specifying params for placing user's order on GetCourse |
| [Write to Google Sheets](https://support.watbot.org/chatbots/blocks/lists/google-sheet-writer) | Ability to write custom variables and constants to Google Sheets |
| [Update rows in Google Sheets](https://support.watbot.org/chatbots/blocks/lists/google-sheet-updater) | Ability to update records in Google Sheets by filter |
| [Delete rows from Google Sheets](https://support.watbot.org/chatbots/blocks/lists/google-sheet-deleter) | Ability to delete rows from Google Sheets by filter |
| [Read rows from Google Sheets](https://support.watbot.org/chatbots/blocks/lists/google-sheet-reader) | Ability to search and save data from Google Sheets into variables |
| [Check if a row exists in Google Sheets](https://support.watbot.org/chatbots/blocks/lists/google-sheet-item-exists) | Checking the existence of a record in a Google Sheet by a given filter |
| [Send contact to JustClick group](https://support.watbot.org/chatbots/blocks/integrations/just-click-create-lead) | An intermediate block for registering a contact in the JustClick system |
| Yclients | Create a booking on yclients via external form |

### Special

| Block | What it does |
| --- | --- |
| [Save user answer to variable](https://support.watbot.org/chatbots/blocks/contact-data/set-variable) | Save user answer to local or global variable |
| [Variable operation](https://support.watbot.org/chatbots/blocks/contact-data/variable-operation) | A way to write an arbitrary value to a variable with the ability to perform computation before writing. This is great for creating tests or quizzes. |
| [A/B testing](https://support.watbot.org/chatbots/blocks/logic/ab-test) | Distribution of traffic by outgoing links of the block to identify the best conversion |
| [Remove user from bot](https://support.watbot.org/chatbots/blocks/contact-data/delete-contact) | Remove the current user from the bot. A removed user no longer counts towards your plan. |
| [Inline Telegram bot](https://support.watbot.org/chatbots/blocks/developer/inline-telegram) | The rule for processing incoming messages from the inline Telegram bot |
| [HTTP request](https://support.watbot.org/chatbots/blocks/developer/http) | HTTP request to a third-party server to generate a response to the user |
| [JavaScript interpreter](https://support.watbot.org/chatbots/blocks/developer/javascript) | The JavaScript interpreter allows you to execute JavaScript code |
| [Incoming webhook](https://support.watbot.org/chatbots/blocks/developer/incoming-webhook) | Process any incoming http request using JavaScript. |
| [Distribution by groups](https://support.watbot.org/chatbots/blocks/logic/group-contacts) | The ability to distribute bot subscribers into random groups and send group messages. |

Detailed descriptions of settings and outputs are on the group pages:
