Make sure that Cakey Bot has the
Manage Channelspermission and that the Cakey Bot's role is above the support staff role.
Cakey Bot's support ticket system allows your users to make tickets and get 1 on 1 support from your support team. You can easily manage tickets via Discord's button system and even save transcripts of the ticket history.

A panel is one complete ticket setup: its own staff role, category, embeds, button and settings. A server can have up to 10 panels, so you can run separate setups for general support, bug reports and staff applications, each with its own staff role and its own category.
From the Support Tickets page you pick which panel to work on, and everything under Configure Tickets applies to whichever one is selected.
Post Panel sends that panel's embed and button to a channel you choose, without needing /setup createticketembed.
Delete Panel removes the panel and its settings.
Deleting a panel is refused while it still has open tickets. Close them first, otherwise those tickets would be left with nothing behind them.
Ticket Type decides how tickets open for that panel:
Editing a panel's open embed or button rewrites every copy of that panel already posted, so a live panel can't drift from what the dashboard says is saved. A Refresh action is there for panels that were edited while the bot was offline.
A multipanel posts one message with a button for each panel you pick, so members can choose the type of ticket. Each panel gets its own button, using that panel's button label. A server can have up to 10 multipanels, and a multipanel can offer up to 25 panels.
You manage them under Multipanels on the Support Tickets page. Give each one a Multipanel name, choose its Panels to offer, and post it to a channel. Posting it again in the same channel edits the message already there instead of sending a new one. Once a multipanel is posted, saving it updates the posted message.
Delete multipanel removes it from the dashboard, but a message already posted stays in its channel and its buttons keep opening tickets for their panels.
Panel Name: Give the panel a custom name (up to 100 characters). If left blank, it displays as "Panel #1" wherever the panel is referenced, including the /setup createticketembed panel picker.
Support Staff Role: Selecting a support staff role will automatically allow users with the selected role to view/access all support tickets. If you do not select a support staff role only Administrators will have access to tickets.
For thread tickets, Cakey Bot adds the role to the thread by mentioning it in a message that is edited in and deleted straight away, so nobody gets a notification. Discord only adds the role's members this way if the role is mentionable or Cakey Bot has the Mention Everyone permission. When Ping Staff Role on Ticket Creation is enabled, the ping itself adds them instead.
Transcript Channel: Selecting a transcript channel will unlock the ability to save ticket history to the selected channel. Which will allow staff to review old closed/deleted tickets.
Auto Save Transcripts: If enabled, it will automatically create transcripts for all closed tickets. A transcript channel will have to be configured/set for this to function. Premium Only
Initial Embed Message/Color: Customize the message and embed color shown before a user opens a ticket (up to 2,000 characters).
Open Embed Message/Color: Customize the message and embed color shown once the ticket channel has been created (up to 2,000 characters).
Open Embed Title: Customize the title shown on the "Open a Ticket" embed (up to 256 characters). Leave blank to use the default title ("Support Ticket").
Open Button Label: Customize the text shown on the "Open a Ticket" button (up to 80 characters). Leave blank to use the default label ("Open a Ticket").
Once you have enabled and configured support tickets via the web dashboard your users can start making tickets once you create an embed using the /setup createticketembed <panel> command. The panel option autocompletes with your panel's name (its custom name if you've set one, otherwise "Panel #1") — select it to generate a fancy embed with a button that users can click to automatically open up tickets. When users click the button it will prompt them to enter a reason for their ticket.
You do not need to make/set up a support category, Cakey Bot will automatically generate the correct channels and permissions if Cakey Bot has access to do so. The category it creates is named "Support Tickets" by default, or your panel's custom name if you've set one — but once created, Cakey Bot tracks it internally, so you're free to rename the category afterward without breaking anything. If the category ever gets deleted, Cakey Bot automatically creates a new one the next time someone opens a ticket. If a category fills up (Discord caps a category at 50 channels), Cakey Bot automatically creates an overflow category (e.g. "Support Tickets #2") and starts using that instead.
Cakey Bot will NEED acess to manage channels in order to create the required category and ticket channels.
Once a user has closed a ticket, Cakey Bot will send an embed with three different options:

The Ticket Manager page on the dashboard lists every ticket across every panel, so staff can work through them without hunting for channels in Discord.
Each row shows the panel it belongs to, who opened it, who has claimed it, its status, the rating it was given and when it was last active. Columns can be sorted, and the list can be filtered by state and by panel or searched.
Staff actions available on a ticket from here:
Actions your roles wouldn't be allowed to perform are disabled before you click them, rather than failing afterwards. The same permission check still runs on the server.
The page also groups ticket categories per panel and shows how full each one is against Discord's 50 channel limit, so you can see an overflow coming before it happens.
Anything done from the Ticket Manager reads the same in Discord as if it had been done there: the embeds and DMs use the bot's own wording and colours.
If Allow Feedback Ratings is enabled, closing a ticket asks its opener to rate the support they received. Ratings are recorded against the ticket and shown in the Ticket Manager list, so you can see how a panel or a staff member is doing over time.
You can add other users to tickets by typing the /ticket adduser <user> command. This will allow that user to view the ticket if they were not the one who created it. This command can be ran by anyone who can view and send messages within that ticket.
You can also remove other users from tickets by typing the /ticket removeuser <user> command. This will revoke that user's ability to view the ticket if they were added to it by the previous command or had access by other means. This command can be ran by anyone who can view and send messages within that ticket.
By default, any staff members who have view/send access to tickets can respond to them like they would in other channels. However, sometimes staff memebrs may want to reply to a ticket anonymously without showing their username. In order to this all they have to do is run the /ticket anonreply <message> command. this will send a generic anonymous message from Cakey Bot instead of the staff member.
In order to use the anonymous reply system, the staff member MUST have the Support Team role which can be set on the web dashboard.
Staff members can use the /ticket remind command to send a DM reminder to the user who opened the ticket. The DM prompts them to respond if the issue is still unresolved and provides a button link to open the ticket.
The /ticket request-close <reason> command allows staff members to request the closure of a ticket. Instead of immediately closing the ticket, this command notifies the original user that opened the ticket that the staff have requested the ticket to be closed. The user can then review and approve or deny the request. The reason parameter is required and can be up to 255 characters.
These are advanced settings that you can configure via the web dashboard to further customize your support ticket system!
Defaults to disabled. When enabled, this will prompt the user to confirm that they want to close the ticket with a Yes/No button message.
Defaults to disabled. When enabled, this will send attempt to send a DM to the user who opened the ticket once it has been closed with basic information about the ticket.
Note: Sometimes users have DMs blocked or Discord will fail to send the DM. There is nothing Cakey Bot can do about this!
Defaults to disabled. When enabled, the ticket channel will automatically be deleted a few seconds after it's closed, so staff don't need to click the "Delete" option manually.
If Auto Save Transcripts is also enabled, the transcript is always fully generated and saved before the channel is deleted — enabling this setting will never cause you to lose ticket history.
Toggles whether transcript channel logs will mention users/roles.
Defaults to disabled. When enabled, it will ping the Support Team staff role when a new ticket is created.
Note: You MUST have a Support Team role configured on the web dashboard or this setting will not do anyhting.
Defaults to disabled. When enabled, it will ping the user who opened the ticket when it is created. This is separate from the "Ping Staff Role on Ticket Creation" setting above.
This allows users to submit feedback ratings on the support they received inside of a ticket.
How it works:
Note: Ticket transcripts must be enabled for this feature to work properly.
Each panel can be limited to business hours by turning on Limit tickets to business hours. Set Opens at, Closes at, the Time zone and the days the hours apply to. A closing time earlier than the opening time runs past midnight into the next day.
Outside business hours decides what happens to a ticket opened outside these hours:
Notice message sets the text of that notice. Use {hours} to show the business hours, or leave it empty for the default message.
This allows you to prevent specific roles from creating tickets. This can be useful if you have users who are spamming or abusing the ticket system.
Usage Key: <required> / [optional]
| Command | Description | Usage | Permission |
|---|---|---|---|
| /setup createticketembed | Create an embed to open tickets with a button. | <panel> | None |
| /ticket remind | Sends a reminder to the user. | N/A | None |
| /ticket request-close | Requests to close the ticket. | <reason> | None |
| /ticket adduser | Adds a user to the ticket. | <user> | None |
| /ticket anonreply | Replies to a support ticket anonymously. | <message> | None |
| /ticket removeuser | Removes a user from a ticket. | <user> | None |