> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mira.party/llms.txt
> Use this file to discover all available pages before exploring further.

# Options

> Each reason a member can open a ticket for, and everything you can configure about it.

An option is one button or one dropdown entry. It's where nearly all ticket configuration lives — appearance, category, lifecycle timers, and [access rules](/setup/tickets/access).

Every command needs **ticket staff** or **Administrator**, and takes the **panel name** followed by the **option name**.

## Creating one

```javascript theme={null}
!tickets option add Support general "General Help"
```

The third argument (`general`) is the internal name you'll use in commands. The fourth is the label members see — it defaults to the internal name if you leave it off.

<CodeGroup>
  ```javascript List a panel's options theme={null}
  !tickets option list Support
  ```

  ```javascript Remove one theme={null}
  !tickets option remove Support general
  ```

  ```javascript Disable without deleting theme={null}
  !tickets option toggle Support general off
  ```
</CodeGroup>

`toggle` is the safe way to retire an option temporarily — it stops appearing on the panel, but its configuration and existing tickets are untouched. Remember to `!tickets resend Support` afterwards.

## Appearance

<CodeGroup>
  ```javascript Label theme={null}
  !tickets option label Support general "General Help"
  ```

  ```javascript Emoji theme={null}
  !tickets option emoji Support general 💬
  ```

  ```javascript Description (dropdown only) theme={null}
  !tickets option description Support general "Questions about the server"
  ```

  ```javascript Button colour (button mode only) theme={null}
  !tickets option style Support general primary
  ```
</CodeGroup>

| Style       | Colour  |
| ----------- | ------- |
| `primary`   | Blurple |
| `secondary` | Grey    |
| `success`   | Green   |
| `danger`    | Red     |

Descriptions only render in dropdown mode; styles only apply in button mode. Setting the irrelevant one does no harm.

## Categories

An option can move its ticket channel between categories as the ticket progresses:

<CodeGroup>
  ```javascript When opened theme={null}
  !tickets option category Support general open "Open Tickets"
  ```

  ```javascript When claimed theme={null}
  !tickets option category Support general claim "In Progress"
  ```

  ```javascript When closed theme={null}
  !tickets option category Support general close "Closed"
  ```
</CodeGroup>

This gives you a Kanban-style view in the channel sidebar without any extra tooling. Options that don't set a category fall back to the [panel's](/setup/tickets/panels#categories) default.

## Renaming on state change

```javascript theme={null}
!tickets option rename Support general claim 🔨-{case}
!tickets option rename Support general close closed-{case}
```

The channel is renamed when a ticket is claimed or closed, so open tickets stand out at a glance.

<Warning>
  Discord rate-limits channel renames to **twice per 10 minutes**. A ticket that's claimed, unclaimed and re-claimed quickly may not rename every time. It's cosmetic and catches up, but don't rely on it as the source of truth.
</Warning>

## Lifecycle timers

All take a duration, and `0` disables:

<CodeGroup>
  ```javascript Nudge after silence theme={null}
  !tickets option inactivity Support general 1d
  ```

  ```javascript Close after silence theme={null}
  !tickets option autoclose Support general 3d
  ```

  ```javascript Delete after closing theme={null}
  !tickets option autodelete Support general 7d
  ```

  ```javascript Close if the creator leaves theme={null}
  !tickets option closeonleave Support general on
  ```
</CodeGroup>

The natural ordering is `inactivity` \< `autoclose` \< `autodelete` — remind, then close, then clean up.

<Tip>
  `closeonleave` is worth turning on everywhere. A ticket whose creator has left the server can't be resolved, and they otherwise accumulate until someone notices.
</Tip>

## Messages

Each option has its own set of messages. Covered fully in [Messages & forms](/setup/tickets/messages):

```javascript theme={null}
!tickets option message Support general greeting {title: Ticket #{case}} {description: hey {creator.mention} — someone will be with you shortly.}
```

Kinds: `greeting`, `claim`, `close`, `reopen`, `move`, `auto_close`, `inactivity`, `denial`.

## Moving a ticket

```javascript theme={null}
!tickets move Support billing
```

Run inside a ticket, this moves it to a different option — applying that option's category, support roles and permissions. The right response to "this is actually a billing question".

## A worked example

Three options with genuinely different behaviour:

```javascript theme={null}
// quick questions — fast turnaround, closes itself
!tickets option add Support general "General Help"
!tickets option emoji Support general 💬
!tickets option description Support general "Questions about the server"
!tickets option supportroles Support general @Support
!tickets option inactivity Support general 12h
!tickets option autoclose Support general 2d
!tickets option autodelete Support general 3d

// user reports — moderators only, private, kept longer
!tickets option add Support report "Report a User"
!tickets option emoji Support report 🚨
!tickets option style Support report danger
!tickets option supportroles Support report @Moderator
!tickets option category Support report open "Reports"
!tickets option autoclose Support report 7d
!tickets option autodelete Support report 30d

// ban appeals — admins only, never auto-closes
!tickets option add Support appeal "Ban Appeal"
!tickets option emoji Support appeal ⚖️
!tickets option supportroles Support appeal @Admin
!tickets option autoclose Support appeal 0
!tickets option closeonleave Support appeal off

!tickets resend Support
```

## Command reference

| Command                                                    | Aliases               | Description                   |
| ---------------------------------------------------------- | --------------------- | ----------------------------- |
| `tickets option add <panel> <name> [label]`                | `create`, `new`       | Create an option              |
| `tickets option list <panel>`                              | `ls`                  | View a panel's options        |
| `tickets option remove <panel> <name>`                     | `delete`, `del`, `rm` | Delete an option              |
| `tickets option toggle <panel> <name> (on/off)`            | `enable`, `disable`   | Show or hide it               |
| `tickets option label <panel> <name> <text>`               | —                     | Displayed label               |
| `tickets option emoji <panel> <name> <emoji>`              | —                     | Emoji                         |
| `tickets option description <panel> <name> <text>`         | `desc`                | Dropdown description          |
| `tickets option style <panel> <name> <style>`              | —                     | Button colour                 |
| `tickets option category <panel> <name> <kind> <category>` | —                     | open / claim / close category |
| `tickets option rename <panel> <name> <kind> <template>`   | —                     | Rename on claim or close      |
| `tickets option inactivity <panel> <name> <duration>`      | —                     | Inactivity reminder           |
| `tickets option autoclose <panel> <name> <duration>`       | —                     | Auto-close after silence      |
| `tickets option autodelete <panel> <name> <duration>`      | —                     | Auto-delete after closing     |
| `tickets option closeonleave <panel> <name> (on/off)`      | —                     | Close if the creator leaves   |
| `tickets option message <panel> <name> <kind> <script>`    | `msg`                 | Set a message                 |
| `tickets move <panel> <option>`                            | —                     | Move the current ticket       |
