Before you start
- A FakeWatch project. Create one for free if you have not yet.
- The Manage Server permission in Discord. Server owners and admins have it.
- For the test: a second Discord account without moderator rights.
1. Add the bot to your server
- Open your project in the dashboard and scroll to Discord server protection.
- Press Add to Discord. Discord opens and asks you to pick a server.
- Pick your server, keep all permissions checked and press Authorize.
- Discord sends you back to FakeWatch. Your server shows a Protected badge.
Within a minute the bot reads who your owner and moderators are, with their avatars. From then on, anyone who takes the name of one of them is timed out and flagged, and anyone who copies their avatar is flagged.
Tip: always connect from the dashboard. If the bot is added any other way, it leaves the server after 24 hours because no project owns it.
2. Move the FakeWatch role above your member roles
Discord lets a bot time out, ban or delete messages only of members whose highest role is below the bot's role. A new bot's role lands at the bottom of the list, so a scammer with any role, even a "Verified" or level role, would be out of its reach.
- In Discord, click your server's name at the top left, above the channel list, and choose Server Settings.
- Open Roles in the left menu. Roles higher in the list outrank lower ones.
- Find FakeWatch. Discord made it when you added the bot; it is marked with a bot icon.
- Drag it up by the handle on its left, above every role your regular members get: Member, Verified, level and reaction roles, holders and so on. It can stay below your admin and moderator roles.
- Press Save Changes in the bar at the bottom.
No Roles in the menu? You opened a channel's settings: the gear next to a channel name shows Overview, Permissions, Invites and Integrations only. Close them and click the server name instead. Adding FakeWatch under a channel's Permissions does not move its role.
Nothing to move? If your members have no roles except @everyone, skip this step. Repeat it whenever you add a new member role above FakeWatch, for example from another bot.
On the phone: Server Settings → Roles, then hold and drag the FakeWatch role up.
3. Create a private alerts channel
Alerts quote the scam message and name the suspect, so they must not land where scammers can read them. The bot refuses to post alerts in a channel everyone can see.
- In Discord, press + next to Text Channels.
- Name it, for example
fakewatch-alerts. - Turn on Private Channel and press Next.
- Add FakeWatch and your moderator role, then press Create Channel.
Important: if you skip adding FakeWatch, the bot cannot see the channel and cannot post there. Check the channel's settings, Permissions, under Who can access this channel?: FakeWatch must be listed there. Bots with the Administrator permission show up there on their own; FakeWatch does not, so press Add members or roles and add it. FakeWatch under Advanced permissions with every box on "/" is not enough.
Made the channel public by mistake? Hover over it, click the gear, open Permissions and turn on Private Channel. Then press Add members or roles and add FakeWatch and your moderator role.
4. Send alerts to that channel
- In any channel of your server, type
/fakewatch alerts. Discord pops up a list of all FakeWatch commands: that is only autocomplete. Click the top one, /fakewatch alerts. The others are explained under Commands. - Discord adds a channel box after the command and lists your text channels. Pick the private channel from step 3, for example #fakewatch-alerts. Do not pick a public channel such as #general: the bot refuses it.
- Press Enter to send.
- The bot answers "Done. FakeWatch alerts will appear in #fakewatch-alerts", visible only to you, and posts a short welcome message in that channel. In the dashboard your server now shows Alerts go to #fakewatch-alerts.
No /fakewatch command in the list? Discord shows it only to members with the Manage Server permission. Server owners and admins have it.
Alerts also go to your Telegram if you connect it in Settings. Each alert has buttons to delete the message, time out or ban the sender, or mark it as not a fake.
5. Test it (optional)
Setup is done after step 4. This check plays a scammer to show you a real alert.
- Sign in to Discord with your second account, for example in a private browser window.
- Join your server with a normal invite. Do not give this account any roles.
- In any public channel, send
join discord.gg/test123as a normal message. It is not a command: it looks like a scammer's invite to another server. - An alert about an invite to another server appears in your private channel within seconds.
Why a second account: the bot never flags the owner or moderators, so a test from your own account shows nothing.
The bot deletes the test message at once: links from members are always removed unless they are on your official list or whitelist.
Automatic actions
- Links are always deleted. Every link a member posts is removed, except your official and whitelisted sites and invites, GIFs from Discord's picker and links to messages in your server. Unofficial contracts, look-alike sites and invites to other servers also send you an alert.
- Time out fake moderators automatically. On by default. A member who takes the name of your moderator, support or team is timed out at once, and you get an alert. The timeout lasts 28 days unless you pick 1 hour, 1 day or 7 days under Timeout length. A copied avatar alone only alerts you, since fans often use the project logo.
- Ban fake moderators automatically. Off by default. Needs the Ban Members permission.
Switch them in the dashboard, under your server's name. "Not a fake" in an alert lifts the timeout or ban and stops checks for that member; on a link, contract or invite alert it adds it to your whitelist.
Automatic actions never touch moderators or members you marked as not a fake. To time out or ban members, Discord requires the FakeWatch role to be above their roles: see step 2.
Commands
For admins. Discord shows these only to members with the Manage Server permission:
/fakewatch alerts: choose the private channel for alerts./fakewatch protect: guard a channel like an announcement channel, where only your official links are allowed./fakewatch unprotectstops it./fakewatch status: see what the bot checks on this server and which permissions it is missing.
For everyone:
/verify: check a link, contract or invite against your official list. Only the person who asks sees the answer./report: tell your moderators about a scammer, privately.- Report to moderators: right-click a message, open Apps and send it to your team.
Troubleshooting
My server is not in the list on Discord
You need the Manage Server permission on it. Ask the server owner to connect it, or to give you that permission.
The bot says "Everyone can see #channel"
The channel is public. Use a private channel instead, see step 3.
The bot says "FakeWatch cannot post in #channel"
Open the channel settings, then Permissions. Add FakeWatch and allow View Channel, Send Messages and Embed Links.
The dashboard shows "Missing permissions"
Someone changed the bot's role. Open Server Settings → Roles → FakeWatch and turn on the permissions the dashboard lists.
The dashboard shows "Bot removed"
The bot was kicked or left. Press Add the bot back in the dashboard.
An alert's Time out or Ban button fails
The member has a role above FakeWatch. Move the FakeWatch role up as in step 2, then press the button again.
The message vanished, but no alert came
The bot worked: it deleted the message and saved an alert. It never answers in public channels, so the alert goes only to your private alerts channel and your Telegram. If neither is set up, it has nowhere to go: finish step 4 or connect Telegram. Alerts caught before that are not posted later; send a new test message.
Ran /fakewatch protect by mistake? It guards a channel like an announcement channel and alerts on every unofficial link there. Run /fakewatch unprotect in that channel to undo it.
My test message was not flagged
Check that you sent it from an account with no roles that let it manage messages, members or the server: those accounts count as moderators. Also check that the bot can see the channel you posted in.
A new moderator is not recognized yet
The bot rereads your team when roles change and every few hours. Give it a minute after you change roles.