Skip to main content
A full walkthrough of the Tickets module, building a two-category support system.
1

Create a category channel and a panel channel

Make a Discord channel category (e.g. “Tickets”) where ticket channels will be created, and a text channel (e.g. #support) where the panel message will live.
2

Post the panel

This returns a panel_id, you’ll need it for every category you attach.
3

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.
4

Add a second category

A 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).
5

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.
6

Set a naming pattern (optional)

Supports {number} and {username}, defaults to ticket-{number}.
7

Try it yourself

Click your own panel. Once inside, !ticket claim to take ownership, !ticket close "Testing" to close it and generate a transcript link.

Using a saved embed for the panel or welcome message

Instead of plain title/description, both !ticket panel create and !ticket category add accept an embed_template name, see Embeds for how to build one first.

Common mistakes

key must be unique per server, not just per panel. Pick something specific like billing-eu instead of reusing billing across two panels.
You need at least one category added to the panel before it shows any interactive elements, an empty panel is just the title/description.
That’s 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.