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

# Códigos

> Gere códigos de convite para que usuários pulem a allowlist e recebam cargos automaticamente.

Códigos são uma forma de dar acesso direto a alguém sem passar pelo questionário da allowlist — úteis para parcerias, influenciadores ou convites especiais. Cada código pode ter:

* Um limite de usos (ou ilimitado) e uma data de expiração (ou nunca expirar);
* Um usuário "vinculado", usado só para rastreamento e ranking — **qualquer pessoa pode resgatar o código**, o vínculo não restringe quem consegue usá-lo;
* Cargos adicionados/removidos automaticamente ao ser resgatado;
* Histórico de quem usou cada código.

### Acessando o painel

Execute `/gerenciar` → **Allowlist** → **Códigos** para acessar todas as ações abaixo.

### Gerando códigos

<Steps>
  <Step title="Código personalizado">
    Selecione **Gerar códigos - Personalizado** e defina o identificador (até 255 caracteres, precisa ser único entre os códigos ativos), a quantidade de usos (`0` para ilimitado), um usuário para vincular (opcional, apenas para rastreamento) e uma data de expiração opcional no formato `DD/MM/AAAA HH:mm`.
  </Step>

  <Step title="Códigos aleatórios">
    Selecione **Gerar códigos - Aleatório** para gerar de 1 a 50 identificadores aleatórios de uma vez, todos com as mesmas configurações de usos, vínculo e expiração.

    <Info>
      Se algum identificador aleatório colidir com um já existente, a FiveDesk tenta gerar outro automaticamente. Com mais de 10 códigos gerados, a lista completa vem anexada em um arquivo de texto.
    </Info>
  </Step>
</Steps>

### Configurando o comportamento

<Steps>
  <Step title="Cargos do código">
    Selecione **Configurar cargos** para escolher até 10 cargos a adicionar e até 10 a remover, aplicados a **qualquer** usuário que resgatar **qualquer** código (a configuração é global, não por código).
  </Step>

  <Step title="Canal de logs">
    Selecione **Configurar canal de logs** para receber um registro de cada ação: geração, edição, ativação/desativação, exclusão e uso de códigos.
  </Step>

  <Step title="Mensagem de resgate">
    Selecione **Enviar mensagem** para publicar, em um canal à sua escolha, uma mensagem com um botão **Usar código** — um atalho alternativo ao botão **Resgatar código** já presente na mensagem principal da allowlist.
  </Step>
</Steps>

### Consultando códigos

<Steps>
  <Step title="Listar todos os códigos">
    Selecione **Listar todos os códigos** para ver todos, ordenados por disponibilidade. A lista completa em CSV sempre vem anexada.
  </Step>

  <Step title="Procurar um código específico">
    Selecione **Procurar código específico** e informe o identificador para ver detalhes, editar, ver quem usou (**Ver usos**), ativar/desativar ou excluir permanentemente.

    <Warning>
      Excluir um código é permanente e não pode ser desfeito. Desativar, por outro lado, pode ser revertido reativando o mesmo identificador depois.
    </Warning>
  </Step>

  <Step title="Procurar por usuário">
    Selecione **Procurar por usuário** para ver todos os códigos vinculados a uma pessoa, o total de usos acumulados e quantos códigos ainda estão disponíveis.
  </Step>

  <Step title="Ranking">
    Selecione **Ranking** para ver o top 10 de códigos mais usados e o top 10 de usuários vinculados com mais usos acumulados.
  </Step>
</Steps>

### Resgatando um código (usuário)

Qualquer usuário pode clicar em **Resgatar código** (na mensagem principal da allowlist ou na mensagem de resgate dedicada) e digitar o identificador. Se o código existir, estiver ativo, não tiver expirado e ainda tiver usos disponíveis, ele é aplicado imediatamente — cargos configurados são atribuídos/removidos na hora, sem precisar de aprovação da equipe.
