1. Documentation
  2. Getting started

Permissions and intents

What Bao needs on the Discord side, and what breaks without it.


Bao requests its permissions at installation. If you unticked some of them, or if the bot was installed before a feature existed, you sometimes have to re-invite it.

Permissions by feature

FeaturePermission required
Sending a message, schedulingView Channel, Send Messages, Embed Links
Tickets (dedicated channels)Manage Channels, Manage Permissions
Tickets (thread mode)Create Private Threads, Manage Threads
TranscriptsAttach Files, Read Message History
Roles (join, levels, menus, premium)Manage Roles
ModerationKick Members, Ban Members, Moderate Members, Manage Messages
Audit logView Audit Log
AI agent identityManage Webhooks
Giveaway referralsManage Server (to read invites)

The hierarchy rule

To grant or remove a role, Bao's role must sit above the target role. This applies to every module. A role managed by an external integration (another bot's role, a Twitch role…) can never be granted by Bao: Discord forbids it.

Dangerous roles

Bao refuses to automatically grant a role that holds takeover permissions (Administrator, Manage Server, Manage Roles…) through autorole or a role menu. This is not a bug: a role any newcomer could obtain in one click must not be able to administer the server.

Intents

Bao needs the privileged Server Members and Message Content intents for moderation, levels and tickets. They are already enabled on the public bot: there is nothing for you to do. This only concerns you if you use a custom bot.