Did you know Discord had the ability to make a custom
emoji only available to certain roles? If you didn't, that is because they
don't offer an easy way to use that function. Enter, Emoji Restrictor!
Here is what a user of your server may see on the Discord's Emoji Picker:
With the power of Emote Restrictor, another user may see this
Note that the other user has significantly less emotes? That's what this bot can do.
add which allows a role to use the mentioned
remove which removes the role from the whitelist
again with the added bonus of
query to get the roles allowed to
use an emote.
Admins and the owner are not except from the restrictions. If you want to keep
using the emotes you are restricting, add at least one of your roles to the list
of allowed roles.
In-chat-help is available with
@Emoji Restrictor#6662 add :awesome_emote: `Admins`:
Allows admins to use awesome_emote. If everyone was able to use it
before, now only admins can use it.
@Emoji Restrictor#6662 query :awesome_emote::
Check which roles can use awesome_emote now. This should now include
@Emoji Restrictor#6662 remove :awesome_emote: `Admins`:
Revoke Admins the privilage of using the awesome_emote. If that was the
only role which was able to use awesome_emote before, everyone can use
Why we need the permissions we ask for
Trusting things can be hard, so here's what we use the permissions for:
- Read Messages: As this bot has commands, we must be able to
read them. You can grant this permission on a channel-per-channel basis
tho (if you only need it in a bot commands channel, for example)
- Send Messages: We also need to answer to these commands. The
same thing as above applies.
- Embed Links: A huge blob of text doesn't look good. That's why
we'd like to use nice embeds. The time it takes to write a separate
function to deal with it not being allowed isn't worth it so this is
- Manage Emoji: We can't tell Discord what roles you'd like to
whitelist without this permission. Required for the
- Use External Emotes: In the help command for
query we show examples. In order to
have an emote ready even if you don't have any, we have one set up - on
our server. We will only ever use this in
- Create Instant Invite: This is mainly here for support reasons.
If you have a problem it makes it easier to check it out in person if
needed. If you would not like any visits from me this can safely be
Do not grant this bot any other permissions. It isn't needed and will only
increase the attack surface if the bot ever gets compromised. Giving the
bot additional permissions anyways may result in the bot refusing to work.
Emoji Restrictor on Bot Lists
This bot is Free Software licensed under AGPL 3 or later. The source code
can be found at GitLab.