Who can configure and review
Application settings and decisions use the server's dashboard access rules: the server owner, members with Manage Server, and people explicitly granted dashboard access by the owner. Owner access restrictions still apply. The same check applies to ~approve and ~deny.
- Stoatmod needs Manage Roles, Manage Permissions, Assign Roles, Timeout Members and Kick Members.
- Its role must sit above members and roles it manages.
- The configured log channel must allow the bot to view it and send messages and embeds.
Channel visibility and roles
Enable Require an application and select the channels applicants may view. Channels are grouped by category, with checkboxes for categories and individual channels. An empty selection hides all server channels. Selected channels remain read-only while the applicant is restricted.
Stoatmod creates a Verified member role and prepares server and channel permissions to preserve established member access. Applicants receive that access role and configured automatic roles after approval. Channel-selection changes apply to everyone awaiting approval.
Important: A timeout prevents chatting but does not itself hide channels. Wait for access setup to finish successfully. After changing server permissions, use Save & repair access and check the result with an ordinary-member account.
Form and embed settings
Save application settings to publish edits. Existing applications retain the questions and appearance they started with; later applicants receive the updated form. The submission confirmation always includes the review deadline.
- Add between 1 and 20 questions. Each has a title, question text, type and required/optional setting.
- Text questions accept a reply of up to 2,000 characters.
- Multiple-choice questions contain 2–8 options. Members reply with the option number.
- Rules-agreement questions ask the member to reply agree. Optional questions can be skipped by replying skip.
- The introduction supports up to 1,000 characters; question titles support 120 and question text supports 1,200.
- Customise question emojis and colours, the default embed colour, footer, and submission title, emoji and message. Questions can be duplicated and reordered.
- The DM preview shows the required privacy agreement, question and submission embeds with formatted text. Sample replies are preview-only.
CAPTCHA checks
Applications work alongside the server's Join protection and CAPTCHA every member settings. With Join protection enabled, accounts younger than 14 days require screening. CAPTCHA every member also requires screening for older accounts. Bots and members covered by the configured moderator exemption bypass the normal application flow.
The first DM asks the member to read the privacy notice and reply I agree. No questions or CAPTCHA are sent before agreement. When screening is required, the bot then sends a browser verification URL; Stoatmod does not scan IP addresses. The member must complete the CAPTCHA checks before answering questions. Passing the checks moves the application into In progress; it does not grant server access.
Important: The application flow uses its own seven-day completion deadline. The separate 30-minute join-CAPTCHA expiry applies to standalone join verification without an application.
DM answers and resuming
Stoatmod sends one question at a time. The member replies in the bot DM and receives the next question after a valid answer. The final valid answer submits the application automatically.
If a verification link is expired or was replaced by a resend, request the current link with ~application and use the newest DM. An application that has passed its overall deadline cannot be resumed.
~applicationUse in the bot DM to resend the current question or verification link, or check submission status. If several server applications are open, the bot lists them.
~application APPLICATION_IDUse the application ID supplied by the bot to select and resume one application in the DM.
Statuses and deadlines
The displayed Deadline is the current cutoff. Decision saved means the bot is still applying the action; Decision applied confirms completion. A separate moderation timeout imposed independently of the application is not removed by application approval.
- Awaiting checks: browser verification is required before questions begin.
- In progress: the member is answering the form. Verification and answering share a seven-day completion period.
- Awaiting review: the form was submitted. A 14-day review and retention period starts at submission. Restrictions continue until approval. All application records are deleted at the end of that period, including accepted or denied applications.
- Approved: the decision grants the access role and configured automatic roles, and removes application restrictions and the application's timeout.
- Denied: the member is kicked with the recorded reason.
- At expiry: unfinished applications are deleted after seven days. At 14 days after submission, undecided applications are automatically denied and all application records are deleted, including accepted applications. The access role is never granted without approval.
- Left server: the application no longer applies to an active membership. A later join starts a new application when required.
Review and notifications
Open Applications → Review applications and select an applicant. The detail view shows answers, screening status, deadline and any decision or action error. Review is available after submission and before expiry. Use Approve & grant access or enter a reason and choose Deny & kick.
Submitted applications are announced in the configured logs channel with a dashboard link. Each authorised reviewer can independently opt into DM me when someone applies. The bot also attempts to notify the applicant of submission and the final outcome.
~approve USER_ID REASONApprove a submitted application from a channel inside the applicant's server. Use the exact Stoat user ID, not an application ID.
~deny USER_ID REASONDeny a submitted application in that server and kick the member with your reason. A denial reason is required.
Recover from delivery or permission failures
- Missing DM: make sure the member can receive bot DMs. Use Resend applicant DM in the dashboard, or have the member send ~application to the bot.
- Setup needs attention: read the reported permission or hierarchy error, correct it, then save again. Use Save & repair access if channel permissions have changed.
- Decision saved · action failed: correct the reported problem and select Retry action. Check the member's actual roles, channel visibility and timeout after Decision applied.
- Server-only command: run review commands in a server channel, not a DM. If a temporary server lookup error appears, retry shortly.
- Disabling applications stops new forms. Existing applicants still need a decision; new members receive access automatically. The access role remains in use.