Você configurou um webhook do Discord para postar anúncios automaticamente no servidor. A mensagem inclui @everyone, mas os membros relatam que nunca receberam uma notificação. Isso acontece porque webhooks exigem permissão explícita para mencionar @everyone e @here, e as configurações padrão não concedem essa permissão. Este artigo explica por que as menções @everyone em webhooks falham ao disparar notificações, como ativar a permissão e quais outros fatores podem bloquear esses alertas.
Principais conclusões: Correção de notificação @everyone em webhook do Discord
- Configurações do Servidor > Integrações > Webhooks > Gerenciar Webhook > Substituição de Permissão: Ative a opção “Mencionar @everyone, @here e Todos os Cargos” para o webhook.
- Substituição de permissão específica do canal: O canal onde o webhook posta também deve permitir que o webhook mencione @everyone.
- Limites de taxa e interação com bots: Webhooks estão sujeitos a limites de taxa e não podem acionar outros bots, incluindo o bot integrado do Discord, para @everyone.
Por que os webhooks do Discord não notificam @everyone por padrão
Os webhooks do Discord são ferramentas simples baseadas em HTTP que postam mensagens em um canal. Eles não têm as mesmas permissões que um usuário comum ou um bot. Quando você cria um webhook, ele recebe um conjunto de permissões padrão que nega explicitamente a capacidade de mencionar @everyone e @here. Isso é uma medida de segurança para evitar abusos. Se qualquer webhook pudesse mencionar @everyone sem restrição, uma única integração mal configurada poderia spamizar todos os membros do servidor.
O sistema de permissões para webhooks funciona em duas camadas. Primeiro, o próprio webhook tem uma substituição de permissão armazenada nas configurações de integração do servidor. Segundo, o canal onde o webhook posta tem suas próprias substituições de permissão. Ambas as camadas devem conceder a permissão Mencionar @everyone, @here e Todos os Cargos para que a notificação seja disparada. Se qualquer camada bloquear, a menção é silenciosamente rebaixada para texto simples — o texto @everyone aparece na mensagem, mas nenhuma notificação é enviada.
O papel da substituição de permissão do webhook
Cada webhook que você cria tem uma substituição de permissão oculta que é separada das configurações de permissão do canal. Por padrão, essa substituição define Mencionar @everyone como DESLIGADO. Você deve ativá-la manualmente na tela de gerenciamento do webhook. Essa substituição não fica visível na lista de permissões regular do canal; ela aparece apenas quando você edita o webhook específico.
Substituições de permissão no nível do canal
Mesmo que a substituição do webhook permita menções @everyone, o próprio canal pode bloqueá-las. Se as configurações de permissão do canal para o cargo do webhook ou para o cargo @everyone tiverem Mencionar @everyone definido como DESLIGADO ou NEUTRO, a notificação não será enviada. A permissão do canal sempre tem precedência quando nega uma permissão que a substituição do webhook concede.
Passos para ativar notificações @everyone para um webhook do Discord
Siga estes passos para permitir que um webhook específico dispare notificações @everyone. Você precisa da permissão Gerenciar Webhooks no servidor para fazer essas alterações.
- Abra as Configurações do Servidor
Clique no nome do servidor no canto superior esquerdo da janela do Discord. Selecione Configurações do Servidor no menu suspenso. - Vá para Integrações
Na barra lateral esquerda, clique em Integrações. Esta página lista todos os webhooks e bots adicionados ao servidor. - Selecione o webhook
Na seção Webhooks, encontre o webhook que deseja modificar. Clique no nome dele ou no botão Gerenciar ao lado. - Ative a permissão @everyone
Na página de detalhes do webhook, procure a opção Mencionar @everyone, @here e Todos os Cargos. Ative-a para LIGADO. Isso altera a substituição de permissão interna do webhook. - Salve as alterações
Clique no botão Salvar Alterações na parte inferior da página. O webhook agora tem permissão para mencionar @everyone. - Verifique as permissões do canal
Vá até o canal onde o webhook posta mensagens. Clique no ícone de engrenagem para abrir as Configurações do Canal. Selecione Permissões na barra lateral esquerda. Procure pelo cargo do webhook ou pelo cargo @everyone. Certifique-se de que Mencionar @everyone esteja definido como LIGADO ou PERMITIDO. Se estiver como DESLIGADO ou NEUTRO, altere para LIGADO. - Teste o webhook
Envie uma mensagem de teste que inclua @everyone. Você pode usar uma ferramenta como curl ou um site de teste de webhook do Discord. Verifique se a mensagem dispara uma notificação em uma conta de teste.
Se o webhook do Discord ainda não notificar @everyone
Os limites de taxa do webhook estão bloqueando a mensagem
O Discord impõe limites de taxa em requisições de webhook. Um único webhook pode enviar até 30 mensagens por minuto. Se sua automação enviar mensagens mais rápido que isso, o Discord pode descartar silenciosamente a menção @everyone ou a mensagem inteira. Verifique seu script de webhook quanto ao tratamento de limites de taxa. Adicione um atraso entre as mensagens ou use um sistema de fila para ficar abaixo do limite.
O conteúdo da mensagem não contém @everyone de fato
Webhooks aceitam o campo content em JSON. Se você escrever o texto literal @everyone no conteúdo, o Discord o trata como uma menção apenas se a substituição de permissão estiver ativada. No entanto, se você usar o objeto allowed_mentions no payload do webhook e definir parse: [] ou omitir everyone do array parse, a menção é suprimida. Certifique-se de que seu payload do webhook inclua "allowed_mentions": { "parse": ["everyone", "roles", "users"] } ou remova o campo allowed_mentions completamente.
O servidor tem notificações @everyone desativadas
Cada usuário do Discord pode silenciar notificações @everyone em suas próprias configurações de notificação. Se um membro definiu as configurações de notificação do servidor como Apenas @menções e depois desativou manualmente os pings @everyone, ele não receberá nenhuma notificação @everyone de nenhuma fonte, incluindo webhooks. Esta é uma configuração do lado do cliente e não pode ser substituída pelo administrador do servidor.
O webhook está postando em um tópico
Webhooks do Discord podem postar mensagens dentro de tópicos. No entanto, menções @everyone dentro de um tópico não disparam notificações para membros que não entraram naquele tópico. Se seu webhook postar em um tópico, apenas membros que entraram explicitamente no tópico receberão a notificação @everyone. Para alcançar todo o servidor, poste a mensagem do webhook diretamente no canal principal, não em um tópico.
| Item | Webhook @everyone Ativado | Webhook @everyone Desativado |
|---|---|---|
| Texto exibido na mensagem | @everyone aparece como uma menção clicável | @everyone aparece como texto simples |
| Notificação enviada aos membros | Sim, se as permissões do canal também permitirem | Nenhuma notificação é disparada |
| Notificação push no celular | Enviada se o usuário não silenciou @everyone | Não enviada |
| Substituição de permissão necessária | Substituição do webhook E substituição do canal devem estar LIGADAS | Estado padrão DESLIGADO |
Agora você pode ativar notificações @everyone para qualquer webhook do Discord ajustando a substituição de permissão do webhook e verificando as permissões do canal. Comece ativando a opção Mencionar @everyone nas configurações de integração do webhook e depois teste com uma mensagem que inclua a tag @everyone. Se as notificações ainda falharem, verifique o parâmetro allowed_mentions no payload do seu webhook e certifique-se de que a mensagem não está sendo postada dentro de um tópico. Para controle avançado, considere usar um bot do Discord em vez de um webhook — bots têm gerenciamento de permissão mais granular e podem mencionar @everyone com base em lógica personalizada.