Slash Command Permissions are here! Check out our blog post: https://discord.com/blog/slash-commands-permissions-discord-apps-bots
Frequently asked questions:
How do I know if I have access to the new Command Permissions system yet?
We are currently testing the new system with a limited group, on desktop only. If you go to Server Settings → Integrations → click ‘Manage’ next to an app in your server, and you are in the experiment, you will see a new Command Permissions page with a variety of customizations.
How do I restrict who can use commands?
Under “Roles and Members” you’ll see a list of who currently has permissions to use commands. You can make changes by changing the toggle, just like other permissions.
How do I turn commands off within specific channels?
We know that servers have different needs, and you may want to restrict commands to certain channels. By default, #All Channels is toggled on. This means when you add a new app to your server, all members will be able to use any commands.
First, click ‘Add Channels’ and select channels to customize. Toggle permissions off as desired. (Note, toggling #All Channels off will override any channel-specific permissions and restrict that app from being used by anyone in any channel, unless they are an admin.)
How can I see what an app’s commands are?
Knowing what commands are available - before making them visible and accessible to the broader members of a server - is a good way for moderators and admins to feel confident about keeping their server clean, safe, and botspam-free.
You can see a list of commands right on the Command Permissions page. Use the Search bar to see if the app has a command you’re looking for - and use the filters for more refined results.
What does ‘Synced’ mean?
With this new system, app developers can set defaults on commands - this means some recommended customizations might be already set up for you!
For example, a moderation bot would likely need to restrict a /ban command to admins only, while fun commands would be appropriate for anyone to use.
Syncing a command means that it will follow the main permissions of the ‘parent’ application. (Using Airhorn bot as as an example - if /gavel is synced and /woo is unsynced, and you change the top-level Airhorn to not be allowed in all channels, that means that /gavel will remain synced and change accordingly, while /woo will not.)
Can I ‘unsync’ a command?
Yes. Unsyncing happens when you make changes on an individual command. After doing so, you will see that the Synced indicator has changed to Not Synced.
Can I ‘sync’ a command back, after I’ve unsynced it?
Yes, you can sync back any individual command at any time. Click on ‘Not Synced’ next to the unsynced command, and select ‘Sync Now.’
If someone in my server doesn’t have permission to use a command, will they still see it in the command picker when they type “/”?
Yes, commands will show - but they will be greyed out.
Is permission to use the same thing as being able to see the command?
Currently, commands are not hidden. They are visible, but greyed out and unusable if you do not have permissions.
How do I view the permissions for the app/bot itself, aside from just its commands?
App/bot permissions are still viewable on this same page, at the bottom. You’ll see what roles have been assigned to the bot, along with a list of granted permissions and a list of denied permissions.
Is this available on mobile?
Currently, those included in the experiment will only see the new Command Permissions page if they are on desktop.
I’m a developer. How do I set defaults on my commands?
Stay tuned for more information about developer controls when the experiment launches!
I’m a developer. Can I see who or how many people are synced v. unsynced from my commands?
No - currently there is no way to view this data.