# Configuration

## Welcomer

Set up automatic messages when members join or leave your server. See [Variables](https://docs.invite-count.xyz/reference/variables) for all available placeholders.

### Join Messages

| Command                       | Description                                |
| ----------------------------- | ------------------------------------------ |
| `/welcome gui`                | Open the modal editor for welcome messages |
| `/welcome text <type> [text]` | Set the welcome message text directly      |
| `/welcome channel <#channel>` | Set the channel for welcome messages       |
| `/welcome on`                 | Enable welcome messages                    |
| `/welcome off`                | Disable welcome messages                   |
| `/welcome test <type>`        | Preview your welcome message               |
| `/welcome show`               | Show current welcome configuration         |

### Leave Messages

| Command                     | Description                              |
| --------------------------- | ---------------------------------------- |
| `/leave gui`                | Open the modal editor for leave messages |
| `/leave text <type> [text]` | Set the leave message text directly      |
| `/leave channel <#channel>` | Set the channel for leave messages       |
| `/leave on`                 | Enable leave messages                    |
| `/leave off`                | Disable leave messages                   |
| `/leave test <type>`        | Preview your leave message               |
| `/leave show`               | Show current leave configuration         |

### Join DM Messages

| Command               | Description                                |
| --------------------- | ------------------------------------------ |
| `/joindm gui`         | Open the modal editor for join DM messages |
| `/joindm text <text>` | Set the join DM message text directly      |
| `/joindm on`          | Enable join DM messages                    |
| `/joindm off`         | Disable join DM messages                   |
| `/joindm test`        | Preview your join DM message               |
| `/joindm show`        | Show current join DM configuration         |

{% hint style="info" %}
Use `/welcome gui`, `/leave gui`, or `/joindm gui` for the easiest way to edit messages with a modal editor.
{% endhint %}

***

## Autoroles

Automatically assign roles to new members when they join.

| Command                    | Description                               |
| -------------------------- | ----------------------------------------- |
| `/autorole add <@role>`    | Add a role to be given to all new members |
| `/autorole remove <@role>` | Remove an autorole                        |
| `/autorole list`           | List all configured autoroles             |
| `/autorole reset`          | Remove all autoroles                      |

{% hint style="warning" %}
The bot's role must be **above** the autorole in the role hierarchy for it to be assigned.
{% endhint %}

***

## Ranks

Reward roles based on message count. When a member reaches the required number of messages, they automatically receive the configured role.

| Command                             | Description                                   |
| ----------------------------------- | --------------------------------------------- |
| `/rank add <@role> <messages_need>` | Add a role reward at a specific message count |
| `/rank remove <@role>`              | Remove a role reward                          |
| `/rank list`                        | List all configured rank rewards              |

***

## Blacklist

Prevent specific users from being counted as valid inviters.

| Command                       | Description                        |
| ----------------------------- | ---------------------------------- |
| `/blacklist add <@member>`    | Add a member to the blacklist      |
| `/blacklist remove <@member>` | Remove a member from the blacklist |
| `/blacklist list`             | List all blacklisted members       |
| `/blacklist reset`            | Clear the entire blacklist         |

***

## Verification

Protect your server from raids by requiring new members to verify themselves.

| Command                            | Description                                            |
| ---------------------------------- | ------------------------------------------------------ |
| `/verification disabled`           | Disable the verification system                        |
| `/verification level <level>`      | Set the verification level (`Button` or `Captcha`)     |
| `/verification action <action>`    | Set the action on failure (`Ignore`, `Kick`, or `Ban`) |
| `/verification timeout <seconds>`  | Set the verification timeout (15–600 seconds)          |
| `/verification role <@role>`       | Set the role granted upon successful verification      |
| `/verification channel <#channel>` | Set a fallback channel if the member has DMs closed    |
| `/autoverify <@member>`            | Manually verify a member                               |

***

## :star2: Logging

Track important server events in a dedicated channel. **Premium only.**

| Command                              | Description                 |
| ------------------------------------ | --------------------------- |
| :star2: `/logger add <log>`          | Enable a specific log type  |
| :star2: `/logger remove <type>`      | Disable a specific log type |
| :star2: `/logger channel <#channel>` | Set the logging channel     |
| :star2: `/logger list`               | List all enabled log types  |

### Log Types

| Log              | Description                                        |
| ---------------- | -------------------------------------------------- |
| 🏆 Message Ranks | Log when a member reaches a configured rank reward |
| 🎉 Giveaways     | Log when a giveaway ends                           |
| 🕵️ Fake Invites | Log when a member is detected as a fake invite     |
| 🔔 Alert Invites | Log alert invite triggers                          |

***

## :star2: Alert Invites

Get notified when a member reaches a specific invite count. **Premium only.**

| Command                                  | Description                             |
| ---------------------------------------- | --------------------------------------- |
| :star2: `/alert-invites add <amount>`    | Add an invite alert at a specific count |
| :star2: `/alert-invites remove <amount>` | Remove an invite alert                  |
| :star2: `/alert-invites list`            | List all configured invite alerts       |

### Webhooks

Send real-time HTTP notifications to your own server when alerts trigger.

| Command                                       | Description                 |
| --------------------------------------------- | --------------------------- |
| :star2: `/alert-invites webhook url <url>`    | Set a custom webhook URL    |
| :star2: `/alert-invites webhook secret`       | View your webhook secret    |
| :star2: `/alert-invites webhook reset-secret` | Reset your webhook secret   |
| :star2: `/alert-invites webhook test`         | Send a test webhook request |

See the [Alert Invites feature page](https://docs.invite-count.xyz/features/alerts) for full webhook documentation.

***

## Fake Delay

| Command                            | Description                                                               |
| ---------------------------------- | ------------------------------------------------------------------------- |
| :star2: `/fakedelay <days_amount>` | Set the minimum account age (in days) before an invite is counted as real |

{% hint style="info" %}
Set to `-1` to disable fake detection. Any member with an account younger than the configured number of days will be flagged as a fake invite.
{% endhint %}
