OnyxBot's Discord invite asks for 12 permissions: Manage Channels, Manage Roles, View Channel, Send Messages, Read Message History, Embed Links, Mention Everyone, Add Reactions, Create Public Threads, Create Private Threads, Send Messages in Threads and Manage Threads. Two of them decide whether tickets work at all: without Manage Channels and Manage Roles, OnyxBot cannot open a ticket, and your dashboard shows an amber Action needed: re-authorize Onyx banner until you grant them. Administrator also passes the check, but you do not need it.
What does OnyxBot use each permission for?
- Manage Channels and Manage Roles: create the private ticket channel, write its permission overwrites, and delete the channel when the ticket closes.
- View Channel, Send Messages, Read Message History, Embed Links: read questions in your Support Channels and post answers.
- Create Public Threads and Send Messages in Threads: OnyxBot answers in a thread off the original message in a Support Channel. Without them it replies "I don't have permission to create threads here" and stops.
- Create Private Threads and Manage Threads: for categories whose Ticket location is Private thread. OnyxBot opens a private thread instead of a channel, then locks and archives it on close.
- Mention Everyone: ping your staff roles in the staff briefing OnyxBot posts on escalation.
Why can't OnyxBot open tickets in one category?
Server-wide permissions can be green while a single Discord category still blocks OnyxBot. Discord returns Missing Permissions, and the member sees a message naming the category: OnyxBot is not allowed to create channels under it. Fix it in Discord.
- Right-click the Discord category, then Edit Category, then Permissions.
- Add the OnyxBot role.
- Allow View Channel and Manage Channels for it.
Which Discord category a ticket lands in is the Discord category field on each ticket category, under Tickets, then Panels.
In thread mode the message is different. It names Create Private Threads in that channel instead.
Where should the OnyxBot role sit in the role list?
OnyxBot can only add or remove roles that sit below its own. The only feature that assigns roles is the Tebex plugin's customer role sync. If a mapped role sits above the OnyxBot role, the sync fails and OnyxBot warns that it needs Manage Roles and its role must sit above every mapped role. Move the OnyxBot role higher under Server Settings, then Roles.
Ticket staff roles are different. OnyxBot never assigns them, it writes channel permission overwrites for them. The OnyxBot role never appears in the staff role picker either, because Discord marks bot roles as managed and the picker filters out managed roles and @everyone.
How do I restore a permission someone removed?
- Open your server's dashboard. The amber Action needed: re-authorize Onyx banner shows only for the server owner and members who can manage the server.
- Click Re-authorize.
- Discord opens with your server already selected. Leave every box ticked and click Authorize.
Nothing is removed or reset. Untick a box and the dashboard tells you OnyxBot was re-authorized but still needs Manage Channels and Manage Roles, so you can run it again. That banner covers the shared OnyxBot only. A dedicated bot re-authorizes through its own setup on Configuration.