Skip to main content

🔐 Permissions

Bot permissions

The bot needs the following permissions at the guild level:

PermissionWhy
View ChannelsRead messages and channels
Send MessagesPost panel, welcome, close, and control embeds
Manage MessagesRemove user reactions from panel and control messages
Add ReactionsAdd numbered and control reactions
Manage ChannelsCreate and delete ticket channels; update permission overwrites
Read Message HistoryFetch messages to build transcripts
Attach Files(Optional) DM transcript HTML files — only needed if using DM archiving
Embed LinksRender embed messages
Use External EmojisRender external emojis in messages (optional)

Ticket channel permission overwrites

When a ticket channel is created, the bot sets the following overwrites:

SubjectAllowDeny
@everyoneView Channel
Ticket openerView Channel, Send Messages, Read Message History, Attach Files, Embed Links, Add Reactions, Use External Emojis
Support role(s)Same as opener
Global staff rolesSame as opener

This means only the opener and the designated support staff can see the channel.


Lock / Unlock overwrites

When a ticket is locked (🔒 reaction), the opener's overwrite changes to:

AllowDeny
View ChannelSend Messages

When unlocked (🔓 reaction), their overwrite is restored to the full set.


Permissions bitfield reference

The permissions.js file defines all permission constants as BigInt bitfields following the Fluxer permission model:

ConstantBit
ViewChannel1n << 10n
SendMessages1n << 11n
ManageMessages1n << 13n
EmbedLinks1n << 14n
AttachFiles1n << 15n
ReadMessageHistory1n << 16n
AddReactions1n << 6n
UseExternalEmojis1n << 18n
ManageChannels1n << 4n

The full list is in src/permissions.js.