Honeypot
Trap channels that catch spam bots the moment they post.
Configure Honeypot in the dashboard →
Overview#
A honeypot is a channel nobody is supposed to talk in. Iris posts a notice at the top telling members to leave it alone, and actions anything that posts there anyway.
It works because of how account compromise actually plays out. A member whose account is taken over does not choose where the spam goes: the script posts in every channel it can see, in order, as fast as the API allows. The trap channel is one of those, and it is the one channel where a message is near-certain evidence rather than a judgement call. No word list, no rate threshold, no false positives from someone who types fast.
The default action is a softban, which is a ban followed immediately by an unban. The ban is what sweeps the account's spam out of every channel at once; lifting it straight away means the real owner can rejoin once they have changed their password and revoked the app that took the account.
Setup#
-
Make a channel for the trap. Name it something that reads as a mistake to click into - #do-not-post or #honeypot - and put it near the top of the list where a script will reach it early.
-
In that channel's permissions, deny Send Messages for @everyone. A member who cannot post cannot trip the trap by accident, while a compromised account with elevated roles still can.
-
Open the dashboard and go to Moderation > Honeypot, then add the channel under Trap channels.
-
Pick an Action. Start on Log only for a few days if you want to watch what the trap catches before it does anything.
-
Write the Channel notice, then press Post notice so members see the warning.
-
Set a Log channel so every catch is recorded, then turn Enable Honeypot on and save.
Settings#
Permissions#
What it looks like#
The notice is a Components V2 container: a heading over a paragraph, an optional image to the right, and a disabled button carrying the running count. It is not an embed, so it has no coloured sidebar unless you turn the accent stripe on.
Tips and gotchas#
Somebody posted in the trap and nothing happened.
Check the module is on, that the channel is in the trap list, and that the member is not exempt - administrators and bypass roles are ignored by default, and the server owner always is. If the log says the action failed, the Iris role is below the member's highest role.
What is the difference between a softban and a ban?
Both sweep the account's recent messages out of the whole server. A softban then lifts the ban immediately, so the real owner can come back once they have recovered the account. A ban keeps them out.
Does resetting the module clear the counter?
No. The counter and the catch list are records, not settings, so the Danger Zone reset leaves them alone. Use Reset counter on this page.
Can I have more than one trap channel?
Yes. Add as many as you like; the notice is posted in every one of them and they share a single counter.
Will this catch a member who just wandered in?
Only if they can post. Deny Send Messages for @everyone on the channel and the only accounts that can trip it are ones with elevated permissions, which is exactly the case worth catching.