Give a Role After Verification
Give Discord members a verified role automatically when they verify, or take away an unverified role. Set up the roles, channel access and fix missing roles.
RestoreCord can give members a role the moment they verify, or take one away. Pick what happens under On Verify Action on your server's General tab, then lock your channels so only verified members can see them.
Go to General › On Verify Action
Role settings are available on every plan.
Pick a mode
On Verify Action has three modes. The full option list is in General settings.
| Mode | On join | On verify | Channels are hidden from |
|---|---|---|---|
| Give Role (default) | Nothing | The Verified Role is given | Everyone without the verified role |
| Remove Role | The bot gives the Unverified Role | The Unverified Role is taken away | Members who still have the unverified role |
| Both | The bot gives the Unverified Role | The Unverified Role is taken away and the Verified Role is given | Everyone without the verified role |
When to use Give Role
Pick Give Role for most servers, and always for a new one.
- Roles are given by the verify page itself, so it keeps working while your bot is offline.
- Anyone who hasn't verified, including people already in the server, can only see the channels you leave public. Existing members need to verify to get their access back.
- /syncroles works in this mode.
When to use Remove Role
Pick Remove Role to add verification to an established server without locking out the people already in it.
- Only members who join while the mode is on get the unverified role. Current members never get it, so their access doesn't change.
- The role is given by your bot when someone joins, so your bot must be online with its Server Members Intent on. See Bot Management if your bot shows a privileged intents warning.
- /syncroles only manages the verified role, so it can't fix the unverified role. Use OAuth Authorization Checks or ask members to verify again instead.
When to use Both
Pick Both when you want a verified role for channel access and also want unverified members to be easy to spot, for example in the member list or for your own moderation bots. Channel permissions work the same way as in Give Role. The two roles must be different.
Set it up
Create the roles in Discord
In Discord, open Server Settings › Roles and create the roles you need, such as Verified and Unverified. Don't use a role managed by a bot or integration; the dashboard doesn't list them.
Move your bot's role above them
Still in Server Settings › Roles, drag your bot's role above every role RestoreCord will give or take away, and make sure the bot's role has Manage Roles. See Role order.
Choose the mode and roles
On the General tab, pick a Discord Server first; the modes are greyed out until you do. Then choose the On Verify Action, pick the roles it asks for and press Save. Below the choice, the dashboard spells out what will happen, for example "When a user verifies, role Verified will be given."
Go to General › On Verify Action
Only the server owner can change the roles. Sub-users see them as Read-only.
Lock your channels
Hide your server's channels from members who haven't verified. See Channel permissions.
Test it
Verify with a second Discord account and check that it gets the right role and can see the right channels.
You can also set roleId, roleMode and unverifiedRoleId with an API key. See Update Server.
Channel permissions
The role only matters if your channels depend on it. The fastest way is Set up verification, which picks a verification channel, posts the message and sets View Channel on the channels you approve. See Set Up Verification Channels.
To set it up yourself, aim for this layout:
| Channel | Give Role or Both | Remove Role |
|---|---|---|
Verification channel and public channels such as #rules | @everyone: allow View Channel | @everyone: allow View Channel |
| Member channels | @everyone: deny View Channel. Verified role: allow View Channel | Unverified role: deny View Channel |
| Staff channels | Leave alone | Leave alone |
- Set permissions on categories where you can, so new channels inherit them.
- Never give the verified role access to staff channels.
- In Give Role mode you can also deny the verified role View Channel on the verification channel to hide it after members verify.
The full manual table, including Send Messages, is under Configuring it yourself.
Role order
Discord only lets a bot give or remove roles that sit below its own highest role. This applies to the verified role, the unverified role and every extra role.
- In the role picker, roles the bot can't manage are listed under Roles with Missing Permissions and can't be picked. Why? shows the fix. After moving the bot's role in Discord, press Done to refresh the list.
- If the role order changes after you save, members see error 50013 on the verify page and get no role.
- If your Discord server has Require 2FA for moderator actions on, the Discord account that owns the bot must have 2FA, or the bot can't give roles. See error 990403.
Extra roles
The General tab has one Verified Role. Other features can give more roles at the same time:
| Feature | What it gives | Plan |
|---|---|---|
| Firewall custom rule | Up to 5 roles (Give role) to members who match the rule, with any decision except block | Premium |
| Verification password | An optional Assigned Role to members who verify with that password | Enterprise |
| Multi-server pulling | Adds members to up to 25 other servers and gives or removes roles there on verify | Business |
| Pull Members | One role for every pulled member. It starts as your verified role | All |
Firewall and password roles are given together with the verified role. If any of them fails, the roles already given are taken back and the member sees an error, so they never end up half-verified.
Fix members who verified before
Members who verified before you set a role, or while the role was broken, don't get it on their own. You have three options.
Run /syncroles
Run /syncroles in your Discord server. It compares your Discord members with your verified members and shows how many will get the verified role and how many will lose it. Click Sync Roles! to apply the changes or Cancel to stop. When it finishes, it reports how many members were changed and how many failed.
- You need the Discord Administrator permission, and the bot needs Manage Roles with its role above the verified role.
- It only manages the Verified Role and never touches the unverified role, so use it in Give Role and Both modes.
- It removes the verified role from anyone who isn't a verified member, including people you gave the role by hand and unauthorized members. Check the preview before you confirm.
More detail is in Bot Commands.
Turn on OAuth Authorization Checks
OAuth Authorization Checks (Premium) re-checks your verified members on a schedule. Members who still authorize your bot get any missing verify roles back, in every mode. Members who revoked it have their roles reversed: the Verified Role is taken away and the Unverified Role is given back.
Go to Extras › OAuth Authorization Checks
Ask them to verify again
A member who is already in your server and verifies again gets any missing roles, and loses the unverified role.
Troubleshooting
| Problem | Fix |
|---|---|
| Error 50013 on the verify page | Drag the bot's role above the role in Server Settings › Roles and give it Manage Roles. See 50013. |
| Error 990403 | The bot lacks permissions or the bot owner needs 2FA. See 990403. |
| Error 990404 | The verified role was deleted in Discord. Pick a new Verified Role and save. See 990404. |
| Error 990408 | Add verified members is off, so members must join the server before they verify. |
| Verifying works but no role is given | Check On Verify Action. Remove Role gives no role; it only takes the unverified role away. In Give Role mode, make sure the Verified Role isn't No Role. |
| New members don't get the unverified role | The bot must be online with Server Members Intent on, and its role must be above the unverified role. Members who joined before you turned the mode on never get it. |
| Verified members still can't see channels | The role is fine, but the channel permissions don't use it. See Channel permissions. |
| Unverified members can see everything | In Give Role mode, deny @everyone View Channel on member channels. In Remove Role mode, check that the member actually has the unverified role. |
/syncroles says no verification role is configured | The Verified Role is No Role. Pick one, or in Remove Role mode use OAuth Authorization Checks instead. |
For other bot problems, see Bot Errors.
Next steps for unverified members
Once members get a role on verify, you can nudge or remove the ones who never do:
- Verification Reminders: send a DM to members who joined but haven't verified.
- Auto-Kick Unverified Members: remove members who don't verify in time.