Loading the docs

DBM Host Docs
Menu

Articles

Reactions and server emojis

Reactions are the emojis under a Discord message. With the Builder, your bot can add reactions, react when someone clicks one, and give roles with reactions. This guide also shows how to use your own server emojis.

Normal emojis and server emojis

Kind

How to write it

Example

Normal emoji

Type or paste the emoji itself

👍 🎉 ✅

Server emoji

Its code, <:name:id>

<:bots:1564066268854620170>

Animated server emoji

Its code with an a: <a:name:id>

<a:dance:123456789012345678>

You can use server emojis in the Add a reaction block, in the reaction event, and in the emoji of buttons and select menus.

Get the code of a server emoji

The fast way: a backslash

  1. In any Discord channel, type a backslash, then the emoji, like this:

  2. Discord turns it into the code when you send the message, for example <:bots:1564066268854620170>.

  3. Copy that code and paste it in the Builder.

\:bots:

On a phone, the backslash is on the symbols keyboard. You can delete the message right after copying the code.

  1. Right click the emoji in a message (or long press on mobile), then Copy Link.

  2. The link looks like https://cdn.discordapp.com/emojis/1564066268854620170.webp. The number is the emoji ID.

  3. Write the code yourself: <:, the emoji name, :, the ID, then >.

Emojis that work everywhere: app emojis

A bot can only use a server emoji if it is in that server. To use an emoji in every server, upload it to your bot: in the Discord Developer Portal, open your app, then Emojis, and upload it. Copy its code from there.

Add a reaction to a message

Use the Add a reaction block.

Setting

What to put

Emoji

A normal emoji or a server emoji code.

Which message

The message that ran this (for text commands and events), or a message link or ID.

Message link or ID

Right click a message, Copy Message Link. A variable like {var.msg} works too.

Channel ID

Only needed if you give an ID instead of a link.

Want several reactions? Chain several Add a reaction blocks: one per emoji.

React when someone adds a reaction

Create an event in the Builder and choose A reaction is added.

Setting

What it does

Only this emoji

Runs only for this emoji. Empty: any emoji.

Only on this message

Runs only on this message (link or ID). Empty: any message.

Only in channel ID

Runs only in this channel.

In the next blocks, {user} is the person who reacted, {emoji} is the emoji, and {message.id} and {message.link} point to the message. Reactions added by bots are ignored.

Recipe: reaction roles

Give a role to everyone who reacts with ✅ on your rules message.

  1. Write your message in Discord (or send it with the Send to a channel or Send containers block).

  2. Right click the message, then Copy Message Link.

  3. In the Builder, create an event A reaction is added. Set Only this emoji to ✅ and paste the link in Only on this message.

  4. Add an Add a role block: paste the role ID, and keep the member on The user.

  5. Optional: add a Send a DM block like "You now have the Member role, welcome!".

  6. Save, then restart the bot in the app. Add the ✅ reaction yourself first, so people only have to click it.

Several roles on one message? Make one event per emoji, each with its own Add a role block.

Removing the reaction does not remove the role for now. Use a button or a command to remove it.

What your bot needs

  • To see the channel and read its messages.

  • Add Reactions to add reactions.

  • Manage Roles for reaction roles, and its own role must be above the role it gives (Server Settings > Roles, drag it higher).

  • To be in the server of a server emoji, or to use an app emoji.

If it does not work

Problem

Fix

Nothing happens when I react

Check the emoji and the message link in the event, then restart the bot. The bot must see the channel.

The logs say Unknown Emoji

The bot is not in the server of this emoji. Use an app emoji instead.

The role is not given

Give the bot Manage Roles and move its role above the role it gives.

The emoji code is not accepted

It must look exactly like <:name:id>, with no spaces.


Stuck? Copy your logs and ask on our Discord server.