Forms
Build applications, signups and surveys that members fill in on the web or in Discord.
Overview#
Forms let you collect structured answers from your members: staff applications, event signups, bug reports, feedback surveys. You build the questions on the dashboard, then publish the form so people can fill it in either from a button panel in Discord or from a shareable web link. Applications go through an approve/deny review queue that can DM the applicant the result and hand out roles automatically.
Forms may not be available on every server yet. See Beta Features if you cannot find it in your dashboard.
How to Set Up#
- Go to the dashboard and select your server
- Navigate to the Forms section and click New form
- Give it a name and an optional description, choose the type (Application or Survey), and start from a blank form or one of your saved templates
- Build the questions: add sections, then add fields inside each one
- Set each question's type, help text and whether it is required
- Use the settings cards on the right to configure Access, Schedule, and (for applications) Review and Outcome
- In Form details, choose a panel channel so the bot posts a button in Discord, and/or enable the public link
- Click Save, then Publish to make the current version live
- Watch the Submissions page as answers come in
Form Types#
The type you pick decides whether responses get reviewed, and it can be changed later.
| Type | Behavior |
|---|---|
| Application | Reviewed and answered: approve or deny, tell the applicant, grant roles |
| Survey | Collected and read. Nobody approves a survey response |
Choosing Survey hides the review and outcome settings entirely, because a survey has no decision to make. Switching an application to a survey does not un-decide submissions that were already handled. They keep the status they already have.
Questions#
Questions live inside sections. A section is a titled group of questions, and it is also a page: in Discord the wizard walks the applicant through one section at a time.
Field Types#
| Type | What it asks for |
|---|---|
| Short text | One line, with an optional format check |
| Paragraph | A multi-line answer |
| Number | A numeric answer, with an optional range |
| Pick one | Radio options, exactly one choice |
| Pick many | Checkboxes, with optional minimum and maximum selections |
| Socials | Handles for the platforms you choose |
| File upload | Images, video or documents |
| Pick a time | Options are dates and times, shown to each person in their own timezone |
| Pick times | The same, but several can be selected, useful for "which slots work for you?" |
Per-Question Settings#
- Required: every question has a required toggle; off means people can skip it
- Help text: optional guidance shown under the question
- Placeholder: greyed-out example text inside a text box
- Format check: short text fields can be pinned to a known format, such as an email address, a link, or an Instagram, Twitter/X, TikTok, YouTube, Twitch, Discord, Roblox or Steam handle
- Length and range limits: minimum and maximum length on text, minimum and maximum value on numbers
File Upload Questions#
File upload questions let you choose which kinds of file are accepted:
- Buckets: images, video, documents. Enable the ones you want
- Specific formats: narrow a bucket further (for example images, but only PNG and JPEG). Leaving a bucket without named formats accepts anything in it
- Max files: up to 10 per question
- Max size: set per question, in megabytes
Uploaded files count against your server's form media allowance, which is shown on the Forms page. Deleting a form releases the storage its uploads were using.
Configuration Options#
Access#
| Setting | Description |
|---|---|
| Require a Discord sign-in | Ties each submission to an account, which is what makes the submission limits enforceable |
| Allow anonymous submissions | Anonymous fills have no identity to count, so they are exempt from the limit |
| Submission limit | One submission per person, can resubmit after a denial, or unlimited |
| Cooldown | Minutes someone must wait between submissions, when more than one is allowed |
Schedule#
- Opens at: the form stays closed until this moment. Leave empty to open as soon as it is published
- Closes at: the form stops accepting answers here. Leave empty to stay open until you close it yourself
- Stop after this many submissions: a hard cap; the form closes itself once it is reached
Review (applications only)#
| Setting | Description |
|---|---|
| Review submissions | Turn the approve/deny queue on. Off means every submission is simply recorded |
| Post submissions to | The channel where the bot posts each submission with approve and deny buttons |
| Ping role | A role pinged when a new submission arrives |
| Reviewer roles | Who can see and decide submissions |
Outcome (applications only)#
- DM the applicant the result: includes the reason a reviewer gave. Silently skipped if their DMs are closed
- Grant on approval: roles added to the applicant when their submission is approved
- Remove on approval: roles taken away, which is handy for clearing an "applicant" or "pending" role
Where People Fill It In#
The Discord panel#
Set a panel channel and the bot posts a message there with a button when the form is published. You can keep the panel simple or build a custom message with your own text, embed, button label, emoji, button color and banner image.
Clicking the button opens a private thread for the applicant and walks them through the form section by section: "Answer questions" opens a modal for the text-style questions, "Attach files" handles uploads, and Back/Next move between sections. A thread is used rather than a pop-up because filling in a form takes several minutes and Discord's temporary messages do not last that long.
If the person cannot submit (the form has not opened yet, it is closed, they have already applied, or they are still on cooldown), the bot says so before creating anything.
Members can also run /forms to see which forms are currently open in the server.
The public link#
Enabling Public link mints a shareable web address of the form /f/... that works without any dashboard access. Anyone with the link can open the form.
- If the visitor is signed in with Discord, their submission is tied to their account
- If they are not, the submission is anonymous, and the form will only accept it if you allowed anonymous submissions
Turning the public link off revokes the current link permanently. Turning it back on mints a brand new one, so the old address stays dead.
Publishing and Versions#
A form has a draft and a published version. Editing changes the draft; Publish makes it live.
- Until you publish for the first time, nobody can fill the form in
- Publishing again creates the next version. Existing submissions stay attached to the version they actually answered, so a reviewer always reads the questions the applicant saw
- Saved-but-unpublished edits are flagged in the editor, and people filling the form in continue to see the last published version
Statuses#
- Published: accepting submissions, subject to the schedule and limits
- Closed: no longer accepting submissions. Reopen it any time
- Archived: kept for its submissions but can no longer be edited
You can also duplicate a form or delete it. Deleting a form deletes its submissions too.
Reviewing Submissions#
The Submissions page lists everything that came in, with tabs for Pending, Approved, Denied and All (a survey has no statuses, so it shows a single list of responses).
Opening a submission shows the answers rendered against the version they were given, alongside the submitter, or an "Anonymous" marker where there is no identity. From there reviewers can:
- Approve: triggers the result DM and any role changes you configured
- Deny: requires a reason, because the applicant is told it
- Add a note: an internal comment that is not sent to the applicant
- Download attached files
- Export CSV of the whole queue
Decisions can be made either on the dashboard or straight from the approve/deny buttons on the review message in Discord. Both do exactly the same thing.
Templates#
Save any form's questions as a template so your next form starts from them instead of a blank page.
- Templates are private to your server
- They hold the questions only: no settings, no submissions
- New forms offer your templates in the Start from list
- Delete a template from the Forms page when you no longer need it
Tips#
- Decide Application vs Survey first. It is the setting that determines whether reviewers, decisions, result DMs and role grants exist at all.
- Use sections as chapters. In Discord each section is one step of the wizard, so grouping related questions keeps the flow readable instead of dumping 20 questions on someone at once.
- Set a submission channel and a ping role for applications. Without them, submissions only surface on the dashboard and can sit unnoticed.
- Write denial reasons that help. The reason is DM'd to the applicant, so "we're looking for more moderation experience" is far more useful than "no".
- Use "Grant on approval" plus "Remove on approval" together to move an approved applicant out of a pending role and into the real one in a single step.
- Cap file uploads tightly. Two 8 MB images is usually plenty, and your form media allowance is shared across every form on the server.
- Publish after every edit that matters. Saved changes stay behind the Publish button, and it is easy to forget people are still filling in the older version.
- Save your recurring forms as templates. Seasonal events and repeat application rounds are much faster to rebuild from a template than from scratch.