Tickets
Ticket panels give your members a button (or menu) to open a private support or application channel. A single panel can offer several ticket types — each with its own requirements, questions, staff roles, and category. Requirements are enforced: if an applicant’s linked accounts don’t meet the Town Hall, hero, trophy, or war-star bar, the ticket won’t open.
Multiple ticket types per panel, rendered as buttons or a select menu.
RequirementsEnforced TH / hero / war-star / trophy gates against linked accounts.
Questions & claimAsk up to 5 questions on open; staff claim tickets to avoid double-handling.
Replies, logs, sleepSaved replies with variables, log channels, transcripts, and auto-sleep.
Panels
Section titled “Panels”/ticket panel-create
Section titled “/ticket panel-create”Create a panel with one starter ticket type. Add more types with type-add.
| Option | Type | Required | Notes |
|---|---|---|---|
name |
string | Yes | Internal panel name (used by the other subcommands). |
title |
string | No | Embed title. |
description |
string | No | Embed description. |
color |
string | No | Hex color, e.g. #5865F2. |
button_label |
string | No | Menu-mode button label. |
button_emoji |
string | No | Menu-mode button emoji. |
display_mode |
string | No | menu (a select) or buttons (one per type, ≤5). |
category |
channel (category) | No | Default category new tickets open under. |
staff_role |
role | No | Ping + access role for the starter type. |
/ticket panel-edit
Section titled “/ticket panel-edit”Edit a panel’s base fields (title, description, color, button, display mode, category). Re-post afterward to refresh the live message.
/ticket panel-post
Section titled “/ticket panel-post”| Option | Type | Required | Notes |
|---|---|---|---|
name |
string | Yes | Which panel to post. |
channel |
channel (text) | No | Target channel (defaults to the current one). |
/ticket panel-info · /ticket list · /ticket panel-delete
Section titled “/ticket panel-info · /ticket list · /ticket panel-delete”Inspect a panel’s types + settings, list every panel, or delete one. Each takes a
required name (except list).
A panel can hold up to 25 ticket types.
/ticket type-add · /ticket type-edit
Section titled “/ticket type-add · /ticket type-edit”type-add needs panel and label; type-edit needs panel and type
(autocompleted). Both accept the same fields:
| Option | Type | Notes |
|---|---|---|
emoji |
string | Button/menu emoji. |
button_style |
string | primary, secondary, success, danger. |
require_linked |
boolean | Require a linked CoC account to open. |
th_min |
integer | Minimum Town Hall (1–18). |
min_trophies |
integer | Minimum trophies. |
max_accounts |
integer | How many accounts an applicant may apply with (1–25). |
staff_role |
role | Ping + full access. |
view_role |
role | View-only access. |
add_role / remove_role |
role | Added to / removed from the opener. |
open_category / sleep_category / closed_category |
channel (category) | Category per lifecycle stage. |
naming |
string | Channel naming, e.g. ticket-{count} (tokens: {count}, {user}, {account_name}, {account_th}, {status}). |
staff_thread |
boolean | Open a private staff thread with the ticket. |
allow_claim |
boolean | Show Claim / Unclaim buttons. |
auto_sleep_hours |
integer | Auto-sleep the ticket after N idle hours (1–720). |
/ticket type-remove
Section titled “/ticket type-remove”Remove a type by panel + type.
Requirements
Section titled “Requirements”Requirements are checked against the opener’s linked accounts when they click Open. An account that fails any rule is never offered; if none qualify, the ticket does not open and the applicant sees exactly what they’re short on.
/ticket apply-rules
Section titled “/ticket apply-rules”Set per-Town-Hall hero and war-star minimums for a type.
| Option | Type | Required | Notes |
|---|---|---|---|
panel |
string | Yes | Panel name. |
type |
string | Yes | Ticket type (autocompleted). |
town_hall |
integer | Yes | The Town Hall row these rules apply to (1–18). |
bk / aq / gw / rc |
integer | No | Minimum Barbarian King / Archer Queen / Grand Warden / Royal Champion. |
war_stars |
integer | No | Minimum war stars. |
min_trophies |
integer | No | Type-level trophy minimum. |
requirement |
string | No | Freeform note shown to applicants. |
/ticket apply-rules panel:apply type:main town_hall:16 bk:90 aq:90 gw:65 rc:45 war_stars:2000Questions and claim
Section titled “Questions and claim”/ticket type-questions
Section titled “/ticket type-questions”Attach up to five questions to a type. When someone opens that type, ClashDuke shows a form and posts the answers inside the ticket.
| Option | Type | Required | Notes |
|---|---|---|---|
panel |
string | Yes | Panel name. |
type |
string | Yes | Ticket type (autocompleted). |
q1–q5 |
string | No | Question prompts. |
optional |
boolean | No | Make every question optional (default: required). |
/ticket claim · in-ticket buttons
Section titled “/ticket claim · in-ticket buttons”Staff can Claim a ticket (button, or /ticket claim) so everyone knows who’s
handling it, and Unclaim to release it. Reopening a ticket clears its claim.
Managing a ticket
Section titled “Managing a ticket”Run these inside the ticket channel (staff), or use the in-ticket buttons.
| Subcommand | Options | Purpose |
|---|---|---|
close |
— | Close the ticket (staff or the opener). Saves a transcript, then deletes the channel. |
add |
user (required) |
Add a user to the ticket. |
sleep |
— | Mark the ticket dormant (moves it to the sleep category, mutes the opener). |
reopen |
— | Wake a dormant/closed ticket and clear any claim. |
status |
status (required) |
open, sleep, close, or delete. |
approve / deny |
reply, reason |
Resolve the application with a saved reply (or the default), then close. |
The in-ticket message also carries Notify Me, Reply, Set Clan, and Close buttons. Notify Me pings you when the applicant next replies.
Saved replies, logs, and transcripts
Section titled “Saved replies, logs, and transcripts”/ticket saved-reply-set · saved-reply-delete · saved-reply-list
Section titled “/ticket saved-reply-set · saved-reply-delete · saved-reply-list”Store up to 25 reusable replies. Content supports variables that expand when the
reply is posted (via a ticket’s Reply button or /ticket approve/deny):
{user} {name} {th} {clan} {account_name} {account_heroes} {clan_tag}
{ticket_count} {server_name}
/ticket saved-reply-set name:welcome content:Welcome {user}! Your TH{th} is a great fit for {clan}./ticket logs
Section titled “/ticket logs”Route lifecycle events to channels.
| Option | Type | Notes |
|---|---|---|
panel |
string | Panel name (required). |
button_click |
channel (text) | Log panel clicks. |
status_change |
channel (text) | Log opens / claims / sleeps. |
ticket_close |
channel (text) | Log closes with the transcript attached. |
Auto-sleep
Section titled “Auto-sleep”Set auto_sleep_hours on a type and ClashDuke automatically marks idle tickets
dormant. The clock resets whenever the applicant replies; staff can reopen a
slept ticket at any time.
Staff notifications
Section titled “Staff notifications”/ticket opt
Section titled “/ticket opt”Opt yourself in or out of being auto-pinged when new tickets open. Opting out keeps your channel access — you simply stop being pinged.
| Option | Type | Required | Notes |
|---|---|---|---|
choice |
choice | Yes | In (get pinged) or Out (stop being pinged). |
/ticket opt choice:Out