Understanding Permissions

Ayana offers a advanced permission system putting you in control of how Ayana will function on your guild. There are some key things you need to understand so you can setup your perms correctly. So Please take the time to read this page and understand how permissions work. It is well worth the time.

Key Points

  • Permissions give you full control.
  • Permissions are based on 4 levels: Server, Channel, Role, and User
  • A permission defined on a more specific level overrides broader levels. User is most specific and Server is least.
  • Permissions are based on permission nodes.

Permission Nodes

Permission nodes can be defined as easy to remember text representations of commands and features. Nodes can be allowed/granted (true), denied/revoked (false), or they can be in the default state. When your reset perms or first add Ayana to your server all perms are in their default state. These default states let me define some commands to be default enabled or some to be default disabled. A good example of this is the music node is enabled for all by default. But anything in the guild node is disabled by default

Key Points

  • Permissions nodes are representations of commands and features allowing you to grant or deny them easily
  • Nodes are split by "."'s Each dot represents the next part of the node. So the music.forceskip means music force skip command in this instance
  • Nodes ending in "all" grant all nodes under them
  • Nodes are very important to understand so please be sure to fully read this section.

The perms command

The perms command is your interface for updating and applying nodes on your server. To use the perms command you either must be the Server Owner or You must have the Discord Administrator Permission on one of your roles. Please understand that anyone with the Discord administrator permission can edit Ayana perms.

General Command terminology. When running commands on ayana you never want to include the <> and [] these are a visual queue to let you know that they are a variable you need to fill out.

  • <> = you must fill out a valid input
  • [] = optional item, it doesn't have to be inputted for the command to work
  • | = or

perms <allow|deny|remove> <permNode> [--channel [search]][--role <search>]|[--user[search]]

Main command, allows you to allow, deny, and remove permission nodes.

  • perms deny ayana.all --guild
  • perms allow music.all --guild
  • perms deny music.forceskip --channel general
  • perms allow music.all --channel music --role dj
  • perms default music.all --channel test
perms resetall

This command will reset all permissions to default. This command can only be run by the server owner


Since we all learn best by example in this section I am going to add several useful examples maybe you will even find your desired configuration here.

Deny all commands for everyone except the admins role
  • perms deny ayana.all --guild
  • perms allow ayana.all --role admins
Deny all commands in channel memes
  • perms deny ayana.all --channel memes
Allow role admins to use moderation commands and features
  • perms allow guild.all --role admins
Deny user HcgRandon music skip command in music channel
  • perms deny music.forceskip --user hcgrandon --channel music

Permission Nodes List

run the perms show command in your guild to see all available perm nodes

©2017 Ayana All Rights Reserved