RestoreCord with the lid off

A verification is three things: a standard Discord OAuth2 grant, one pass through your server's firewall and, later, an add-member call Discord allows because the member said yes. This site opens each part up.

What the callback actually looks at

Four inputs feed the decision. Flip through them to see what each one is and where it comes from.

One lookup, many answers

The request IP is resolved once per verification. Country, continent, ASN, connection type and anonymity flags from that single answer drive firewall rules, VPN and proxy blocking and the cellular block.

  • Country, continent, ASN, IP and CIDR range rules
  • ASN blacklisting from Business
  • Owners can switch IP logging off; a badge tells members

IP lookup for rowan_02

Resolved once, read by every network check

Connection type
Residential
Country
DE
ASN
AS64500
Anonymous (VPN or proxy)
No
Firewall decision
Allow

Four scopes, and only one is fixed

identify is the only scope every verification asks for. The rest follow switches in your server settings, so the consent screen never asks for more than your rules use.

  • guilds.join is what turns a verification into a member backup
  • Fewer scopes keep prompt=none, so returning members skip consent
  • Members can revoke the app in Discord at any time
Every scope in detail

Scopes for this server

What Discord's consent screen will list

identify
Always
guilds.join
When the join scope is on
guilds
For server-membership rules
email
When emails are saved or required

Settings

Join scope

Needed for every later pull

Require email

Off, so prompt=none stays in the URL

Which internals each plan switches on

The engine is the same on every plan. What changes is which signals your firewall is allowed to act on.

FreePremiumBusinessEnterprise
RestoreCord pull cooldownNoneNoneNoneNone
Delay between pullsFixedRangeRangeRange
Proxied requests
Captcha
Alt detection (IP and visitor ID)—
VPN and proxy blocking—
ASN blacklist——
Server-membership rules——
Cellular connection block———
Minimum account age———
Webhook logsAdvancedAdvanced+

Rate limits come from two places

Discord limits your bot and RestoreCord's API limits your scripts, and each one answers differently when you push too hard.

Discord

Verification and pulls

Error 10003

Discord limited the account or the bot

Wait 60 min

Add-member calls

One member per call while pulling

Proxied

REST API v3

Your scripts and integrations

  1. Request accepted

    200

  2. Too many requests in a burst

    429 RATE_LIMITED

  3. Client waits for Retry-After

    seconds

  4. Single retry succeeds

    200

Got a number instead of a role?

Every denial on the verify page carries a code. See which stage of the callback produced it and who can fix it.

Decode the error

Questions engineers ask first

Run the pipeline on your own server

Connect a bot, verify from a spare account and watch every stage on this page happen for real.