Skip to content
Advertisement

Deleting User Messages in Discord.py

Is there any way to delete a message sent by anyone other than the bot itself, the documentation seems to indicate that it is possible

Your own messages could be deleted without any proper permissions. However to delete other people’s messages, you need the proper permissions to do so.

But I can’t find a way to target the message to do so in an on_message event trigger, am I missing something or is it just not possible?

Advertisement

Answer

Yup, it should be possible.

You need the bot/user account to have the Manage Messages permission.

@client.event
async def on_message(message):
    await message.delete()

So, the event would occur something like

User sends message
Bot detects that the user has sent a message
Bot deletes the message that the user sent

Hopefully from this you should be able to see how user messages are deleted, just ensure that the bot/user account as the Manage Messages permission.

User contributions licensed under: CC BY-SA
7 People found this is helpful
Advertisement