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

# Button Roles

> Allow users to claim roles by clicking interactive buttons.

## Overview

Button roles are a modern, high-conversion way to handle self-assigning roles. Unlike reactions, buttons provide a clear call to action and support custom labels and styles.

## Creating Button Roles

To create a button role, you must first have an existing message (sent by anyone) that the buttons will be attached to.

<CodeGroup>
  ```javascript Syntax theme={null}
  ,buttonrole add (message_link) (role) [style] [emoji] [label]
  ```

  ```javascript Example theme={null}
  ,buttonrole add https://discord.com/... @Announcements blurple :bell: Notify Me
  ```
</CodeGroup>

***

## Customization Options

### Button Styles

You can customize the appearance of the button using these style names or colors:

| Style                 | Color                  |
| :-------------------- | :--------------------- |
| `primary` / `blurple` | Blurple (Discord Blue) |
| `secondary` / `grey`  | Grey                   |
| `success` / `green`   | Green                  |
| `danger` / `red`      | Red                    |

### Label & Emoji

* **Label**: The text displayed on the button. If omitted, it defaults to the role's name.
* **Emoji**: You can use standard or custom emojis on the button.

***

## Technical Details

* **Limits**: Each message can have a maximum of **25 buttons**.
* **Message Permissions**: greed must have permission to edit the message if it was sent by greed, or it must be a message that greed is "managing" via its own message link.

## Management Commands

* `,buttonrole list`: View all messages that currently have button roles attached.
* `,buttonrole remove (message_link) (role)`: Remove a specific role button.
* `,buttonrole removeall (message_link)`: Clear all buttons from a message.
* `,buttonrole reset`: Clear every button role configuration in the server.
