How do I fix CLIENT_MISSING_INTENTS error?

I started learning about discord.js but now I am facing this issue. I tried some googling but couldn't manage to fix it.

const Discord = require('discord.js');
// const Discord = require('discord.js');

// using Intents class
const client = new Discord.Client();

client.on('message', (msg) => {
  // Send back a reply when the specific command has been written by a user.
  if (msg.content === '!hello') {
    msg.reply('Hello World!');
  }
});

client.login('my_token');

This is the error I am getting:

enter image description here


You need to specify the events which you want your bot to receive using gateway intents.

Instead of

const client = new Discord.Client();

Use

const client = new Discord.Client({ intents: [Enter intents here] })

For example

const client = new Discord.Client({ intents: ["GUILDS", "GUILD_MESSAGES"] })

Here's another useful link: https://discord.com/developers/docs/topics/gateway


You can instead just degrade discord.js version by typing this into shell:

npm i [email protected]

The latest discord.js version doesn't function very good so I use v12 - no complicated script.