VeyroBot Logo
VeyroBot Beta
← VeyroBot home

Discord Reaction Roles (Role Menu)

Handing out notification, game or colour roles one by one eats staff time. VeyroBot posts a role menu in a channel, and members take and drop their own roles. The menu is set up with the /reactionrole command or in the Reaction Roles section of the dashboard, and the given role can optionally be removed by itself after a set time.

Add to Server for Free No credit card · Setup in ~30 seconds

Dropdown menu or button panel

In a dropdown a member can tick several roles, and a role they untick is removed — right for sets managed together like colours, games or interests. In a button panel each button toggles only its own role — right for roles taken one at a time like a rules acknowledgement or a notification role.

Fast by command, fuller in the dashboard

The command builds a menu with up to five roles at once. In the dashboard a menu takes up to 25 roles, a title of up to 256 characters, a 1000-character description, an embed colour and the channel to post in. 25 is Discord's menu limit.

Timed roles

A menu can get a duration of 10 minutes, 1 hour, 6 hours, 1 day, 3 days, 7 days or 30 days. When it runs out the bot removes the role; the end time is stored in the database, so a bot restart doesn't lose it. The Premium page shows which plan includes it.

A role that can't be given isn't hidden

If the bot's role sits below the role it hands out, or the bot lacks Manage Roles, the role is not skipped silently; it appears by name on the "Insufficient Permissions" line of the reply to the member.

Who it’s for

Communities where members choose their own notification, game, colour or interest roles, and servers handing out temporary roles during events and contests.

Who it’s not for

Cases where a staff member must decide who gets the role: staff hiring, verified-member status or roles tied to an application. Anyone who can see the channel can take any role in the menu.

Setup in 3 steps

  1. 1

    Add the bot to your server

    Open the invite link above, pick your server and approve the permissions. The bot comes online within seconds.

  2. 2

    Turn on Auto Roles and move the bot role up

    Giving roles depends on this module. In Server Settings → Roles, drag the VeyroBot role above the roles it will hand out; the bot needs Manage Roles.

  3. 3

    Build the menu

    With the /reactionrole command (up to five roles) or in the Reaction Roles section of the dashboard (up to 25 roles), choose the menu type, title, roles and optionally a duration, and post it in a channel everyone can read.

Related commands

/reactionrole

For the full list of commands, see the commands page.

Sourced, dated comparisons with other bots: MEE6 and VeyroBot comparedDyno and VeyroBot comparedCarl-bot and VeyroBot comparedMEE6, Dyno and Carl-bot compared

Frequently asked questions

Why doesn't the menu respond to clicks?

Giving roles depends on the Auto Roles module; while it is off the menu does nothing. If the module is on, check that the bot's role is above the roles it gives and that the bot has Manage Roles.

Can I edit a menu later?

No. The title, description and roles are set when the menu is created. To change them, build a new menu and delete the old one; if the menu message is deleted, that menu stops working.

Can I make only one role in a menu timed?

No. The duration is set per menu and every role taken from that menu gets the same duration. Build separate menus for different durations.

What if a member drops a timed role early?

The timer is deleted the moment they drop it; if they take it again, the duration starts over. Even if the menu is deleted later, roles given from it are removed when their own time runs out.

Adding it is all it takes to try

Add VeyroBot to your server and turn on the modules you want in the web dashboard. You can switch off anything you don't use.

Add to Server for Free