Guide

Ticket System

Creating ticket panels

Ticket panels are the entry point for users to create support tickets. Configure them from the dashboard under Tickets > Panels. Click 'Create Panel' to start. You will need to provide a panel name (displayed to users), select a category where ticket channels will be created, and optionally write a description explaining what the panel is for.

Each panel can have custom questions that users must answer before a ticket is created. For example, an 'Appeals' panel might ask 'Which moderator issued your warning?' and 'Why do you believe the warning was incorrect?' Questions support free-text, multiple choice, and single-select formats. You can reorder questions by dragging them.

Staff role assignments control who can see and manage tickets created from this panel. You can assign multiple roles, and tickets will be visible to all members with any of the assigned roles. This is useful for having different teams handle different types of tickets — moderation team for appeals, support team for general inquiries.

Once created, the panel can be posted to a channel using the /panel send command. Users can then click a button to open a new ticket, which creates a private channel in your configured category.

Staff workflow

When a user creates a ticket, a private channel is created in the configured category. The channel name includes the ticket ID and the user's name for easy identification. Staff members with the appropriate roles are automatically granted access.

Staff can claim a ticket using /ticket claim. This assigns you as the primary handler and signals to other staff that the ticket is being handled. Claimed tickets appear differently in the channel list, showing who is handling them. If a staff member becomes unavailable, another can use /ticket unclaim to free the ticket.

Collaboration features include /ticket add @user to add additional staff members to the conversation, and /ticket remove @user to remove them once they are no longer needed. You can also use /ticket rename to update the channel name to reflect the ticket's purpose.

To close a ticket, use /ticket close. You can optionally provide a closing summary. The bot will ask for confirmation before closing. Closed tickets are automatically archived and can be reviewed later via transcripts.

Transcripts & archiving

Every closed ticket generates a transcript that captures the full conversation history. To export a transcript, use /ticket transcript in the closed ticket channel or from the dashboard. The transcript is generated as an HTML file that includes every message, timestamp, and participant name, formatted in a clean, readable layout.

Transcripts are automatically stored in the dashboard and are accessible from the Tickets > Transcripts page. You can search transcripts by ticket ID, participant name, or date range. Each transcript displays the ticket's full metadata: who created it, which staff handled it, the time to first response, and the total duration.

For long-term record-keeping, transcripts can be exported as JSON files that are compatible with external analysis tools. This is particularly useful for servers that require detailed audit trails for compliance purposes.

The archiving system automatically organizes closed tickets by month. You can set a retention period from the dashboard — after this period, transcripts are permanently deleted. By default, transcripts are kept indefinitely.

Staff applications

The staff application system is built on top of the ticket framework. When you create a panel with the 'Application' type, members can submit applications that staff can review using a structured workflow.

Applications appear in a dedicated channel with a summary embed showing the applicant's answers, their account age, and server join date. Staff can use /accept to approve the applicant (optionally assigning a role), /deny <reason> to reject with feedback, or /interview to create a private Q&A ticket with the applicant.

All application actions are tracked per staff member. The dashboard provides analytics showing acceptance rates, average review times, and individual staff performance. This data helps ensure applications are being handled promptly and fairly.

You can customize the application form with up to twenty questions, including conditional questions that only appear based on previous answers. For example, asking 'How many hours can you moderate per week?' could reveal follow-up questions about specific time slots if the answer exceeds a threshold.