Documentation
Learn TicketsX faster
Setup guides, the full command reference, Premium features, and the REST API in one place.
Rate Limits & Safety
The API is built so that a token can never be used to abuse a server, even if it leaks. The following protections apply to every request.
Every endpoint is Premium-gated before anything else runs — before the token is looked up and before any rate limit is counted — so a server without an active subscription always gets the same 402 answer instead of a partially-applied request.
- No mass pings. All API-driven messages (including webhook messages and tags) have
@everyone,@here, and arbitrary role mentions disabled. Only a panel’s configured mention role and the ticket creator can be pinged when opening a ticket. - No impersonation. Webhook display names containing reserved words like "discord" or "clyde" are replaced, and avatar overrides must be valid
https://URLs. - Premium required. The API is a Premium feature. Without an active subscription every request returns
402withpremium_required: true, and new tokens cannot be created or rotated. - Rate limits. Each token is rate limited per action (for example: open ticket 10/min, send message 30/min, rename 2/10min, panel switch 2/10min, panel edits 10/min, panel resend 4/10min, reads 120/min). Exceeding a limit returns
429with aretry_aftervalue in seconds. CallGET /api/tokenfor the live table. - Heavy reads are limited separately. Transcript search and HTML transcript downloads get 10/min each, and full indexed transcripts 30/min, so they never ride the generous 120/min read bucket. Search additionally runs at most two at a time server-wide and aborts with
504if it exceeds its time budget, so search traffic can never starve ticket operations. - Open-ticket cap. The API will not open new tickets once a server reaches its open-ticket safety cap, and it refuses to open tickets for blacklisted users.
- Least privilege. Sensitive permissions (Read Ticket Messages, View Transcripts, Search Transcripts, Download Transcript HTML, Use Tags, Rename Tickets, Manage Panels, Switch Ticket Panels) are off by default and must be explicitly enabled per token.
- Historical reads are audited. Downloading a full HTML transcript is written to the server’s activity log with the token that did it, alongside every mutation the API performs.
- Panels stay wired to your setup. Manage Panels can only change a panel’s appearance (name, embed, buttons). Channels, categories, mention roles, forms, and support teams cannot be changed through the API.
- Expiry & rotation. Tokens can be given an expiry, disabled, or rotated from the dashboard; rotating immediately invalidates the previous secret.
- Guild scoping. A token only works for the single server it was created in; every request is re-checked against that server.
