Screening join requests¶
Screen incoming VRChat group join requests against rules you choose. Failed checks can flag a request for staff review or, with Premium, deny it automatically. In a group anyone can join, the same rules flag the join instead.
Requirements¶
| Requirement | Details |
|---|---|
| Your access | Administrator to configure; Manage Server or higher to view dashboard settings. |
| LogDog in Discord | View Channel, Send Messages, Embed Links, and Attach Files in the request-log channel. Group Request Create must be enabled and routed there (Group Member Join for an open group). |
| LogDog in VRChat | View Audit Log; Manage Group Invites for auto-deny. |
| Plan | Flags, 3 blocked keywords, and 3 flagged groups are free. Premium adds auto-deny, 15 keywords, and 15 flagged groups. |
Set up on the dashboard¶
- Open Log Routing and make sure Group Request Create is enabled and has a channel.
- Open Settings → Request screening.
- Turn on Check new join requests (and joins in an open group), choose the checks you want, and set each to Flag or Auto-deny.
- Use Save account age, Save bio phrases, or Save keywords after editing those fields. Add flagged groups with Add group (see Flagged groups). Other controls save as you change them.
- Review the results in your request-log channel.
Flag adds a note to the log message for your moderators. Auto-deny (Premium) denies the request for you. Start with Flag while you check whether your rules suit the group. A flag gives staff information; it does not approve or reject the request.
Rules¶
| Rule | What fails the check |
|---|---|
| Account age | The VRChat account is younger than the number of days you set. |
| Trust rank | The user's rank is below the one you pick. Accounts VRChat marks as a nuisance fail at any setting. |
| Age verification | VRChat's reported state is not one you accept: Verified 18+, Verified, Hidden, or Not verified. You can optionally add bio phrases that also pass. |
| Group history | This group's own history, since LogDog started watching it, includes a previous ban or denied request, depending on the checks you enable. A previous ban still counts if the person was later unbanned. |
| Blocked keywords | The user's display name, bio, or status contains text from your list, ignoring case. |
| Flagged groups | The user shows one of your listed VRChat groups on their VRChat profile. See Flagged groups. |
A bio statement such as 18+ is self-reported; accepting it is different from requiring
VRChat's age verification. Each rule can be enabled and given a severity separately.
Flagged groups¶
List VRChat groups you want staff to know about. Someone who shows one of these groups on their VRChat profile fails the check, and the request lists Member of flagged group: followed by the group's name. Each group in the list has its own severity.
LogDog can only see the groups a person shows publicly on their profile. Someone who hides a membership passes this check.
Add groups on the dashboard¶
- Open Settings → Request screening and find Flagged groups.
- Paste the group's id (
grp_…) or its vrchat.com group link (https://vrchat.com/home/group/grp_…) into the box. A short code such asABCD.1234or avrc.groupshare link will not work. - Choose Flag or Auto-deny for that group, then select Add group (or press Enter).
You can paste several ids or links at once; each group gets its own row with the severity you chose. Change a group's severity with the select on its row; it saves as you change it. Select Remove to stop screening against that group.
A row shows the group's VRChat name and icon once LogDog has looked it up. Until then it reads Looking up…, or Name not loaded yet if the lookup is taking longer. Screening matches on the group id, so the rule works before the name appears. A row that reads Not found on VRChat. Check the ID or link. has an id VRChat does not know: remove it and add the correct one.
Add groups in Discord¶
/screening flag_group<group><severity>adds a group, or changes the severity of a group already on the list./screening unflag_group<group>removes a group./screening viewlists each flagged group with its severity.
<group> takes the same group id or vrchat.com group link as the dashboard.
How matches are handled¶
- If someone shows several flagged groups, each one is listed. The request is denied if any matched group is set to Auto-deny.
- If LogDog could not read the person's groups, the request is flagged Couldn't check group memberships. It is never denied for that reason.
- In a group anyone can join, a match flags the join; nobody is removed. See Open groups.
You can list up to 3 groups on the free plan and up to 15 with Premium. Auto-deny on a group needs Premium.
Configure in Discord¶
The /screening commands edit the same settings:
| Command | Purpose |
|---|---|
/screening view |
Show the current rules, including each flagged group, and routing warnings. |
/screening toggle |
Enable or pause screening without deleting rules. |
/screening account_age <min_days> <severity> |
Set minimum account age; 0 disables the check. |
/screening trust_rank <minimum> <severity> |
Set minimum trust rank. |
/screening age_verification <accept> <severity> [bio_phrases] |
Choose an acceptance preset and optional comma-separated bio phrases. The dashboard offers individual state checkboxes. |
/screening history <previously_banned> <previously_denied> |
Set each history check to Off, Flag, or Auto-deny. |
/screening keywords <keywords> <severity> |
Replace the blocked-keyword list with a comma-separated list; an empty list disables the check. |
/screening flag_group <group> <severity> |
Add a flagged group by id or vrchat.com link, or change the severity of one already listed. |
/screening unflag_group <group> |
Remove a flagged group. |
What staff see¶
A flagged request lists the failed checks and keeps its Approve, Deny, and Deny & Block buttons. See Approving join requests.
An automatically denied request shows which rules failed and queues the denial. If VRChat rejects it, LogDog corrects the message and restores the buttons when staff could retry. A new request from the same user is screened again. A request already being handled by staff is flagged rather than automatically denied.
If LogDog cannot read what a rule needs, such as a private profile, that check can only flag the request. Auto-deny requires a failed check based on available data. Screening does not automatically approve requests.
Open groups¶
A group anyone can join has no request to screen, so LogDog screens the Group Member
Join log instead, with the same rules and the same settings. A failed check flags the
join for staff review; nothing is denied or removed, whatever severity the rule has. A
member whose profile LogDog has not fetched yet is not screened, and a check it cannot
verify is skipped rather than flagged. Only members who joined on their own are screened:
a join someone approved or added was a request, screened then. The flagged log keeps its
User History link; act with /ban, /remove or the dashboard. Groups that take join
requests are not affected. Route Group Member Join to a channel, or screening never
runs there.
Troubleshooting¶
Screening runs when a join-request log is delivered. If it is not running, check
Log Routing or /events, including the event's category and channel permissions.
For auto-deny failures, check Manage Group Invites in VRChat.
If a flagged group never matches, check that its row shows the group's name rather than Not found on VRChat, and remember that only groups people show on their profile can be seen.
If Premium expires, stored auto-deny rules and groups act as flags until Premium returns, and only the first 3 blocked keywords and the first 3 flagged groups are checked. The rest stay saved and are checked again when Premium returns.