BotFrame

Role workflow guide

How to make a Discord reaction role bot

Listen for one intended reaction, filter out unrelated events, and assign a carefully scoped Discord role through a visible workflow.

Prepare the role message

Create a stable message that explains each available role and emoji. Record the message ID, use unambiguous emoji choices, and confirm the target roles do not grant unexpected channel or administrative access.

Build the workflow

  1. Add Reaction addedUse the details from the event for the reacting member, message, channel, and emoji.
  2. Match the intended messageFilter by message ID so reactions elsewhere do not change roles.
  3. Match the emojiUse a condition or matching branch for the exact role choice.
  4. Apply the reaction roleConfigure the target role and confirm Discord allows the bot to manage it.
  5. Test unrelated and valid reactionsOnly the intended combination should reach the role action.

Plan multiple roles

For a small set, use explicit branches so moderators can read the mapping. When the catalog becomes large, a button or select-menu workflow may provide clearer labels and reduce ambiguous emoji behavior.

Open the role blueprint

Review the reaction-role template, Reaction added trigger, and Reaction role node.