Skip to main content
Sending messages is the thing bots do most. Buttons and menus make your bot feel like an app: people press a button or pick from a menu, and your bot does something.

The message blocks

There are also blocks to send a message to a channel, send a direct message, send a random answer from a list, and to edit, delete, pin, publish and react to messages. Search the block list for those words, or see Message blocks.

Putting values in messages

Any text box can show values, like the person’s name. Press { } Variables (or Insert a variable), or type them in curly brackets.

Example

You write: Hi {user_name}, you have {DBVAR_coins} coins.Sam sees: Hi Sam, you have 250 coins.
See Use variables in blocks.

Pictures in messages

Every picture box in a message has Upload image and Your uploads.
  • You can upload PNG, JPG, GIF or WebP pictures, up to 8 MB each.
  • In a Layout message, a Media Gallery takes up to 10 pictures at once.
  • Uploads count toward your bot’s storage.
Want a picture made just for this person, like a welcome card with their name? Use Card Studio and {card}. See Send cards from your bot.

Buttons

1

Add a message block that has buttons

Search button in the block list.
2

Add a button

In its settings, add a button. Give it a label (the words on it) and pick a style.
3

Add an emoji (optional)

Use the emoji picker. It has your server’s own emojis too, even animated ones.

Each button runs its own blocks

Every button gets its own path on the board. Blocks you join under a button only run when someone presses that button.

Example: Yes and No

One message with two buttons:
  • Yes (Green) → Give roles: Verified
  • No (Red) → Reply: OK, maybe later!

Select menus

A select menu is a drop-down list. It is good when there are too many choices for buttons, like picking one of 15 roles. Each option in the menu gets its own blocks, just like a button. Search menu in the block list.

Answering a button press: Response type

In a message block, the Response type says how the bot answers:
  • In commands: Reply to the command.
  • After a button or menu: Reply to the command or button/menu interaction. This only appears when the message comes after a button or menu block. It answers the person who pressed it.
Reply privately when only the person who pressed should see it, so the channel does not fill up.

Changing a message or its buttons later

  • When you edit a message the bot sent before, the editor starts from the original message, so you only change what you need.
  • Use the block that updates buttons or menus (search update) to change a button after the message was sent, for example to turn Join into a greyed out Closed.
  • In a Layout message, buttons and menus get their own row automatically, so you can place them anywhere in your message.

See it in real systems

Verify new members

Support tickets

Role buttons