Give a Role When a Discord Application Is Accepted (and Why It Sometimes Fails)
Set roles to give or take on accept and on deny. If a role is not given, Mico's role is below it: drag Mico's role above it in Server Settings, then Roles.
Mico Team, Mico
6 min read
Accepting an application should do something. A new moderator gets the Mod role, a whitelisted player gets the role the game server reads, a partner server's rep gets Partner. Doing that by hand after every accept is the step that gets forgotten.
Mico does it as part of the decision. This guide covers how to set it up and the one Discord rule that breaks it.
How do I give a role when an application is accepted?
Open the panel, in the dashboard or with /panel, and go to Messages and after a decision. There are two rows for roles:
Role changes on a panel
- When accepted
- Roles to give, and roles to take
- When denied
- Roles to give, and roles to take
Pick the roles. That is all. From the next decision on, Mico applies them as part of the decision itself, in this order:
- Reviewer presses Accept
- Roles given and taken
- Applicant gets a DM
- Review message updated
It works the same when the AI accepts or denies automatically from the score the server set. And the change appears in your server's audit log with a reason that names the application, like "Mico: application #1234 accepted", so you can always see why someone got a role.
When roles were given on accept, the applicant's DM says so: "Your new roles were given to you."
How many roles a panel can give or take depends on your plan; the numbers are on the pricing page. If you pick more than the plan allows, the extra ones are not applied.
Why can't a Discord bot give a role?
This is the single most common problem, and it is a Discord rule, not a Mico one.
A bot can only give or take roles that sit below its own highest role. Discord shows roles as an ordered list in Server Settings, then Roles. When Mico joins, its role lands near the bottom. Any role you created earlier sits above it, so Mico is not allowed to touch it.
Giving the bot Administrator does not change this. Discord still checks the order.
Here is how to fix it:
Open Server Settings
From the server's name at the top of the channel list
Go to Roles
You see every role, highest first
Find Mico's role
It has the bot's name
Drag it up
Above every role it should give or take, such as Mod, Member or Whitelisted
Save
Discord asks you to save the new order
Keep Mico's role below your admin and owner roles. It only needs to sit above the roles your panels give. That way it can never touch a role that has power over the server.
Two more things can stop a role:
- Mico lacks Manage Roles. It is in the permissions Mico asks for when it is added. If someone removed it, add it back to Mico's role.
- The role is managed by something else. The server booster role, and roles that other bots or integrations own, cannot be given by any bot.
What happens when a role fails?
Mico gives the roles it can, and skips only the ones it cannot. A single role in the wrong place does not stop the others from being given.
Your reviewer sees it straight away. Under the decision, the review message says one of:

Roles given.

Mico could not change their roles: check that its role is above the roles it gives.
When you see the second line:
- Fix the role order, as above
- Give the missing role to that person by hand, this once
- Every later accept on that panel works on its own
Mico does not try the role again later, so the hand-off in step 2 matters.
Roles also cannot be given to someone who already left the server. In practice this rarely comes up: when a member leaves, Mico cancels their applications that are still waiting.
How do I swap an "Applicant" role for a "Member" role?
Many servers use a temporary role while someone is being reviewed: it opens an applicant-only channel, or hides the rest of the server. Mico can clean it up on the decision.
| When accepted | When denied | |
|---|---|---|
| Roles to give | Member | none |
| Roles to take | Applicant | Applicant |
| The applicant's DM | Accepted, and their new roles were given | Not accepted this time |
A few patterns that work well:
- Staff: on accept give Trial Mod; on deny nothing. Promote to full Mod by hand later.
- Whitelist: on accept give Whitelisted; on deny nothing.
- Partners: on accept give Partner; on deny nothing.
- Gated server: on accept give Member and take Unverified; on deny take nothing, so they can try again later.
Taking a role on deny is rarer, but useful. If the Applicant role opened a private channel, taking it on deny closes that channel for them.
Note that a role a panel requires before someone can apply is a different setting, under who can apply. That is about who can start, not what happens after. Stopping spam applications covers it.
Can an accept role whitelist someone on a game server?
Only if the game server reads Discord roles. Mico gives the role in Discord. It does not write to a FiveM, Minecraft or any other game server's whitelist.
Many game servers already use a plugin or script that checks a Discord role on join, and then the accept role is all you need. If yours does not, the panel's webhook on accept can tell your own script to add the player. Both routes are in the whitelist application guide.
What role changes on accept cannot do
Good fit
- Gives and takes roles on accept and on deny, per panel
- Works for reviewer decisions and automatic AI decisions alike
- Keeps going when one role fails, and tells the reviewer
- Leaves a reason in your audit log naming the application
Not the right call
- Cannot give a role above its own: fix the order in Server Settings
- Cannot give the booster role or roles owned by another bot
- Does not retry a failed role later: give it by hand once
- Does not write to a game server's whitelist
- Does not remove roles later on a timer
If you are setting up applications from scratch, the staff application bot set-up guide walks through channels, reviewers and the first panel. For tryouts and team roles across several games, see the recruitment bot guide.
Keep reading
Frequently asked questions
Open the panel in the dashboard or with /panel, go to Messages and after a decision, and under When accepted pick the roles to give. From then on, every accept on that panel gives those roles, whether a reviewer pressed Accept or the AI accepted it automatically.
Almost always because of the role order. A bot can only give roles that sit below its own highest role in Server Settings, then Roles. Drag the bot's role above the roles it should give. The bot also needs the Manage Roles permission, and it can never give a role managed by an integration, like the booster role.
No. Administrator does not let a bot give a role above its own highest role. Discord checks the order regardless. Move the bot's role up instead, and keep its permissions to what it needs.
Yes. Each panel has roles to give and roles to take, on accept and on deny separately. A common setup takes an Applicant role on both, gives Member on accept, and gives nothing on deny.
The others are still given. Mico skips only the role it cannot give, changes the rest, and the review message says it could not change all their roles, so the reviewer knows to fix the order and give that one by hand.
Keep reading.
All articlesDiscord Pending Applications: Where to Find and Review Them
Discord keeps pending Apply to Join requests on your server's Members page. How to find them, approve, reject or interview, and when a bot fits better.
7 min read
Send Discord Applications to Google Sheets, Trello or Your Own Server
Mico's webhook sends each application and decision as signed JSON to a URL you control. How to get it into a sheet or board, and what happens when you are down.
6 min read
"Enable Your DMs": Why You Cannot Apply on a Discord Server
The application bot could not DM you. Turn on Direct Messages in that server's Privacy Settings and press Apply again, or apply on the website instead.
7 min read
See it on your own server.
Add Mico free, run /setup, and the next application arrives scored, in its own review channel.
Free plan, unlimited applications. New servers get Premium free for 14 days with their first posted panel. No card.