Confirmed Age, Granted Entry
Age gates without becoming an identity company.
CAGE gives platforms a premium, privacy-preserving way to confirm age through OAuth. Your users verify once. Your product receives a signed age claim. You never touch the ID.
Partner Infrastructure
A familiar OAuth flow with a much smaller data footprint.
CAGE sits between your product and the sensitive verification step. The experience feels like a modern identity provider, but the data model is intentionally minimal.
01
Redirect to CAGE
Use the same authorization-code flow your team already understands. No custom identity ceremony.
02
CAGE verifies once
Veriff handles the document check. CAGE stores only the age result and expiration window.
03
Receive a signed claim
Your app gets a signed token with age_verified, age_floor, and a partner-scoped anonymous subject.
{
"iss": "https://api.cageid.app",
"sub": "partner_scoped_4f2a...",
"aud": "YOUR_CLIENT_ID",
"age_verified": true,
"age_floor": 21,
"exp": 1772246400
}No name. No birthday. No document. Just the verified age claim your product needs.
Privacy Model
Designed so every party learns less.
CAGE keeps the verification result useful without turning it into a cross-site tracking vector.
Documents
Never stored by CAGE
Identity
Never shared with partners
Partner IDs
Unlinkable across sites
Why Partners Choose CAGE
Premium age verification that does not ask your team to become a custodian of IDs.
Lower liability
Move government IDs and biometric handling out of your stack while still enforcing age gates.
Developer-native
Standard endpoints, JWKS verification, auth-code exchange, and docs that map to common OAuth patterns.
Built for repeat visits
Once verified, users can return through CAGE without repeating the document-upload experience.
Launch Partners
Add age verification in an afternoon.
We are onboarding a small number of platforms that need age gates without document storage, custom verification flows, or recurring friction for verified users.