Only this pageAll pages
Powered by GitBook
1 of 15

GetBeaned

Loading...

Loading...

Tutorials

Loading...

Loading...

Loading...

Loading...

Bot documentation

Loading...

Loading...

Loading...

Loading...

Loading...

Developer documentation

Loading...

Welcome to the GetBeaned documentation

GetBeaned is a Discord Moderation bot.

GetBeaned is the only bot you'll ever need to moderate your server. Why? The primary feature is the AutoModerator. It's not like Dyno or MEE6 automod, it is way more advanced and has got less false-positives.

How does it work?

The automoderator works by calculating a multiplicator, that represents how likely a user has a tendency to spam. Using multiple data points, such as the Discord Nitro status of the user, the account age and how long ago the user joined, GetBeaned is able to have a pretty good estimate of the spam-potential of an user.

After calculating the multiplicator, GetBeaned will then look at the specific message to determine if it could be considered as spam, using factors such as the presence of CAPS, swear words, failed @everyone pings, etc.

Finally, by multiplying the multiplicator and the message score, GetBeaned applies actions corresponding to the specific total score.

What does that mean in practice?

Have you ever been on a server, and then tried to send messages quickly one after another or just with a few CAPITAL letters, only to see it get removed by a very strict moderation bot, while, at the same time in another channel, a user is spamming mentions without getting banned? Well, if you don't want that to happen on your server, GetBeaned is the solution!

A user that has just joined and tries to post invite links should be treated as a spammer while a trusted user that has been present for a year shouldn't. And that's what the GetBeaned AutoModerator does.

More information on the bot configuration.

You can configure GetBeaned on the webinterface by logging in with Discord. The defaults provided are quite good, just enabling Thresholds and Automod should get you started!

More settings are provided for advanced configuration. For best performance and to minimise the risk of false positives, we recommend enabling AutoMod and Thresholds, then enable AutoInspect and AutoTriggers as needed.

But, if you need, more than 60 settings are available. So, customising the bot shouldn't be a problem.

Need support?

Not a problem, we are here to help on the

Contributing:

If you are a developer:

The bot code is open-sourced on and Pull Requests are welcomed with great pleasure. An API is available on request to access the data on the GetBeaned website to improve overall detection. Please contact Eyesofcreeper#0001 if you are interested.

If you are a Discord server owner:

Please and spread the word. Don't forget to report spambots or new types of spam that aren't currently detected by the GetBeaned algorithms.

If you are a Discord user:

If my bot has helped you, are welcome to help fund the server costs! If you find any bugs, feel free to report them on the support server or contact me on Discord : Eyesofcreeper#0001

multiplicator∗message score=message total scoremultiplicator * message\ score = message\ total\ scoremultiplicator∗message score=message total score
support server
GitHub
install the bot
donations

Changelog

1.0.0 - 18/06/2019

Added

  • Re-made the docs using GitBook

  • Move to the getbeaned.me domain

  • The API can now be considered stable.

0.1.1 -> 1.0.0

The changelog for this versions is the git log available and

0.1.0 - 02/02/2019

Published the repositories to Git after this release.

Added

  • You can now target multiple people in one command For example, g+kick [user 1] [user 2] will kick two people at the same time, with the same reason

  • Text only logs are now available They are easier to copy on mobile, but they are kinda ugly :( Use your server settings on the webinterface to enable them

  • Added help text for settings on the webinterface.

Fixed

  • Fixed loads of typos on the webinterface

  • Fixed the regex that rendered links to previous actions to make it not render specials chars escaped in HTML

  • Updated the website favicon(s) to make them render better

  • Internal change: changed BigInt to CharFields for discord IDs

0.0.1 - 22/11/2018

Added

  • Migrated basic functions from DuckHunt community

Made links like "see #547" clickable in the web interface Example:
  • Made logging non-blocking, for when your server get raided and GetBeaned needs to act more than once per second

  • Added a bot field in the database to mention the bot status of an user

  • Added a command refresh_user to refreh a user on the database

  • Added bot-admin-specific comments on user pages

  • Bot admins and bot mods now see links to the admin panel on different pages of the website

  • Added a security score to user pages. Based on types of actions received in "big" servers, it's a really alpha made up formula, so it's subject to change on levels and calculation methods. However, it should be helping if you want to know about an user with a simple number, and (when it'll be more stable) to tune the audomod even more depending on your specific needs

  • Now showing if an user is a bot on the WebInterface

  • Added a +purge command, to remove messages in bulk. To get help, just type +purge. Does not purge pinned messages

  • Fixed a bug where a security score calculation could return negative results

  • Bot moderators (@(Human) Moderator on the support server) now have the required access level to moderate the bot

  • Added a framework to store user-specific settings (IE: dark_theme status) on the WebInterface

  • Better help command using embeds and reactions!

  • Fix a bug where no action would be done and nothing would be said by the bot when the bot top role was lower than a target role.

  • Added a nice summary table on user pages. Also allows you to copy users IDs.

  • Disabled ability to kick people not in server

  • Fixed a special case where a wrong error message would be given where the bot is lower in the hierarchy than the target

  • Add an AutoTrigger mechanism. This is made for some types of messages that may go past the AutoMod without detection.

    • If your discord server get attacked by user bots that send messages not detected by the automod, head to #support_english and request an AutoTrigger.

    • The first AutoTrigger can be enabled on your server settings page.

      AutoTriggers need the AutoMod to be enabled for them to work

  • Improved DiscordSexDating autotrigger to also match the url spammed and to be more lenient on keywords

  • Removed embed check from the automod as the check is not 100% accurate (tweets links are considered rich embeds by discord)

    here
    here
    https://getbeaned.api-d.com/actions/548

    VIP Servers

    How to contribute to the bot developpement and unlock advanced functions.

    GetBeaned main features are free and will always be. VIP servers are available for admins that want more customization.

    What are VIP servers ?

    VIP servers are servers that can access more advanced functions, such as

    • Bad-words style filtering of messages and usernames/nicknames with custom lists and optional regexes

    • Extended history of actions (who, and when, edited what)

    • More features on request (+suggest)

    To get a VIP server, you have to be added as a Donator on the GetBeaned server. There is no donation minimum to be eligible for VIP servers.

    Why aren't these available for normal, non-vip servers ?

    Most of these features either could be abused or are work-intensive and require powerful servers. As I have to pay for the servers, this is a way for people to support the bot and gain access to advanced features as a thanks for supporting my work.

    I can't pay, can I still get a VIP server ?

    Yes, please send a message explaining why you think you'd use one on the support server, we'll get back to you.

    Report spambots that get past the filter

    Double-check that filters are activated

    Run the simple +doctor command and check that AutoInspect is enabled and that AutoMod and AutoTriggers are also green.

    If you can, please use the web interface to ensure that specific AutoInspectand AutoTriggers are also activated.

    Enable Developer mode

    If you haven't already, in your Discord client settings, under Appearance, enable the Developer Mode.

    Get the message ID

    Select a message that got past the filter. You should see three points at the end of the message if you are on a computer. On a phone, long press the message.

    Select Copy (Message) ID to copy the ID to the clipboard.

    Get message information

    Use the command +message_info [the message ID you copied] to ask the bot for logs and information about the message. Take a screenshot of the message sent by the bot.

    Send your report

    Send your screenshot and some explanation on what was wrong on the #support channel on the .

    Privacy policy

    Last updated and effective: December 14, 2022

    This privacy policy applies to the GetBeaned discord moderation bot (the "Bot") and describes how we collect, use, and share information about you when you use the Bot. By using the Bot, you consent to the collection, use, and sharing of your information as described in this privacy policy.

    Information We Collect

    When you use the Bot, we may collect certain information about you, including the following:

    Your Discord user ID and username
    Information about your interactions with the Bot, such as the commands you use and the moderation actions taken by the Bot
    Any information that you voluntarily provide to us, such as feedback or support requests

    We may also collect information about your device and internet connection, such as your IP address and browser type, for purposes such as preventing abuse and improving the Bot website.

    How We Use Your Information

    We use the information we collect about you to provide, maintain, and improve the Bot. This may include:

    We may also use your information for other purposes that we disclose to you at the time we collect the information or with your consent.

    Log Data Retention

    We only store logs of your interactions with the Bot for a few days, after which they are automatically deleted. However, moderation actions taken by the Bot (such as kicks, bans, warns, and notes) are stored indefinitely.

    Your Rights

    You have the right to request access to the information we collect about you and to request that we correct or delete any inaccurate information. You can also object to the processing of your information or withdraw your consent to our use of your information at any time. To exercise these rights, please contact us on our support server, or reach out to Eyesofcreeper#0001 directly.

    Setting up logging

    How does the logging work ?

    Logging events is done by a specific component of GetBeaned. Every time discord notifies the bot, a special embed is crafted for your enabled logging channels and sent to the right channel. The bot uses information it can retrieve from discord (authors, IDs, ...) and information it downloaded previously.

    Levels and permissions

    To be done

    Levels in bold are server-dependent. You might be level 5 on your server and level 1 elsewhere.

    Topic Switches

    Change GetBeaned actions based on the current channel by editing your channel topic.

    To use a Topic Switch, add it anywhere in the topic of the desired channel.

    06

    Reserved for future use

    05

    Server owner

    04

    Server administrator

    03

    Server moderator

    02

    Trusted users

    01

    Normal members

    00

    Users banned from the bot (+add_banned_memberor global banned)

    Level

    Description

    10

    Bot owner (Eyesofcreeper)

    09

    Reserved for future use

    08

    Bot moderators

    07

    Reserved for future use

    [getbeaned:disable_logging]

    Disable logging in this channel. Deleted/Edited messages won't be logged to message logs.

    [getbeaned:auto_publish]

    If the channel is a news/announcement channel, automatically crosspost/publish messages to subscribed channels.

    Switch

    Action

    [getbeaned:disable_automod]

    Disable the automod if it's enabled globally

    [getbeaned:enable_automod]

    Enable the automod even if it's disabled globally

    [getbeaned:disable_invite_detection]

    Disable detecting invites in a channel

    [getbeaned:disable_spam_detection]

    Disable spam detection, leaving others checks working. [BETA: Might not work forever]

    Processing and responding to your support requests
    Analyzing usage of the Bot to identify problems and improve the Bot's functionality
    Enforcing the Bot's terms of service and other policies
    Protecting the security and integrity of the Bot
    What can be logged ?
    • Moderation actions (+ban, +kick,+warn,+mute,+note,...)

    • People joining and leaving the server

    • Nicknames changes and username changes

    • Message edits*

    • Message deletions*

    • AutoInspect actions

    * Only some editions and deletions can be logged due to technical limitations.

    How to configure logging ?

    Step 1: Create a channel to log messages on

    On the Discord client, create a new channel called #mod-log(or anything else really, but we will use #mod-log for this example)

    Double-check that GetBeaned and moderators are the only groups allowed to write and embed links in that channel.

    Now, type +channel_idto get the channel ID and copy it to your clipboard.

    Step 2: Enable logging

    On your server settings page (+urlsto get the url of the page), go the the Logs tab and paste the channel ID on the log(s) you want GetBeaned to post on that channel.

    Step 3: Check that everything is okay

    Back on Discord, use the +doctorcommand to double-check that logging channels are setup correctly!

    Congratulations!

    You have successfully setup logging on your server.

    Support Server
    Ensure that "Developer mode" is checked!
    Click Copy ID to copy the message ID to the clipboard

    The GetBeaned API

    Work in progress

    Add an user

    POST https://getbeaned.api-d.com/api/users/

    This endpoint allows you to upload an user data to the website. This is a required step to be able to add actions. The endpoint will update or create the user automatically.

    Headers

    Name
    Type
    Description

    Request Body

    Name
    Type
    Description

    API Users Counter

    GET https://getbeaned.api-d.com/api/users/<int:guild_id>/<int:user_id>/counters/

    Path Parameters

    Name
    Type
    Description

    discord_id

    boolean

    Discord user ID

    discord_bot

    boolean

    Please set that to True if the user is a bot

    Update

    boolean

    False if we don't want to update the user because the data is stale

    Authentication

    string

    Authentication token supplied on request.

    discord_default_avatar_url

    string

    Default Discord CDN URL for the user avatar.

    discord_avatar_url

    string

    Discord CDN URL to the PNG (static) or WEBP (animated) avatar of the user

    discord_discriminator

    integer

    The user Discriminator (Excluding the #)

    discord_name

    string

    Name of the user

    string

    {
     'status': 'ok',
     'message': 'User existed in database already',
     'result': '[User representation]'
     }
    {
        'status': 'error',
        'errors': ['List of errors']
    }

    Using the purge command to remove messages

    The purge command is a level 2+ (trusted) command to remove messages matching one or more criteria.

    This command is available in two modes. The shortcut mode and the custom mode. The shortcut mode allows you to remove certain types of messages easily, while the custom mode lets you choose messages to remove in a much more powerful and specific fashion.

    Shortcut mode

    General syntax: +purge [type of removal] <number of messages to search>

    Embeds

    Remove message that contains embeds:

    Files

    Remove messages with attachments linked to them.

    Images

    Remove messages containing images.

    All

    Remove any message. For example, to remove the last 10 messages, use +purge all 10

    User

    Remove messages from a specific user. For example, to remove the last 10 messages of @User, type +purge user @User 10

    Contains

    Remove messages containing a substring (at least 3 chars long). For example, to remove every message containing OwO, type +purge contains OwO

    Bot

    Remove messages from bots and bot commands. To remove messages from bots only, use +purge bot while you can use +purge bot + 35 to remove messages that either are from bots or start with + in the last 35 messages.

    Emoji

    Delete messages containing custom emojis.

    Reactions

    Remove reactions from messages that have them. This does not remove messages, just reactions.

    Custom mode

    Need more power to remove messages. Behold the custom mode!

    This command uses a powerful "Command Line" syntax. Most options support multiple values to indicate 'any' match. If a value has spaces, it must, as always, be quoted. The messages are by-default deleted only if all options are met (AND). You can use the --orflag that will delete messages if any of the conditions is met.

    The following options are valid. They all take arguments.

    You can also use the following flags, with no arguments.

    Here are some examples to get you started.

    • +purge custom --emoji --starts "lol" --starts "xd" Remove messages that contains custom emojis and start with lol or xd.

    • +purge custom --starts "Bonjour" --ends "au revoir" -- orRemove messages that start with "Bonjour" or end with "au revoir".

    • +purge custom --reactionsRemove messages that have been reacted to.

    Messages must come after this message ID

    --before

    Messages must come before this message ID

    Use the logical OR for all options

    --and

    Use the logical AND for all options (Default)

    +purge custom --embeds --bot Remove messages from bots that also contain embeds.

    Option

    Explanation

    --user

    A mention or a name of the user to

    --contains

    A substring to search for in the message

    --starts

    A substring that a message must start with

    --ends

    A substring that a message must end with

    --search

    The number of messages to search for on the channel. Default to 100, max is 2000.

    Flag

    Explanation

    --bot

    Check if the message author is a bot

    --embeds

    Check if the message contains an embed

    --files

    Check if the message contains files

    --emoji

    Check if the message has custom emojis

    --reactions

    Check if the messages has reactions

    This is an embed that would get removed (rich embed)
    Link previews are also removed by the embed filter

    --after

    --or

    List of commands

    On this page, we'll use the default prefix of +. Of course, your server prefix may have been changed on the web interface. In any case, add the correct prefix before starting a command.

    To understand the list of commands, you'll have to remember the following:

    • Arguments between brackets are [required]

  • Arguments in greater-than signs are <optional>

  • Arguments in curly braces are{greedy}, meaning you can have one or more argument of the same type.

  • For example, in the command +ban {users} <reason>, you can ban one or more users with an optional reason.

    Command

    Explanation

    +help

    Get a link to this webpage

    +urls <target_member>

    Get the server online logs, and webpages about a specific user.

    +invite

    Get a bot invite link to

    +info

    Show some information about the bot like the author and essential commands

    +level

    Trusted users can also use normal Users commands

    Moderators can also use any command Trusted users can.

    Admins can also use any command Moderators can.

    The commands shown are are only available to bot moderators.

    If you aren't sure, you aren't a bot moderator.

    VIPs are special users of the bot. While they don't get any special moderation level, they can access some commands reserved to them. There are sevral ways of becoming a VIP, most of them are detailed in the docs. Commands for VIP must be ran in the #vips channel of the GetBeaned Support Server

    QuickStart: Setting up GetBeaned on your server

    Quick primer to get your server protected quickly.

    Adding GetBeaned to your server

    First, we'll have to add GetBeaned to your server.

    Inviting the bot

    Remove messages in bulk. See the for more information.

    +rename [user] <nickname>

    Rename a user with an optional nickname. If nickname is not specified, removes the nickname

    +inspect [user/message/channel/...]

    Provides information about a given ID or name, and try to guess what that object is.

    +fake_message [user] [message]

    Sends a message "as if" the specified user sent it. Used as a test for the +snipe command.

    Remove the GetBeaned_Muted role from users, to let them talk again.

    +unban {banned_users} <reason>

    Unban users from your server. They'll be able to rejoin using a new invite.

    +automod_debug [message]

    Analyse the message provided in the message argument. This will return a score for you to use.

    +automod_logs [message]

    Returns the automod logs for a given message ID

    Import your server bans on the Web interface for easy viewing and complete history. This can only be run once per server, and the command may take some time to run.

    +dehoist_users

    Run the configured DeHoister on every member on the server.

    Cleanup the cache by removing expired entries immediately. May help freeing some ram.

    +update_analytics

    Send an updated Guild count to some bot lists. No personal information is sent by the bot.

    +refresh_user {users}

    Refresh users account information on the web interface.

    +jsk

    See the

    Command to see your permissions level on a server.

    +ping

    Check the health of the connection between the bot and Discord.

    +permissions_check

    Run a quick check of the bot permissions on the channel, useful to figure out why the bot isn't working properly.

    +hierarchy [user]

    Inspect the hierarchy between you and another user and inform you of any problems that may arise using commands on them.

    +doctor

    Make the bot deeply check it's configuration and report any potential problem found.

    +channel_id

    Gives you the ID of a channel. Used to configure logs.

    +suggest

    Suggest a feature to add to the bot. Can also be used to report bugs.

    Command

    Explanation

    +note {users} [reason]

    Add a simple note to the user profile. Doesn't do anything by itself, this mostly serves as a reminder from staff or for very minor infractions.

    +warn {users} <reason>

    Warns users on the server. While warns by themselves don't do anything, thresholds apply to warns and users may get kicked if they reach it.

    +message_info

    Inspect a message sent by an user and display some information like the automod logs for this message, the user profile, etc.

    +snipe

    Recover the last deleted message from the channel. Useful if you had seen some spam on the channel that quickly got deleted.

    Command

    Explanation

    +ban <duration>{users} <reason>

    Ban the users provided in the command, with an optional reason.

    +softban {users} <reason>

    Ban and unban the users given to remove the recent messages they sent. You may add a reason to be displayed.

    +kick {users} <reason>

    Kick the users from your server. They will be able to rejoin using a new invite link.

    +mute <duration>{users} <reason>

    Mute users on the server. They won't be able to speak until unmuted or until they leave and rejoin the server. This command requires a specific GetBeaned_Muted role, that can be setup by server admins with the +create_muted_role command.

    Command

    Explanation

    +add_admin {roles_or_users}

    Add the specified users to the admin rank on the bot, allowing them to access admin commands and edit server settings on the Web interface. There are three ways to add admins (the Administrator permission, using roles or using users). If you want the admins you add to be able to edit settings on the web interface, you need to add them using users and not roles.

    +add_moderator {roles_or_users}

    Add the specified user to the moderator role on the bot. To remove users or roles from the ranks, use the web interface. You can also give the Ban permission to users to make them moderators.

    +add_trusted_member {roles_or_users}

    Add members to the Trusted rank, giving them access to the Trusted commands. You can also give the kick permission to users to make them Trusted.

    +create_muted_role

    Create or update a GetBeaned_Muted role to enable the +muteand +unmute commands on your server. If you messed up the role permissions, re-running the command should fix the role.

    Command

    Explanation

    +pm [user] [message]

    Use the bot to send a private message to a user.

    +end_pm

    End your DM session with an user

    +cache_status

    Show the status of the caches used by the bot.

    Command

    Condition

    Explanation

    +make_vip [guild]

    VIP and owner of the guild

    Give a given guild ID VIP perms on the bot. This will allow the guild to use special parameters. For more info, see the VIP Servers docs.

    VIP Servers
    install GetBeaned on your server

    +purge {arguments}

    +unmute {muted_users} <reason>

    +import_bans

    +cache_cleanup

    Please click the following link to add GetBeaned to your server.

    Only server admins (Administrators) can add bots to a server. If you don't see your server in the list, please double-check that you are logged on the right discord account

    Select your server in the list and click the Authorise button

    Please make sure to select the right server :)

    Moving the bot role higher in the list

    Return to the discord application. Click on your server name to open the server settings. Under roles, select the GetBeaned role and move it to the top.

    The bot role needs to be higher than the top user role if you want GetBeaned to be able to kick or ban them.

    You don't have to place GetBeaned higher than admins.

    Click on the green Save button, then return to the chat.

    Verify that the permissions are valid

    Use the +doctorcommand somewhere on the server and pay attention to theBot Permissions embed.

    If it's red, it means that the bot has some permissions problems on some of the channels. Please check that GetBeaned has the necessary permissions in channels that you want to protect.

    However, you don't have to give GetBeaned permissions to restricted channels where only trusted users can speak.

    Setup the bot to moderate the server

    Permissions

    First, add yourself as a server admin. Use the +add_admin @your_discord_namecommand to be able to edit settings on the web interface.

    If you have moderators, you can add them all using the command +add_moderator [a role ID]to give them moderation permissions on the bot.

    Enable the Auto-functions

    On discord, type +urlsto get a direct link to your server webpage. If you aren't logged in on the website, do that by clicking the "Login" button on the top bar.

    Click on the link to access your server settings

    The automod is already configured. You just have to enable it by clicking the box near Enable AutoMod

    Click that button. Don't hit submit yet. Check the other tabs first :)

    If your server is targeted by spam bots, or you have/plan to have public invites, enable the AutoTriggers for maximum protection.

    You want to kick accouns that are gonna spam your server even before they start ? GetBeaned can do that too! Enable AutoInspect to protect yourself from spam of known bad user bots. Turn on each type of but you want to be protected of by selecting the correct thing for the bot to do : warn admins, kick or ban the user.

    To use AutoInspect, you'll need to setup the logs on your server too. This is described in detail over the Enable Logging page. Tl;Dr: Get the channel ID of a channel you want to log in (+channel_idcan help you), and copy/paste it in the Logs settings page under AutoInspect logs. Don't forget to enable logs with the checkbox too.

    Thresholds

    Check the box to enable thresholds. This will make Getbeaned kick/ban repeat offenders without action from your mod staff

    DeHoister

    Click the Submitbutton to save your settings.

    Quick check

    Return to your discord server and type +doctor to be sure that everything is now correctly setup.

    Done!

    You've finished this tutorial. Your server is now protected by GetBeaned. For more info, please join the support server.

    command documentation
    Jishaku docs
    Are you tired of users adding a !to thier name to appear at the top at the user list ? If that sounds like a problem for you, wait no more and enable the DeHoister to remove these pesky ! from users nicknames.