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

# Server moderation commands

> Channel controls, message cleanup, emojis, giveaways, starboard and ticket commands.

Sixteen commands that act on the server rather than on a member.

## Channels

| Command     | You need        | Vetox needs     | Cooldown |
| ----------- | --------------- | --------------- | -------- |
| `/lock`     | Manage Channels | Manage Channels | 2s       |
| `/unlock`   | Manage Channels | Manage Channels | 2s       |
| `/hide`     | Manage Channels | Manage Channels | 2s       |
| `/show`     | Manage Channels | Manage Channels | 2s       |
| `/slowmode` | Manage Channels | Manage Channels | 2s       |

<AccordionGroup>
  <Accordion title="/lock and /unlock" icon="lock">
    Deny or restore **Send Messages** for `@everyone`. `channel` is optional and defaults to the current one. Works on text and announcement channels.
  </Accordion>

  <Accordion title="/hide and /show" icon="eye-slash">
    Deny or restore **View Channel** for `@everyone`. Works on text, announcement, voice, forum and stage channels.
  </Accordion>

  <Accordion title="/slowmode" icon="hourglass">
    `duration` is **required** — `5s`, `2m`, `1h`, or `off` to clear it. `channel` and `reason` are optional.
  </Accordion>
</AccordionGroup>

<Tip>
  `/lock` stops people talking but they can still read. `/hide` removes the channel from view entirely. During a raid, lock first — hiding causes more confusion than it prevents.
</Tip>

## Cleanup

<AccordionGroup>
  <Accordion title="/clear — bulk delete" icon="broom">
    Requires **Manage Messages** on both sides. Cooldown 10s.

    | Option  | Required | Notes                              |
    | ------- | -------- | ---------------------------------- |
    | `count` | No       | 1 to 500                           |
    | `user`  | No       | Only delete this member's messages |

    <Warning>
      Discord does not allow bulk deletion of messages older than **14 days**. Older messages are skipped.
    </Warning>
  </Accordion>
</AccordionGroup>

## Emojis

<AccordionGroup>
  <Accordion title="/add-emoji — bulk upload" icon="face-smile">
    Requires **Manage Expressions** on both sides. Cooldown 30s.

    Both options — `emojis` and `message_id` — are optional, but **one of them must be supplied**. Pass a list of emojis, or the ID of a message containing them.

    <Note>
      Uploads are limited by your server's emoji slots, which depend on your Discord boost level.
    </Note>
  </Accordion>
</AccordionGroup>

## Giveaways

All five require **Manage Server**, plus **Send Messages** and **Embed Links** for Vetox. Cooldown 5s.

<AccordionGroup>
  <Accordion title="/gstart — start a giveaway" icon="gift">
    | Option            | Required | Notes                                                        |
    | ----------------- | -------- | ------------------------------------------------------------ |
    | `prize`           | **Yes**  | Up to 256 characters                                         |
    | `duration`        | **Yes**  |                                                              |
    | `channel`         | No       | Defaults to the current channel                              |
    | `winners`         | No       | 1–20                                                         |
    | `description`     | No       | Up to 1,024 characters                                       |
    | `required-role`   | No       |                                                              |
    | `min-account-age` | No       | 1–365 days                                                   |
    | `min-level`       | No       | 1–200                                                        |
    | `excluded-role`   | No       |                                                              |
    | `bypass-role`     | No       | Skips every requirement                                      |
    | `ping-role`       | No       | **Only settable here — the dashboard has no control for it** |
    | `start-time`      | No       | Delay the start                                              |
  </Accordion>

  <Accordion title="/gdrop — drop giveaway" icon="bolt">
    First to click wins. `prize` and `winners` (1–20) are **required**; `channel`, `description`, `required-role`, `min-account-age` and `min-level` are optional.
  </Accordion>

  <Accordion title="/gend, /greroll, /glist" icon="flag-checkered">
    `/gend` takes a required `giveaway-id`. `/greroll` takes a required `message-id` and an optional `count` (1–20). `/glist` takes no options.
  </Accordion>
</AccordionGroup>

<Note>
  `ping-role` is the one giveaway setting that exists only as a command option. If you need a role pinged, start the giveaway with `/gstart` rather than from the dashboard. See [Giveaways](/en/engagement/giveaways).
</Note>

## Starboard

<AccordionGroup>
  <Accordion title="/starboard — manage entries" icon="star">
    Requires **Manage Messages**. Cooldown 3s. Six subcommands, all taking a required `message` link and an optional `starboard` name:

    | Subcommand | Effect                                     |
    | ---------- | ------------------------------------------ |
    | `force`    | Add a message regardless of its star count |
    | `unforce`  | Undo a force                               |
    | `freeze`   | Stop the star count updating               |
    | `unfreeze` | Resume updating                            |
    | `trash`    | Remove and block from returning            |
    | `untrash`  | Restore a trashed entry                    |

    <Note>
      The `starboard` option does **not** autocomplete — type the name exactly as configured.
    </Note>

    <Tip>
      `untrash` exists here but is not reachable from the dashboard leaderboard. This command is the only way to restore a trashed entry.
    </Tip>
  </Accordion>

  <Accordion title="⭐ Send to Starboard — context menu" icon="star">
    Right-click a message → Apps → **Send to Starboard**. Same permissions as `/starboard`.

    <Note>
      Being a context-menu entry, it does not appear on the dashboard's Commands page and its per-server settings cannot be changed there.
    </Note>
  </Accordion>
</AccordionGroup>

<Note>
  Both require the **Starboard** module in [Server Setup](/en/server-management/setup).
</Note>

## Tickets

<AccordionGroup>
  <Accordion title="/ticket — 14 subcommands" icon="ticket">
    Vetox needs **Manage Channels** and **Manage Messages**. Cooldown 3s.

    | Subcommand      | Options                                              | Effect                            |
    | --------------- | ---------------------------------------------------- | --------------------------------- |
    | `close`         | `reason` optional                                    | Close the ticket                  |
    | `claim`         | —                                                    | Claim it                          |
    | `unclaim`       | —                                                    | Release it                        |
    | `reopen`        | —                                                    | Reopen a closed ticket            |
    | `add`           | `user` required                                      | Add someone                       |
    | `remove`        | `user` required                                      | Remove someone                    |
    | `rename`        | `name` required, max 100                             | Rename the channel                |
    | `priority`      | `level` required — none, low, medium, high, urgent   | Set priority                      |
    | `transfer`      | `category` required                                  | Move to another category          |
    | `closerequest`  | —                                                    | Ask the creator to close          |
    | `escalate`      | `target` required (autocompletes), `reason` optional | Escalate to another panel         |
    | `note`          | `content` required                                   | Add an internal note              |
    | `merge`         | `target` required                                    | Merge into another ticket         |
    | `notifications` | —                                                    | Your own ticket alert preferences |

    All except `notifications` must be run inside a ticket channel.
  </Accordion>
</AccordionGroup>

<Warning>
  **`/ticket` carries no Discord permission requirement of its own.** Access is decided by your ticket panel's support roles.

  Only `close`, `claim`, `add`, `remove` and `reopen` are covered by per-button permission rules. The other nine — including `rename`, `transfer`, `merge` and `note` — can be run by anyone who can act in the ticket at all. Bear that in mind when deciding who gets ticket access.
</Warning>

<Warning>
  **Turning Tickets off in Server Setup does not disable `/ticket`.** It continues to work in existing ticket channels.
</Warning>

<Note>
  The dashboard lists a `tag` subcommand that the bot does not register. It cannot be run.
</Note>

## Troubleshooting

<AccordionGroup>
  <Accordion title="/clear did not delete everything">
    Discord blocks bulk deletion beyond 14 days.
  </Accordion>

  <Accordion title="/lock did not stop people talking">
    A role with an explicit Send Messages allow overrides the `@everyone` deny. Check role overwrites on that channel.
  </Accordion>

  <Accordion title="/starboard says the starboard was not found">
    The name must match exactly and does not autocomplete.
  </Accordion>

  <Accordion title="A ticket subcommand says it must be run in a ticket">
    All except `notifications` require a live ticket channel.
  </Accordion>

  <Accordion title="/add-emoji failed">
    Usually no free emoji slots, or Vetox lacks Manage Expressions.
  </Accordion>
</AccordionGroup>

<CardGroup cols={2}>
  <Card title="Member moderation" icon="gavel" href="/en/commands/moderation">
    Acting on members.
  </Card>

  <Card title="Tickets" icon="ticket" href="/en/utility/tickets/overview">
    How the ticket system works.
  </Card>
</CardGroup>
