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

# Cargos por reação

> Menus de cargos em qualquer mensagem: os membros reagem ou apertam um botão para receber um cargo, com os modos alternar, só dar e só tirar.

## Visão geral

Monte menus de cargos flexíveis sem comandos slash. O Petto aceita reações clássicas com emoji e botões clicáveis, com comportamento independente de alternar, só dar ou só remover para cada cargo vinculado.

Use para que os membros escolham as próprias cores, avisos ou interesses, ou para dar o cargo de membro quando alguém aceita as regras. O mais rápido é o criador do dashboard; os comandos também funcionam em qualquer mensagem.

## Comandos

```javascript Syntax theme={null}
!reactionrole add <message_id> <emoji> <role> [channel] [mode] [type] [label]
!reactionrole remove <message_id> <emoji> [channel]
!reactionrole list <message_id> [channel]
!reactionrole clear <message_id> [channel]
```

```javascript Example theme={null}
!reactionrole add 123456789012345678 🎮 @Gamer #general toggle
!reactionrole list 123456789012345678
!reactionrole add 123456789012345678 :joystick: @Gamer #general toggle button Gamer
```

> [accordion] !reactionrole add (reação)
>
> ![kira vincula 🎮 em uma mensagem do canal de cargos ao cargo Eventos e Petto confirma no modo toggle](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-add-reaction.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=0d8b44cc2f8727ee8ef4886bab912dbe)
>
> No Discord: um emoji de uma mensagem vinculado a um cargo.

> [accordion] !reactionrole add (botão)
>
> ![liam adiciona um botão 🏆 para Caçadores de missões ao menu de cores e Petto confirma o cargo do botão](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-add-button.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=392a7a2350b88f323508012dd43ca943)
>
> No Discord: um botão adicionado ao menu de cores.

> [accordion] !reactionrole remove
>
> ![liam remove o vínculo 🎉 do menu de cores, Petto confirma, e o mesmo comando de novo diz que esse emoji não estava vinculado](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-remove.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=47e54f8b0b1fe5942697f0ab48c44d29)
>
> No Discord: um vínculo removido, e a resposta quando o emoji não está mais vinculado.

> [accordion] !reactionrole list
>
> ![chu lista o menu de cores e Petto responde com os cinco cargos por botão e o modo](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-list.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=87789f8e7c9ace1995adf5bd9df35ae5)
>
> No Discord: os cargos de uma mensagem, listados com !rr.

> [accordion] !reactionrole clear
>
> ![liam limpa a mensagem de avisos e Petto diz que removeu três vínculos](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-clear.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=74a915e759a2cdd20088ef973b21f753)
>
> No Discord: todos os vínculos de uma mensagem removidos de uma vez.

> [accordion] Quando não funciona
>
> ![Petto recusa 🔴 porque já está vinculado, diz que não encontra uma mensagem e avisa nova da permissão manage\_roles que falta](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-errors.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=9b3b57618d237bb76f83935c2f85116b)
>
> No Discord: um emoji já vinculado, uma mensagem que não é encontrada e um membro sem Gerenciar cargos.

Se você não informar `channel`, é usado o canal atual. `emoji` aceita tanto emojis personalizados quanto os padrão.

`type` é `reaction` por padrão. Use `button` para transformar a mensagem em um menu de cargos clicável; uma mensagem pode ter até 25 botões do Petto em cinco fileiras. `label` é o texto do botão e, por padrão, é o nome do cargo. O modo de botão não pode ser adicionado a uma mensagem que já tem outro painel de componentes, como um painel de tickets ou do VoiceMaster.

Nome curto: `!rr`. `!reactionroleconfig` mostra todos os cargos por reação e por botão do servidor e os comandos para mudá-los.

![Petto lista os nove cargos vinculados do Petto Land com canal, emoji, cargo e modo, e depois os comandos do reactionrole](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-config.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=6e6f4026105b326bdd7fff6f735567de)

No Discord: o cartão do !reactionroleconfig com os cargos do Petto Land e os comandos.

## Criador no dashboard

O jeito mais rápido de fazer um menu de cargos é o criador do dashboard: **Automação → Cargos por reação → Criar um menu de cargos**.

**1. Escolha o canal e escreva a mensagem**

Escolha onde a mensagem será publicada e depois adicione texto e um embed (título, descrição, cor, rodapé, miniatura e imagem). Dá para carregar um embed salvo no gerador de embeds como ponto de partida, e um link abre o gerador.

![O criador com #cargos escolhido e o painel Mensagem: um embed salvo para começar, o conteúdo e o embed com título, descrição e cor](https://mintcdn.com/wikipetto/1Wz8dc-Kr9ITtTNY/images/dashboard/automation/pt-br/reaction-roles-builder-message.webp?fit=max\&auto=format\&n=1Wz8dc-Kr9ITtTNY\&q=85\&s=2b8e13f6f79b36ab67aa4474dde8e4e2)

Dashboard → Automação → Cargos por reação → Criar reaction role: o canal e a mensagem, com o embed do menu de cores.

**2. Adicione fileiras de botões**

Cada fileira tem até 5 botões e uma mensagem tem até 5 fileiras (25 botões). Para cada botão, escolha um nome (ou **Vazio** para mostrar só o emoji), uma cor (Azul, Cinza, Verde ou Vermelho), o cargo, o comportamento (alternar, só dar ou só remover) e um emoji opcional.

![A fileira 1 do criador com os botões Vermelho, Azul e Verde, a cor, o cargo, o comportamento alternar e o emoji, e as ferramentas para mover, copiar e remover](https://mintcdn.com/wikipetto/1Wz8dc-Kr9ITtTNY/images/dashboard/automation/pt-br/reaction-roles-builder-buttons.webp?fit=max\&auto=format\&n=1Wz8dc-Kr9ITtTNY\&q=85\&s=5afcaec752d1c425a1921c145e36fcf2)

Dashboard → Automação → Cargos por reação → Criar reaction role: as fileiras de botões, cada um com nome, cor, cargo, comportamento e emoji.

**3. Escolha os emojis**

O seletor de emojis tem uma aba **Servidor** com os seus emojis personalizados e uma aba **Unicode**, ambas com busca.

![A janela Escolher emoji com as abas Servidor e Unicode, a busca e a grade de emojis](https://mintcdn.com/wikipetto/1Wz8dc-Kr9ITtTNY/images/dashboard/automation/pt-br/reaction-roles-builder-emoji.webp?fit=max\&auto=format\&n=1Wz8dc-Kr9ITtTNY\&q=85\&s=86770678d033ef3bf775fd1df922556a)

Dashboard → Automação → Cargos por reação → Criar reaction role: o seletor de emojis na aba Unicode.

**4. Salve**

A barra de alterações não salvas aparece enquanto você edita. Ao salvar, a mensagem é publicada, ou editada se você abriu um menu que já existia.

![A prévia do menu de cores com os cinco botões, o botão Criar reaction role e a barra Você tem alterações não salvas](https://mintcdn.com/wikipetto/X8GdsHqKNBomKSYc/images/dashboard/automation/pt-br/reaction-roles-builder-save.webp?fit=max\&auto=format\&n=X8GdsHqKNBomKSYc\&q=85\&s=7d37c49b98f10274f2eb9e85263e384d)

Dashboard → Automação → Cargos por reação → Criar reaction role: a prévia da mensagem, o botão que a publica e a barra de alterações não salvas.

![O menu Escolha sua cor no canal de cargos com os botões Vermelho, Azul, Verde, Roxo e Eventos](https://mintcdn.com/wikipetto/LoL7QuPJ71yd9F_N/images/discord/automation/pt-br/reaction-roles.webp?fit=max\&auto=format\&n=LoL7QuPJ71yd9F_N\&q=85\&s=de679f5bc55188d0bce57b991641b2c9)

No Discord: um menu de cargos com um embed e duas fileiras de botões, como o criador publica.

Os botões podem ser movidos para a esquerda ou para a direita e duplicados (a cópia fica sem emoji até você escolher um, porque cada botão de uma mensagem precisa de um emoji diferente), e as fileiras podem subir ou descer. Para mudar um menu depois, abra-o na lista de **Cargos por reação** com **Editar a mensagem no criador**.

![A lista Cargos por reação do Petto Land com nove vínculos, o botão Vermelho aberto para editar e o formulário para adicionar um](https://mintcdn.com/wikipetto/X8GdsHqKNBomKSYc/images/dashboard/automation/pt-br/reaction-roles-list-dashboard.webp?fit=max\&auto=format\&n=X8GdsHqKNBomKSYc\&q=85\&s=ae8cb570a20fa736cf801ad73effafad)

Dashboard → Automação → Cargos por reação: os cargos vinculados do servidor, um aberto com Editar a mensagem no criador.

> [!NOTE]
>
> O criador funciona com embeds clássicos. Mensagens com Components V2 não podem ter botões de cargos.

O mesmo seletor de emojis é usado em Reações a mensagens, Gatilhos de reação, Starboard, Tickets, Botões com resposta e Parceiros.

## Botões por comando

`!reactionrole add` também aceita `embed` (com `message_id` igual a `new`, publica uma mensagem a partir de um embed salvo), `style` (cor do botão) e `row` (de 1 a 5), para que os menus feitos por comando possam usar o mesmo layout.

![liam publica o embed giveaway-pings em #cargos com um botão Sorteios e Petto responde com o link da mensagem e como adicionar mais botões](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-new-message.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=5aac7936099c87ee37893ef5a7abc427)

No Discord: uma mensagem nova publicada a partir de um embed salvo, com o primeiro botão.

## Exemplos

> [tab] Cargos de cor com botões
>
> **1. Crie a mensagem do menu**
>
> ```javascript Command theme={null}
> !embed create color-roles {embed}$v{title: 🎨 Escolha sua cor}$v{description: Clique em um botão para pegar uma cor, clique de novo para tirá-la.}$v{color: #f0a88f}
> ```
>
> ![liam cria color-roles a partir de um código e Petto mostra o embed Escolha sua cor](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-example-embed.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=276a8f00396c51b30f95aa576dae5b8c)
>
> No Discord: o embed salvo do menu, feito com !embed create.
>
> **2. Publique com o primeiro botão**
>
> ```javascript Command theme={null}
> !reactionrole add new 🔴 @Vermelho #cargos --embed color-roles --label Vermelho --style 4
> ```
>
> `new` publica o embed salvo em `#cargos` e coloca o botão nele. Copie o ID dessa mensagem para os próximos botões.
>
> ![Petto publica Escolha sua cor com um botão vermelho Vermelho e responde com o link da mensagem](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-example-first-button.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=7a3969934d554d57da793ad1fce52544)
>
> No Discord: o embed publicado em #cargos com o botão Vermelho.
>
> **3. Adicione os outros botões**
>
> ```javascript Command theme={null}
> !reactionrole add 123456789012345678 🔵 @Azul #cargos --type button --label Azul --style 1
> ```
>
> ![O menu agora tem os botões Vermelho e Azul, depois que liam adiciona o azul com --style 1](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-example-more-buttons.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=18faac3c057bbf5626af7c4ca772e455)
>
> No Discord: a mesma mensagem com o segundo botão, Azul.
>
> `style` é a cor do botão: `1` azul (blurple), `2` cinza, `3` verde, `4` vermelho.

> [tab] Cargos de notificação com reações
>
> ```javascript Commands theme={null}
> !reactionrole add 123456789012345678 📢 @Anúncios #cargos
> !reactionrole add 123456789012345678 🎉 @Eventos #cargos
> !reactionrole add 123456789012345678 🎁 @Sorteios #cargos
> ```
>
> Os membros reagem para receber o cargo e tiram a reação para perdê-lo.
>
> ![Uma mensagem em #cargos que explica os avisos, com as reações 📢, 🎉 e 🎁 e quantos membros escolheram cada uma](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-example-pings.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=dd170f457350fa46614f20230a8b47c9)
>
> No Discord: a mensagem de avisos com as três reações que os membros usam.

> [tab] Aceitar as regras
>
> ```javascript Command theme={null}
> !reactionrole add 123456789012345678 ✅ @Membro #regras add
> ```
>
> O modo `add` só dá o cargo: tirar a reação não remove o cargo, então os membros não perdem o acesso sem querer.
>
> ![liam vincula ✅ na mensagem das regras ao cargo Membros no modo add e Petto confirma](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-accept-rules.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=51ca26761e5d11e726b7a9cc28802cbd)
>
> No Discord: ✅ na mensagem das regras, no modo add.

Um embed salvo publicado com `new` pode usar [variáveis](https://wiki.petto.sbs/pt-br/resources/scripting/variables.md), preenchidas para quem usa o comando, então as do servidor, como `{server_name}` ou `{server_membercount}`, são as que fazem mais sentido ali.

## Modos

> [accordion] Alternar (padrão)
>
> Reagir dá o cargo, reagir de novo tira o cargo.
>
> ![O menu de cores e as duas respostas privadas do Petto, Vermelho adicionado e Vermelho removido](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-press-toggle.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=a29d9acd6a55a3c79996c89b02dce091)
>
> No Discord: nova aperta Vermelho duas vezes: ganha o cargo e depois perde. Só nova vê as respostas.

> [accordion] Só dar
>
> Reagir dá o cargo, tirar a reação não faz nada.
>
> ![Mia aperta Eventos, Petto diz que deu o cargo, e na segunda vez diz que ela já o tem](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-press-add-only.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=4325f8b6b18a171d951e13b799a9ed9a)
>
> No Discord: Eventos no modo só dar: o segundo clique não tira o cargo.

> [accordion] Só remover
>
> Reagir tira o cargo, útil junto com um cargo que os membros já recebem ao entrar.
>
> ![tommy aperta o botão vermelho Sem avisos de eventos, Petto tira Eventos, e na segunda vez diz que ele não o tem](https://mintcdn.com/wikipetto/OcAUaBAyli2de5qV/images/discord/automation/pt-br/reaction-roles-press-remove-only.webp?fit=max\&auto=format\&n=OcAUaBAyli2de5qV\&q=85\&s=bef91db833e24ebd343b13425fb08c5c)
>
> No Discord: um botão Sem avisos de eventos no modo só remover: só tira o cargo.

Os botões seguem os mesmos modos e Petto responde ao membro em privado (só ele vê). Com reações Petto não diz nada: o cargo simplesmente muda.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.