Documentation menu

Docs/Plugins/Applications

Applications

Application forms for your server - staff apps, whitelist requests and signups, reviewed from Discord or the dashboard queue.

Build application forms for your server - staff apps, whitelist requests, event signups, appeals for partner servers, anything with questions and a decision. Members apply in Discord DMs or on the web, and your team reviews from Discord or the dashboard queue. Requires the APPLICATIONS feature; the expanded tier below requires APPLICATIONS_PRO.

Setup checklist

  1. Open Applications and confirm the APPLICATIONS feature is available.
  2. Create one application with a short permanent code. Choose a submissions channel the bot can view, post embeds in, and create threads in if enabled.
  3. Add at least one question. Keep the first test form short and leave it disabled while editing.
  4. Set reviewer access with moderator command level, an application staff_role, or both. Add a notify role only if it should be pinged for every new submission.
  5. Enable the application. Post a static Apply button in a private test channel or run apply <code>.
  6. Submit once through DMs and, if web forms are enabled, once through the web.
  7. Decide the submission from Discord, then repeat from the dashboard queue. Confirm the applicant DM, update-channel move, mod log, and configured role action.
  8. Only after the whole loop works, publish the real apply post and public web listing.

Discord DM questions require the member to allow DMs from the server. Keeping web forms enabled gives applicants a fallback when Discord privacy settings block the DM flow.

Building an application

Create one on the dashboard (Server - Applications) or in Discord with app create, which walks you through every setting: name, description, how many times one member may apply, the reapply cooldown, a required role, a staff role, the submissions channel, a notify role, and an update channel. Every application gets a permanent short code (like mod) - members apply with it, and it never changes.

Add questions on the dashboard builder (where you can also reorder them and edit types) or with app questions <code> add. Seven question types:

  • Short text and paragraph - free text, with a length cap you control
  • Dropdown - pick one option
  • Multi select - pick several
  • Agree - the applicant must accept a statement (great for rules)
  • Number and link - validated automatically

An application starts disabled. When it has a submissions channel and at least one question, app enable <code> opens it.

Applying

Members run apply to see what is open, apply <code> for a confirmation card with a Start button, or click the button on a static apply post (app post <code> #channel). Questions arrive in DMs, one at a time, with 25 minutes per question - and progress is saved, so a restart or a lost connection never eats a half-finished application; answering again continues where they left off. A review step shows every answer before anything is submitted.

Each application can instead hand members a web form link, and every application can also be filled in on the web (the same limits, cooldowns, and blacklists apply there). Public applications get their own shareable page, plus a directory page listing everything open on your server.

Reviewing

Submissions post to the channel you chose as a card with every answer (paged when long) and Approve / Pending / Deny buttons, plus Spam and Delete under the "..." button. Approvals, denials, and spam marks take an optional reason that is shared with the applicant and logged. Reviewing needs moderator level or the application's staff role.

The dashboard queue (Server - Applications - Queue) shows every submission past and present, filterable by application and status, with the same one-click decisions.

On a decision the applicant is DMed the result (and texted, if they linked a verified phone number on their profile page). If you set an update channel, decided submissions move there with the reviewer attributed. Marking a submission as spam also blacklists the member from that application.

You can also make decisions do things automatically, per application: grant or remove roles, kick, post a templated message to a channel, or add extra text to the applicant's DM - configured per outcome (approved / denied / spam) on the dashboard.

Staff tools

  • track response <id> - look up one submission; track app <code> lists the open ones.
  • app blacklist add <user> <code|guild> [reason] - block a member from one application or all of them; remove, get, and list round it out.
  • app cooldown set <user> <code|guild> <days> - override one member's reapply cooldown; clear and get included.
  • app edit <code> <field> <value> - change any setting later (the static apply post updates itself). app show <code> prints the full card.

Moving from AppBot

If your server used AppBot, the Applications page shows an import card. Open "Review what will move" first - it lists every application, how many questions, past submissions, and blacklist entries come with it, and the code members will use afterwards. AppBot let you pick codes with spaces, symbols, and capitals; HepBoat codes are lowercase letters, numbers, and dashes, so some are rewritten (a/apply staff becomes a-apply-staff). The preview shows every rename, so you can tell your members.

When you confirm:

  • Everything listed is copied into HepBoat, including your full submission history with the original answers, statuses, and dates.
  • Your data is then deleted from AppBot, so it is safe to kick AppBot from your server straight away.
  • Your old AppBot apply posts stop working, and anything half-filled there is lost. Post fresh buttons with the Post apply button action on each application (or app post <code> #channel).
  • Applications arrive disabled if they have no submissions channel or no questions - set those, then app enable <code>.
  • AppBot role permissions do not carry over, because HepBoat uses its own permission levels. Set moderator level on the Access tab, or give an application its own staff role.

You can only import once, and it cannot be undone.

Limits

Every server gets 3 applications with 10 questions each (and 10 dropdown options per question). With APPLICATIONS_PRO that grows to 25 / 25 / 25, custom status messages (the submitted / pending / approved / denied / spam texts, with {user} {app} {guild} {status} {reason} templates) take effect, and each submission can open its own discussion thread.

Configuration

Application settings live under plugins.applications in your config - the dashboard builder edits exactly that, so every change lands in your config history and can be restored. Notable per-application keys:

  • limit - 0 unlimited, -1 one at a time (wait for a decision), or an exact number of lifetime submissions.
  • cooldown_days (0-90) and cooldown_from - count the cooldown from submitted or from decided.
  • dm_flow: false - Discord entry points hand out the web link instead of DMing questions.
  • web.enabled / web.public - whether the web form works, and whether it is listed on your public directory page.
  • actions.approve / deny / spam - the automatic decision actions.

Troubleshooting

  • An application cannot be enabled: it needs a submissions channel and at least one question.
  • The DM flow stalls immediately: the applicant may block server DMs. Use the web form or set dm_flow: false for a web-first application.
  • Reviewers see the submission but buttons deny them: give them moderator command level or the application's staff_role.
  • A role action fails after approval: the bot role must sit above the target role and have Manage Roles.
  • The public directory omits an app: check web.enabled, web.public, and the application's enabled state.
  • A static post is stale after editing: use the dashboard's Post apply action or app post to replace old AppBot or deleted HepBoat posts.

Commands

Arguments in {curly braces} are required. Arguments in [square brackets] are optional.

Command What it does
/apply [app] Apply to one of this server's applications.
/track response {id} Look up one application submission by id.
/track app {app} List an application's open submissions.
/app list Every application on this server.
/app show {app} Full detail card for one application.
/app create Build a new application (interactive).
/app edit {app} {field} {value} Edit one field of an application.
/app enable {app} Open an application.
/app disable {app} Close an application.
/app delete {app} [confirm] Delete an application definition (submission history stays).
/app post {channel} {app} Post (or move) the static Apply message for an application.
/app questions {app} [action] [index] List, add, edit, or remove an application's questions.
/app messages {app} [action] View or set the custom status messages (Applications Pro).
/app blacklist {action} [user] [scope] [reason] Manage the application blacklist.
/app cooldown {action} [user] [scope] [days] Override one member's reapply cooldown.