Permission Flags
All available permissions in Fluxer:Permission Descriptions
General Permissions
| Permission | Description |
|---|---|
CREATE_INSTANT_INVITE | Allows creation of instant invites |
ADMINISTRATOR | Grants all permissions and bypasses channel permission overwrites |
MANAGE_GUILD | Allows management and editing of the guild |
VIEW_AUDIT_LOG | Allows viewing of the audit log |
Membership Permissions
| Permission | Description |
|---|---|
KICK_MEMBERS | Allows kicking members from the guild |
BAN_MEMBERS | Allows banning members from the guild |
MANAGE_NICKNAMES | Allows changing other members’ nicknames |
CHANGE_NICKNAME | Allows changing own nickname |
MODERATE_MEMBERS | Allows timing out users |
Channel Permissions
| Permission | Description |
|---|---|
MANAGE_CHANNELS | Allows management and editing of channels |
VIEW_CHANNEL | Allows viewing a channel |
MANAGE_ROLES | Allows management and editing of roles |
MANAGE_WEBHOOKS | Allows management and editing of webhooks |
Text Channel Permissions
| Permission | Description |
|---|---|
SEND_MESSAGES | Allows sending messages in a channel |
SEND_TTS_MESSAGES | Allows sending text-to-speech messages |
MANAGE_MESSAGES | Allows for deleting and pinning messages |
EMBED_LINKS | Links sent will have an embed automatically |
ATTACH_FILES | Allows uploading files |
READ_MESSAGE_HISTORY | Allows reading message history |
MENTION_EVERYONE | Allows using @everyone and @here mentions |
ADD_REACTIONS | Allows adding reactions to messages |
PIN_MESSAGES | Allows pinning messages |
BYPASS_SLOWMODE | Allows bypassing slowmode |
Voice Channel Permissions
| Permission | Description |
|---|---|
CONNECT | Allows connecting to a voice channel |
SPEAK | Allows speaking in a voice channel |
STREAM | Allows the user to go live |
USE_VAD | Allows using voice activity detection |
PRIORITY_SPEAKER | Allows using priority speaker in a voice channel |
MUTE_MEMBERS | Allows muting members in voice channels |
DEAFEN_MEMBERS | Allows deafening members in voice channels |
MOVE_MEMBERS | Allows moving members between voice channels |
UPDATE_RTC_REGION | Allows updating the voice region |
Expression Permissions
| Permission | Description |
|---|---|
USE_EXTERNAL_EMOJIS | Allows using emojis from other guilds |
USE_EXTERNAL_STICKERS | Allows using stickers from other guilds |
MANAGE_EXPRESSIONS | Allows management of guild expressions |
CREATE_EXPRESSIONS | Allows creating guild expressions |
Bitwise Operations
Combining Permissions
Checking Permissions
Adding Permissions
Removing Permissions
Default Permissions
Fluxer defines default permissions for new members:Elevated Permissions
Permissions that grant significant control and should be granted carefully:Permission Checking
Server-Side Validation
Computing Permission Changes
Channel Permission Overwrites
Channels can override guild-level permissions for specific roles or members:Overwrite Types
Permission Calculation
Permissions are calculated in this order:- Base permissions - Guild-wide role permissions
- Channel overwrites - Channel-specific role overwrites
- Member overwrites - Channel-specific member overwrites
- Administrator - ADMINISTRATOR permission bypasses all overwrites
Best Practices
Use Administrator Sparingly
The ADMINISTRATOR permission bypasses all permission checks. Only grant it to fully trusted users.
Principle of Least Privilege
Grant only the minimum permissions necessary for users to perform their roles.
Use BigInt
Always use BigInt for permission values to prevent precision loss with 64-bit integers.
Check Permissions Server-Side
Always validate permissions on the server. Never trust client-side permission checks alone.