Webhook do Discord: como criar e enviar mensagens

Guia de webhook do Discord

Webhook do Discord: como criar, payload JSON, embeds | We.Inc

Crie um webhook do Discord, monte o payload JSON (content, username, avatar_url, embeds) com limites de caracteres ao vivo e copie código pronto em curl, JavaScript e Python.

Um webhook do Discord é uma URL secreta ligada a um canal. Faça um POST com um corpo JSON contendo content (até 2000 caracteres), embeds (até 10) ou os dois, e a mensagem aparece nesse canal com o nome do webhook. Não é preciso bot nem login, e é justamente por isso que qualquer pessoa com a URL consegue postar.

Os campos do Execute Webhook que você mais vai usar

Os webhooks são o jeito mais rápido de enviar alertas, envios de formulário ou avisos de deploy para um canal do Discord. O gerador abaixo escreve o JSON para você, conta os caracteres em relação aos limites do Discord enquanto você digita e transforma o resultado em curl, JavaScript e Python para colar em um script ou servidor. Ele mesmo não envia nada, então a URL do seu webhook nunca sai da sua máquina.

Perguntas frequentes

Como consigo a URL de um webhook do Discord?

Você precisa da permissão Gerenciar webhooks no servidor ou no canal. Nas configurações do seu servidor do Discord, crie um webhook para o canal e copie a URL dele.

Por que meu webhook retorna 400 Bad Request?

Geralmente o corpo está vazio ou inválido. Você precisa enviar pelo menos um destes: content, embeds, components, um arquivo ou uma enquete, e o content precisa ter 2000 caracteres ou menos. Envie também o cabeçalho Content-Type: application/json, senão o corpo não é lido como JSON.

Posso chamar um webhook do Discord pelo navegador?

Não faça isso. Qualquer página que faça isso expõe a URL a todos os visitantes, que passam a poder postar qualquer coisa no seu canal. Envie a partir de um servidor, de uma função serverless ou de um script, e faça a sua página chamar esse ponto.

Quais são os limites dos embeds?

O Discord documenta um título de até 256 caracteres, valores de campo de até 1024 caracteres e um total combinado de 6000 caracteres somando título, descrição, nomes e valores dos campos, texto do rodapé e nome do autor em todos os embeds de uma mensagem.

Um webhook consegue ler mensagens ou responder a usuários?

Não. Um webhook só consegue postar (e editar ou apagar as próprias mensagens). Ler canais, reagir a comandos ou responder a pessoas exige um aplicativo de bot.

O que a URL contém

Content, embeds ou os dois

Enviando em grande volume

Requisições prontas

curl: uma mensagem simples

A URL é lida de uma variável de ambiente, para nunca ir parar no histórico do shell nem em um commit.

Node.js: um embed com campos

Usa o fetch nativo do Node 18 em diante. wait=true faz o Discord retornar a mensagem para você registrar o id dela.

Python com requests

json= define o cabeçalho Content-Type para você. Um status 204 significa que a mensagem foi postada.

Gerador de payload para webhook do Discord

Digite a mensagem e o embed, acompanhe a contagem de caracteres e copie o JSON ou o código. Nada é enviado a partir desta página.

Conteúdo da mensagem

Substituir nome de usuário

Substituir URL do avatar

Adicionar um embed

Título do embed

Descrição do embed

Cor do embed

Texto do rodapé

Bloquear todas as menções (allowed_mentions parse: [])

Caracteres do embed: {n} / 6000

Acima do limite: o Discord vai rejeitar isto.

Vazio: adicione conteúdo ou um embed.

Formato de saída

Pré-visualização aproximada

Webhook

Comece grátis · Sem cartão de crédito

Relacionados: Guias

Produto

Para quem é

Recursos

Recursos

Empresa

Mapa do site