OnyxBot's Discord invite asks for 14 permissions: Manage Channels, Manage Roles, View Channel, Send Messages, Read Message History, Embed Links, Attach Files, Manage Messages, 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 and Read Message History: 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.
- Embed Links: ticket channels and published panels. Channel answers are plain text and do not need it.
- Attach Files and Manage Messages: OnyxBot grants these to you and to your staff roles inside the ticket, so screenshots can be attached and staff can pin and clean up messages. Discord checks the permissions OnyxBot hands out against the ones it holds itself, so OnyxBot has to be granted both before it can pass them on.
- 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 does OnyxBot read my Support Channel and never answer?
A Support Channel that answers in threads needs all five of View Channel, Read Message History, Send Messages, Create Public Threads and Send Messages in Threads in that channel. If any one of them is missing, OnyxBot stops before it answers.
What you see depends on which one is missing.
- Send Messages is still allowed: OnyxBot posts a notice asking for Create Public Threads and Send Messages in Threads, then stops.
- Send Messages is the one missing: OnyxBot posts nothing at all. It stays online, receives every message in the channel and answers none of them, with no error anywhere in Discord. It cannot tell you it is blocked, because posting that notice needs the permission it is missing.
That second case is the usual explanation for a bot that looks online and healthy but ignores one channel while working everywhere else. It most often appears right after you point your Support Channel at a different channel. Fix it in Discord.
- Right-click the channel, then Edit Channel, then Permissions.
- Add the OnyxBot role.
- Allow the five permissions above for it.
A grey slash next to a permission means it is inherited rather than set here; a red cross is an explicit deny that beats a server-wide grant. Check the Discord category above the channel as well, because a channel synced to its category inherits the category's denies.
Re-authorizing does not fix this. Re-authorizing grants server-wide permissions to the OnyxBot role, and a deny set on a single channel still overrides them.
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.