> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.squarecloud.app/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Bot não lê mensagens? Ative o Message Content Intent

## O sintoma: bot online, mas "mudo"

Seu bot aparece online no Discord, talvez até responda a comandos de barra (/slash), mas simplesmente ignora as mensagens de texto comuns? Na maioria das vezes o motivo não é um bug no seu código — é uma configuração chamada **Privileged Intents** que está desativada.

## O que são Intents

Intents são "permissões de eventos" que dizem ao Discord quais informações seu bot quer receber. Em vez de enviar tudo, o Discord manda apenas os eventos que seu bot declara que precisa — isso economiza recursos e protege a privacidade dos usuários.

Alguns intents são considerados **Privileged (privilegiados)** porque dão acesso a dados sensíveis:

* **Message Content Intent** — necessário para ler o conteúdo das mensagens.
* **Server Members Intent** — necessário para receber a lista de membros.
* **Presence Intent** — necessário para ver status e presença.

## Por que seu bot não lê mensagens

Desde 2022, o **Message Content Intent** passou a ser privilegiado. Sem ele ativado, o campo `content` das mensagens chega **vazio** — por isso o bot não "enxerga" o que foi escrito.

## Como ativar o Message Content Intent

1. Acesse o Discord Developer Portal e abra sua aplicação.
2. Vá em **Bot** no menu lateral.
3. Role até **Privileged Gateway Intents**.
4. Ative **Message Content Intent** (e os outros que seu bot precisar).
5. Salve as alterações.

## Declare os intents no código também

Ativar no portal não basta: você também precisa declarar os intents no código.

discord.js:
```
const { Client, GatewayIntentBits } = require('discord.js');
const client = new Client({
  intents: [
    GatewayIntentBits.Guilds,
    GatewayIntentBits.GuildMessages,
    GatewayIntentBits.MessageContent,
  ],
});
```

discord.py:
```
import discord
intents = discord.Intents.default()
intents.message_content = True
client = discord.Client(intents=intents)
```

## Verificação do Discord (perto de 100 servidores)

Enquanto seu bot está em **menos de 100 servidores**, você mesmo ativa os Privileged Intents (como o Message Content Intent) no Developer Portal, sem precisar de aprovação.

A partir de cerca de **75 servidores** você já pode solicitar a **verificação** do bot no Discord, e ela se torna **obrigatória ao atingir 100 servidores** — sem ela o bot não consegue entrar em novos servidores. É nesse processo de verificação que o Discord revisa e aprova o uso dos Privileged Intents em escala.

## Checklist de diagnóstico

* Message Content Intent ativado no Developer Portal?
* Intent declarado no código?
* Token correto e bot reiniciado após a mudança?

Se o bot ainda não responde depois do deploy, confirme que ele está realmente online — veja o artigo [Como hospedar um Bot de Discord](https://help.squarecloud.app/pt-br/article/como-hospedar-um-bot-de-discord-17gy9qh/) para garantir que a hospedagem está correta.