Discord Bot

Crie bots, envie notificacoes e automatize seu servidor Discord

Bots Webhooks Notificacoes Embeds

Discord + N8N

O Discord e a plataforma de comunidades mais popular entre devs, gamers e comunidades tech. Com N8N, voce pode criar bots que notificam, moderam e interagem automaticamente.

Notificacoes

Alertas de deploys, vendas, errors, novos usuarios

Bots Interativos

Responda comandos e mensagens dos usuarios

Moderacao

Detecte spam, de boas-vindas, atribua roles

Integracao

Conecte GitHub, Jira, Trello ao seu servidor

Duas Formas de Integrar

Webhook (Mais Facil)

Para apenas ENVIAR mensagens a um canal. Nao requer bot, nao recebe mensagens.

  • ✓ Configuracao em 2 minutos
  • ✓ Ideal para notificacoes
  • ✓ Suporta embeds ricos
  • ✗ Nao recebe mensagens
  • ✗ Nao responde comandos

Bot (Mais Poder)

Para ENVIAR e RECEBER mensagens. Necessita criar aplicacao no Discord.

  • ✓ Recebe mensagens e eventos
  • ✓ Responde comandos (slash)
  • ✓ Gerencia membros e roles
  • ✓ Acessa multiplos canais
  • ✗ Configuracao mais complexa
1

Opcao A: Webhook

Enviar notificacoes simples

Criar Webhook no Discord

  1. 1. Abra as configuracoes do canal (engrenagem ao lado do nome)
  2. 2. Va em Integracoes → Webhooks
  3. 3. Clique em Novo Webhook
  4. 4. De um nome e (opcional) avatar
  5. 5. Clique em Copiar URL do Webhook

Usar no N8N (HTTP Request)

// HTTP Request node
Method: POST
URL: https://discord.com/api/webhooks/XXXXXX/YYYYYY
Body Type: JSON

// Mensagem simples:
{
  "content": "Hello from N8N!"
}

// Mensagem com Embed:
{
  "embeds": [{
    "title": "Nova Venda!",
    "description": "Cliente comprou o plano Pro",
    "color": 5763719,
    "fields": [
      { "name": "Valor", "value": "R$ 99", "inline": true },
      { "name": "Cliente", "value": "joao@email.com", "inline": true }
    ],
    "timestamp": "{{ $now.toISO() }}"
  }]
}

Cores de Embed

Use decimal: Verde = 5763719, Vermelho = 15548997, Azul = 5793266, Amarelo = 16776960. Converta hex para decimal em qualquer conversor online.

2

Opcao B: Bot Completo

Receber e enviar mensagens

Passo 1: Criar Aplicacao

  1. 1. Acesse discord.com/developers/applications
  2. 2. Clique em New Application
  3. 3. De um nome (ex: "N8N Bot")

Passo 2: Criar Bot

  1. 1. No menu lateral, clique em Bot
  2. 2. Clique em Add Bot
  3. 3. Em TOKEN, clique em Reset Token
  4. 4. Copie e guarde o token! Ele so aparece uma vez.

NUNCA compartilhe o Token

O token do bot da acesso total ao bot. Se vazar, qualquer pessoa pode usar seu bot. Regenere imediatamente se suspeitar de vazamento.

Passo 3: Privileged Gateway Intents

Para receber mensagens, ative os intents necessarios:

  • MESSAGE CONTENT INTENT - Ler conteudo das mensagens
  • SERVER MEMBERS INTENT - Ver membros do servidor
  • PRESENCE INTENT - Ver status online

Passo 4: Adicionar Bot ao Servidor

  1. 1. Va em OAuth2 → URL Generator
  2. 2. Em SCOPES, marque: bot
  3. 3. Em BOT PERMISSIONS, marque as permissoes necessarias:

4. Copie a URL gerada e acesse no navegador para adicionar ao servidor.

3

Configurar no N8N

Adicionar credencial e usar nodes

Criar Credencial

  1. 1. No N8N, va em Credentials → Add Credential
  2. 2. Busque por Discord Bot API
  3. 3. Cole o Bot Token que voce copiou
  4. 4. Clique em Save

Como obter IDs

Ative o Developer Mode nas configuracoes do Discord (Advanced). Depois, clique direito em qualquer canal/usuario/servidor e "Copy ID".

4

Operacoes Disponiveis

O que voce pode fazer com o Discord node

Message

  • • Send - Enviar mensagem
  • • Get All - Listar mensagens do canal
  • • Delete - Apagar mensagem

Channel

  • • Get - Informacoes do canal
  • • Get All - Listar canais do servidor

Member

  • • Get All - Listar membros
  • • Role Add - Adicionar role
  • • Role Remove - Remover role

Webhook

  • • Send - Enviar via webhook

Exemplos Praticos

1. Alertar deploys do GitHub

// GitHub Trigger: Deployment Status
// → HTTP Request: Discord Webhook

// Body para Webhook:
{
  "embeds": [{
    "title": "{{ $json.deployment_status.state == 'success' ? ':white_check_mark: Deploy Sucesso' : ':x: Deploy Falhou' }}",
    "description": "{{ $json.repository.full_name }}",
    "color": {{ $json.deployment_status.state == 'success' ? 5763719 : 15548997 }},
    "fields": [
      { "name": "Branch", "value": "{{ $json.deployment.ref }}", "inline": true },
      { "name": "Ambiente", "value": "{{ $json.deployment.environment }}", "inline": true }
    ],
    "url": "{{ $json.deployment_status.target_url }}"
  }]
}

2. Boas-vindas automaticas

// Discord Trigger: Member Joined
// → Discord: Send Message
// → Discord: Role Add (dar role de "membro")

// Mensagem de boas-vindas:
Channel ID: 123456789 // canal #boas-vindas
Message: "Bem-vindo(a) <@{{ $json.user.id }}>! :wave:
Leia as regras em #regras e apresente-se em #geral!"

// Adicionar role:
Guild ID: {{ $json.guild_id }}
User ID: {{ $json.user.id }}
Role ID: 987654321 // role "membro"

3. Bot de suporte com IA

// Discord Trigger: Message Created
// → IF: channel == #suporte
// → OpenAI: Gerar resposta
// → Discord: Send Reply

// Filtrar apenas canal de suporte:
IF: {{ $json.channel_id }} == "ID_CANAL_SUPORTE"

// Prompt OpenAI:
"Voce e um bot de suporte. Responda a pergunta:
{{ $json.content }}"

// Enviar resposta no mesmo canal:
Channel ID: {{ $json.channel_id }}
Message: {{ $('OpenAI').item.json.text }}

4. Notificar novas vendas (Stripe + Discord)

// Stripe Trigger: payment_intent.succeeded
// → HTTP Request: Discord Webhook

{
  "content": "@here :moneybag: Nova venda!",
  "embeds": [{
    "title": "Pagamento Recebido",
    "color": 5763719,
    "fields": [
      { "name": "Valor", "value": "R$ {{ $json.data.object.amount / 100 }}", "inline": true },
      { "name": "Cliente", "value": "{{ $json.data.object.receipt_email }}", "inline": true }
    ],
    "footer": { "text": "via Stripe" },
    "timestamp": "{{ $now.toISO() }}"
  }]
}

Mencoes e Formatacao

Mencoes

  • <@USER_ID> - Mencionar usuario
  • <@&ROLE_ID> - Mencionar role
  • <#CHANNEL_ID> - Link para canal
  • @everyone - Mencionar todos
  • @here - Membros online

Formatacao

  • **texto** - Negrito
  • *texto* - Italico
  • __texto__ - Sublinhado
  • ~~texto~~ - Riscado
  • `codigo` - Inline code
  • ```bloco``` - Bloco de codigo

Troubleshooting

401 Unauthorized

Token do bot incorreto ou expirado. Regenere em discord.com/developers.

403 Missing Permissions

O bot nao tem permissao para essa acao. Verifique as permissoes do bot no servidor e no canal especifico.

Bot nao recebe mensagens

Ative o "MESSAGE CONTENT INTENT" nas configuracoes do bot em discord.com/developers. Sem isso, o bot nao ve o conteudo das mensagens.

Webhook retorna 404

O webhook foi deletado. Crie um novo nas configuracoes do canal.

Rate Limited (429)

Muitas requisicoes em pouco tempo. Adicione um node Wait entre mensagens ou use batch processing.

Proximo: HTTP Request

Aprenda a integrar com qualquer API usando HTTP Request

Continuar para HTTP Request