# Settings

## Introduction

Settings module is a module which allows server owners to manage the bot and giveaway settings.

## Settings

This command allows users to change the settings of the bot for the server or channel.

### settings server

This option allows users to change the settings of the bot for the entire server. The following parameters are required:

* `edit` - This sub-command allows users to edit specific server settings.
  * `option` - This option allows users to choose the setting they want to edit. The user can choose from the following options:
    * `Blacklist roles - role/s (leave space between if multiple)`: Allows the user to blacklist specific roles from participating in giveaways. To remove a Blacklisted role simply mention i in the `value` option. The user should enter the role mentions or ID separated by spaces if there are multiple roles.&#x20;
    * `Bypass roles - role/s (leave space between if multiple)`: Allows the user to specify roles that can bypass the blacklist and participate in giveaways. To remove a Bypass role simply mention it in the `value` option. The user should enter the role name or ID separated by spaces if there are multiple roles.
    * `Only new winners - Enable/Disable`: Allows the user to enable or disable the option for only new winners to be selected in giveaways. The user should enter either `Enable` or `Disable`.
    * `Custom giveaway emote - emoji/default`: Allows the user to set a custom emote for the bot to react with during giveaways. The user should enter the emoji or "default" for the default emote.
  * `value` - This option allows the user to enter the new value for the selected option.

Usage: `/settings server edit <option> <value>`

### settings channel

This option allows users to change the settings of the bot for a specific channel. The following parameters are required:

{% hint style="warning" %}
This command requires [premium](https://axwril.gitbook.io/giveaways/premium) to use.
{% endhint %}

* `edit` - This sub-command allows users to edit specific channel settings.
  * `channel` - This option allows the user to select the channel they want to edit.
  * `option` - This option allows users to choose the setting they want to edit. The user can choose from the following options:
    * `Use server settings - Enable/Disable"` Allows the user to enable or disable the option to use the server settings for the selected channel. This only applies to Bypass & Blacklist roles set via `settings server` command. The user should enter either `Enable` or `Disable` in the `value` option.&#x20;
    * `Blacklist roles - role/s (leave space between if multiple)`: Allows the user to blacklist specific roles from participating in giveaways in the specific channel. To remove a Blacklist role simply mention it in the `value` option. The user should enter the role name or ID separated by spaces if there are multiple roles.
    * `Bypass roles - role/s (leave space between if multiple)`: Allows the user to specify roles that can bypass the blacklist and participate in giveaways in the specific channel. To remove a Bypass role simply mention it in the `value` option. The user should enter the role name or ID separated by spaces if there are multiple roles.
  * `value` - This option allows the user to enter the new value for the selected option.

Usage: `/settings channel edit <channel> <option> <value>`

### settings info

This option allows users to check the current settings of the bot. The following parameter is optional:

* `channel` - This option allows the user to select the channel they want to check the settings for. This option is not required, and if not provided, the command will return the server settings.

Usage: `/settings info [channel]`

## Additional-entries

Additional entries command allows server owners to manage role whose owner is granted additional entries in a giveaway.

### additonal-entries add

Additional entries add command allows server owners to set a role whose owner will be granted addtional entries in a giveaway. The following parameters are required:

* `role` - The role from which you would like to remove additional entries
* `entries` - The number of additional entires that the role will be granted.

Usage: `/additonal-entries add <role> <entries>`

### additional-entries remove

Additional entries remove command allows server owners to remove additional entries form a role. The following parameters are required:

* `role` - The role from which you would like to remove additional entries

Usage: `/additonal-entries remove <role>`&#x20;

### additional-entries list

Allows server owner to list all roles whose owners are granted additional entries in a giveaway. No parameters are required.

Usage: `/additonal-entries list`

## Auto-ticket

Auto ticket command allows server owners to set a category in which ticket channels will be created.

### auto-ticket enable

Enables the auto-ticket module and creates a ticket channel in the specified category. The following parameter is required:

* `category`: Specifies the category in which a ticket channel will be created.&#x20;

Usage `auto-ticket enable <category>`

### auto-ticket disable

Disables the auto-ticket module. No parameters are required.

Usage `auto-ticket disable`

## Guild-group

Guild group command allows server owners to create guild groups. They can invite other guilds to join it and host giveaways for guild groups.

### **guild-group create**

Create a new guild group. The following parameters are required:

* `channel`: The channel in which cross-guild giveaways will be hosted.

Usage: `/guild-group create <channel>`

### **guild-group remove**

Remove a guild from a guild group. The following parameters are required:

* `guild-group-id`: The ID of the guild group from which a guild will be removed.
* `guild-id`: The ID of the guild that will be removed.

Usage: `/guild-group create <guild-group-id> <guild-id>`

### **guild-group leave**

Leave a existing guild group. The following parameter is required:

* `guild-group-id`: The ID of the guild group you would like to leave.

Usage: `/guild-group leave <guild-group-id>`

### **guild-group list**

Lists every giveaway currently hosted. No parameters are required.

Usage: `/guild-group list`

### **guild-group invite**

Invite a guild to join your guild group. The following parameters are required:

* `guild-group-id`: The ID of the guild group to which you would like to invite a guild.
* `guild-id`: The ID of the guild that will be invited.

Usage: `/guild-group invite <guild-group-id> <guild-id>`

### **guild-group requests**

List all guild group join requests. No parameters are required.

Usage: `/guild-group requests`

### **guild-group** accept

Accept a guild group invite. The following parameters are required:

* `guild-group-id`: The ID of the guild for which you would like to accept the request.
* `channel`: The channel in which cross-guild giveaways will be hosted.

Usage: `/guild-group accept <guild-group-id> <channel>`

## Permissions

The permissions command is used to assign permissions for a role to allow or deny certain commands. This can be useful for restricting access to certain bot commands based on user roles.

### permissions allow

Permissions allow allows you to assign permission for a role to run a particular command. The following parameters are required:

* `role` - The role which will be granted the permission to run specified command.
* `command` -  The command for which the permissions are being assigned.

Usage: `/permissions allow <role> <command>`

### permissions deny

Permissions deny allows you to deny permission for a role to run a particular command. The following parameters are required:

* `role` - The role which will be denied the permission to run specified command.
* `command` -  The command for which the permissions are being assigned.

Usage: `/permissions deny <role> <command>`

### permissions clear

Permissions clear allows you to clear all permissions for a role. The following parameter is required:

* `role` - The role which permissions will be cleared.

Usage: `/permissions clear <role>`

### permissions list

Permissions list lists all permissions for a role. The following parameter is required:

`role` - The role which permissions you would like to list.

Usage: `/permissions list <role>`

## Message-manager

Manage message requirements module.

### message-manager clear

Clear messages for the whole guild or of the specific user. The following parameter is optional:

* `clear` - The user whose messages you would like to clear.
