Skip to content
Sayrix edited this page Apr 29, 2026 · 3 revisions

Is this documentation for v3 or v4?

This wiki targets the current v4 codebase. The old v3 docs can still be useful for general ideas, but the v4 config and runtime behavior should be documented from this repository.

Do I need privileged intents?

No, not for the current v4 code. The bot uses the Guilds gateway intent. Server Members, Message Content, and Presence privileged intents are not required by the current codebase.

Where is ticket data stored?

Ticket data is stored in the database configured by DB_FILE_NAME. For local SQLite, the recommended path is:

DB_FILE_NAME=file:.data/ticket-bot.db

Why does the bot edit panel messages on startup?

Ticket-Bot tracks panel messages in the database. On startup, it edits the existing panel message when possible instead of posting duplicates.

Can I have multiple panels?

Yes. Add multiple entries under panels. Each panel can point to a different channel, message template, and set of ticket types.

Can different ticket types have different staff?

Yes. Use global tickets.staffRoleIds for all ticket types and ticketTypes.*.staffRoleIds for per-type staff.

Can users answer questions before a ticket opens?

Yes. Add openForm to a ticket type. Discord modals support up to 5 text inputs.

Can I disable transcripts?

Yes:

tickets: {
  close: {
    createTranscript: false
  }
}

Can I keep closed tickets instead of deleting them?

Yes. Set:

deleteChannelOnClose: false

Optionally set closeTicketCategoryId to move closed tickets into a review category.

Why is there a powered-by notice?

Ticket-Bot's AGPL license includes an additional attribution requirement. You must keep visible credit to Ticket-Bot with a link to the original project or website.

Clone this wiki locally