# Verification

The verification system protects your server from raids and bot accounts by requiring new members to complete a challenge before gaining access.

***

## How It Works

1. A new member joins the server
2. The bot sends them a **verification prompt** via DM (or in a fallback channel)
3. The member must complete the challenge (click a button or solve a captcha) within the timeout
4. On success: the member receives the **verified role** and gains access
5. On failure: the configured action is applied (ignore, kick, or ban)

***

## Setup

### 1. Set the Verification Level

```
/verification level <Button|Captcha>
```

| Level       | Description                                  |
| ----------- | -------------------------------------------- |
| **Button**  | Member must click a button to verify         |
| **Captcha** | Member must solve a text captcha sent via DM |

### 2. Set the Verified Role

```
/verification role <@role>
```

The role granted to members after successful verification. Typically, this is a role that unlocks access to your server's channels.

### 3. Set the Timeout

```
/verification timeout <seconds>
```

How long the member has to complete verification (15–600 seconds). Default behavior depends on your configuration.

### 4. Set the Failure Action

```
/verification action <Ignore|Kick|Ban>
```

| Action     | Description                                   |
| ---------- | --------------------------------------------- |
| **Ignore** | Do nothing if verification fails or times out |
| **Kick**   | Kick the member from the server               |
| **Ban**    | Ban the member from the server                |

### 5. Set the Fallback Channel (Optional)

```
/verification channel <#channel>
```

If a member has DMs disabled, the verification prompt will be sent in this channel instead.

***

## Commands

| 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 verification                 |
| `/verification channel <#channel>` | Set the fallback channel for users with DMs closed     |
| `/autoverify <@member>`            | Manually verify a member                               |

***

## Recommended Setup

1. Create a role (e.g., "Verified") and configure your channels so only verified members can see them
2. Set up verification: `/verification level Captcha`
3. Assign the role: `/verification role @Verified`
4. Set a timeout: `/verification timeout 120`
5. Set failure action: `/verification action Kick`
6. Set a fallback channel: `/verification channel #verify-here`
7. Test with a new account or ask a friend to join

{% hint style="warning" %}
The bot needs the **Manage Roles** permission and its role must be **above** the verified role in the role hierarchy.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.invite-count.xyz/features/verification.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
