Create a category channel and a panel channel
#support) where the panel message will live.Post the panel
panel_id, you’ll need it for every category you attach.
In Discord: the panel posted in #support, with no buttons until it has categories.
Add your first category
key (support here) is how you’ll refer to this category in every other command, parent is the channel category new ticket channels get created under.
In Discord: the first category: the panel gets its button.
Add a second category
button-style panel supports up to 5 categories, switch style to select when you create the panel if you need more (up to 25, as a dropdown instead of buttons).
In Discord: the second category, next to the first one.
Add extra roles, if one isn't enough
support-role controls who can see/manage the category’s tickets, ping-role controls who gets pinged when one opens, they don’t have to match.
In Discord: one more support role and a ping role for support.
Set a naming pattern (optional)
{number}, {username}, {userid} and {category}, defaults to ticket-{number}. See ticket placeholders.
In Discord: the naming pattern of support.
Try it yourself
!ticket claim to take ownership, !ticket close "Testing" to close it and generate a transcript link.
In Discord: liam presses General Support on his own panel.

In Discord: inside the test ticket: the welcome pings @on-call, then claim and close.

In Discord: the panel of this guide with its two categories.
Using a saved embed for the panel or welcome message
Instead of plaintitle/description, !ticket panel create takes the name of a saved embed with --embed_template, and !ticket category add (and edit) takes one for the welcome message with --welcome_embed, see Embeds for how to build one first.

In Discord: a panel made from a saved embed.
Ask questions before a ticket opens (optional)
A category can use a form: a pop-up the member fills in when they press the button, so the first message already has the details. Besides short answers it can have choices, checkboxes, a member, role or channel picker and a file upload where members attach pictures (a screenshot of the problem, for example). The answers, with the pictures drawn, are posted in the new ticket and kept in the transcript.Common mistakes
"Category key already in use"
"Category key already in use"
billing already exists.” Petto answers “A category with key billing already exists.” Petto answers “A category with key billing already exists.” Petto answers “A category with key billing already exists.” Petto answers “A category with key billing already exists.” key must be unique per server, not just per panel. Pick something specific like billing-eu instead of reusing billing across two panels.
In Discord: the key billing is taken.
A member can't open a second ticket
A member can't open a second ticket
max_open, defaults to 1 per category. Raise it with !ticket category edit if your server wants members to have multiple tickets open at once.
In Discord: a member with an open ticket presses the button again.
