A role menu is a dropdown SheekBot posts in one of your Discord channels. Members open it and pick the roles they want — game pings, pronouns, stream notifications, region, anything — and SheekBot gives them those roles on the spot.
Every pick is a toggle: pick a role you don't have to get it, pick one you already have to remove it. Roles you don't pick are left alone, so members never lose a role by accident. They can pick one role or several at once.
You can have several menus per server, each with up to 25 roles.
Prerequisites
Before you start, make sure:
- Discord is connected under Dashboard → Integrations, and SheekBot has been added to your server
- You have the Manage Server permission in Discord (needed for the
/rolemenucommands; anyone with access to your SheekBot dashboard can use the dashboard instead) - SheekBot can manage roles in your server — see Step 1. This is the step people miss, and without it the menu posts fine but does nothing.
Role menus are available on every plan.
Step 1: Let SheekBot Hand Out Roles
Discord only lets a bot give out roles if it has the Manage Roles permission and its own role sits above every role it hands out.
- In Discord, open Server Settings → Roles
- Find the SheekBot role and open Permissions. Make sure Manage Roles is on — SheekBot asks for it when you add it to a server, but servers that added SheekBot before October 2026 need to turn it on here. Save Changes if you changed anything.
- Back in the role list, drag SheekBot above every role you want in a menu. Roles are listed top to bottom, highest first.
Discord never lets a bot give out a role above its own, or roles that another bot manages (like a bot's own integration role). Administrator roles can't go in a menu either, which is what you want.
Step 2: Build the Menu
You can do this from the dashboard or right inside Discord — pick whichever you prefer. Both create the same menu.
Option A: From the Dashboard
- Go to Dashboard → Integrations → Discord → Role Menus
- Click New role menu
- Fill in:
- Embed title — what members see above the dropdown, e.g. "Pick your games"
- Embed description (optional) — a line of instructions, e.g. "Choose the games you want to be pinged for."
- Channel — where the menu will live (a
#rolesor#welcomechannel works well) - Placeholder text — the grey text inside the closed dropdown
- Embed color — check the live preview
- Under Options, click Add option for each role:
- Role — pick it from the list
- Label — the name members see (defaults make sense, but "Rocket League" reads better than "rl-pings")
- Description (optional) — a short line under the label
- Emoji (optional) — e.g. 🚀
- Click Save
- Click Post to Discord
Option B: With Slash Commands
In any channel of your server:
- Create the menu:
Optional:/rolemenu create title: Pick your games channel: #rolesdescription:andplaceholder: - Add each role (the
menufield autocompletes your menus by name):
Optional:/rolemenu addrole menu: Pick your games role: @Rocket League emoji: 🚀label:anddescription:. Running it again for the same role updates that option instead of adding a duplicate. - Post it:
/rolemenu post menu: Pick your games
Other commands: /rolemenu removerole, /rolemenu list (shows every menu
and whether it's posted), and /rolemenu delete.
Step 3: Try It
Open the menu in Discord yourself, pick a role and click away. SheekBot replies privately with what it added or removed — only you see that reply. Check your profile: the role should be there. Pick it again to remove it.
Changing a Menu Later
Edit it the same way you built it, then click Update in Discord (or run
/rolemenu post again). SheekBot edits the existing message in place, so the
menu stays where it is. If the original message was deleted, it posts a new
one.
Troubleshooting
- "⚠️ Failed: … check SheekBot's role position" — SheekBot is missing Manage Roles, or its role is below that role. Redo Step 1.
- The Post button is greyed out — the menu needs a channel and at least one role. Pick both, then Save.
- "Failed to post — check the bot's permissions in that channel" — the channel blocks SheekBot. In that channel's settings → Permissions, allow SheekBot to View Channel, Send Messages and Embed Links.
- The Role or Channel lists are empty — SheekBot couldn't read your server's roles or channels. Make sure it's still in the server; you can paste IDs instead (turn on Discord's Developer Mode, then right-click a role or channel → Copy ID).
- A menu I started is sitting there empty — menus aren't posted until you add roles and click Post to Discord. Finish it, or delete it with the trash icon.
- I manage more than one server — each SheekBot account manages one Discord server at a time.
Need Help?
- Support: sheekbot.dialdesigns.org/support
- Email: support@dialdesigns.org
See also: Discord Level-up Alerts, User Guide