Verification
The checkpoint flow, the two trigger modes, and what members experience.
The flow
- A member joins; Vidar optionally applies your hold role.
- Vidar sends a one-time verification link (by DM, or via a channel button).
- The member opens the checkpoint and authorizes with Discord (proving the account is theirs).
- Vidar gathers network and device signals, scores the account, and records the decision.
- On success the verified role is granted; otherwise the case is held or blocked.
Trigger modes
- DM on join — the link is sent automatically as a direct message. Best for most servers. If a member has DMs closed, Vidar falls back to your verification channel.
- Button in a channel — members click a persistent “Verify” button in a channel you choose. Useful when DMs are commonly disabled.
Link lifetime
Verification links expire (default 5 minutes) and are single-purpose. A member can always request a fresh link by running /verify.
Why the web step is required
A Discord bot cannot see a member's IP address. The consented checkpoint — authorized with Discord OAuth — is the only privacy-respecting way to gather network and device signals, and it confirms the account genuinely belongs to the person completing it. Read more on the privacy page.