Discord application bot

Staff applications without a spreadsheet. Build the form in a dashboard, post an Apply button, and every application arrives in a staff channel with Accept and Deny under it. Accepting can hand out the role, and the applicant hears back either way.

Add to Discord Setup guide

Applicants never leave Discord

Each form is one of two kinds, and you pick per form:

  • In server. Someone presses Apply and a Discord pop-up opens. Longer forms continue over several pop-up pages, up to 25 text questions, and a choice question shows as a menu.
  • Direct message. The bot asks one question at a time in DMs. There is no pop-up size limit, and you can give people a time limit to finish.

Questions can be short text, a paragraph, or a choice from a list. Each can be required or optional, have a minimum and maximum length, and be checked against a pattern you write, with your own error message when an answer doesn't fit, like a Minecraft username or an age.

Start from a template if you like: Staff application, Police, Fire & EMS and Minecraft SMP fill the questions in for you.

Reviewing, in Discord

FeatureDoes
Review channelNew applications post to a staff channel, with separate channels for accepted and denied if you want them
Ping rolesWho gets pinged when an application arrives
Review threadA thread under each application for staff to talk it over
VotesStaff vote 👍 or 👎 before anyone decides
Ask applicantSends the applicant a question, and their answer is attached to the application
OutcomesMore than one way to accept, like "Accept as Moderator" or "Accept as Helper", each with its own roles
ReviewersLimit who can accept or deny one form to certain people or roles
Hide answersKeep the answers out of the Discord channel and show them only on the dashboard
Deny reasonOptional, and sent to the applicant

Roles that look after themselves

  • On accept: give roles like @Trial Mod, and take others away.
  • On deny: add or remove roles too, like a "Previously denied" tag.
  • While waiting: a role such as @Applicant, removed automatically once it's decided.
  • On submit: remove a role the moment someone applies, like "Can apply".

Who can apply, and how often

A form can require certain roles (all of them or any one), refuse people with others, and set a cooldown, a limit on how many times each person can apply, and a limit within a time window. By default one person can only have one application waiting. Staff can let someone apply again early with /reset-cooldown, or everyone with /reset-all-cooldowns. If an applicant leaves the server, their waiting application can be denied automatically.

For the applicant

They get a DM when they submit, when they're accepted and when they're denied, and you can write each one yourself with {username}, {guild}, {form} and {reason}. They can check where they stand with /application status, and withdraw an application they no longer want.

Setting it up

/panel create form: Staff application title: Apply to the team

Make the form in the dashboard first, then that posts its Apply button in the channel you run it in. One panel can hold several forms, as buttons or a dropdown, and people can also start one with /apply. The applications guide walks through it click by click.

History you can take with you

The dashboard keeps every application and what happened to it: who accepted it, who denied it and why. /export_applications downloads them. Coming from Appy? /import-appy brings your Appy history across, as the Moving from Appy guide explains.

What it costs

Nothing. Every feature above is on the free plan, which allows 10 forms, 10 panels, 25 questions per form, 150 applications a day and 60 days of history. Paid plans raise those numbers and nothing else, as the pricing page lists. Or run it yourself under the AGPL-3.0.

It is not only an application bot

The same bot runs ban appeals, tickets, verification, anti-raid and giveaways: one bot to invite and one dashboard.

Questions

Do applicants have to leave Discord?

No. An in-server form opens as a Discord pop-up when someone presses Apply, and a direct-message form asks its questions one at a time in DMs. Nobody is sent to a website.

How many questions can a form have?

Up to 25 on the free plan. An in-server form shows them across several pop-up pages and can ask at most 25 text questions, because that is what Discord's pop-ups allow. A direct-message form asks one at a time, so on a paid plan it can be longer.

Can staff discuss an application before deciding?

Yes. Each application can open a review thread for staff, staff can vote with thumbs up or down, and Ask applicant sends the applicant a question whose answer is attached to the application.

Can accepting an application give a role?

Yes. Each form can grant and remove roles on accept, add and remove roles on deny, give a role while the application is waiting, and remove a role the moment someone submits.

Can I stop people applying over and over?

Yes. A form can have a cooldown, a limit on how many times each person can apply, and a limit within a time window, and by default one person can only have one application waiting. Staff can reset someone's cooldown with /reset-cooldown.

Is it free?

Yes. Every feature is on the free plan. Paid plans raise limits such as how many forms and applications a server can have, and you can self-host the whole bot for free under the AGPL-3.0.