Search code examples
discorddiscord.py

Discord.py Guild.bans() missing 1 required positional argument: 'self'


Code:

@tree.command(name="unban",description="Unbans a member.",guild=discord.Object(id=guildid))
async def unban(ctx,member:str):
        bannedusers = await discord.Guild.bans()
        membername,memberdiscriminator = member.split("#")
        for banentry in bannedusers:
            user = banentry.user
            if (user.name, user.discriminator) == (membername, memberdiscriminator):
                await ctx.guild.unban(user)

Error: Guild.bans() missing 1 required positional argument: 'self'

I tried also use discord.Guild.unban and discord.Member.unban, both give the same error


Solution

  • You're calling discord.Guild which is a class and thus not instantiated. Try ctx.guild.bans()

    API Reference: https://discordpy.readthedocs.io/en/stable/api.html?highlight=guild#discord.Guild.bans