Core concepts
On this page
A few objects, and you have the whole model.
Organization
Your team’s shared space. It owns everything else: workspaces, flows, API keys, webhooks, members, and billing. Every account gets its own default organization on first sign-in, and a person belongs to one organization at a time: accepting an invite moves you into the inviting org, and leaving one returns you to your default org. Each member has a role, owner, admin, or member, which decides who can manage keys, webhooks, and billing. See People.
Workspace
The kind of verification you run: Pre-KYC, Age Verification, Proof of Human, Sovereign, or Custom Config. The workspace decides what the user proves and which rules you can set. See the workspaces overview.
Flow
A deployed, versioned configuration of one workspace (the dashboard calls it a config; the SDK calls it a flow and identifies it by flowId). It pins the workspace, its rules, and its verification mode (Backend by default, or On-chain). Once deployed it’s immutable, to change it you archive it and create a new one. You pass its flowId to sessions.create(...). See Anatomy of a flow.
Session
One verification attempt: one user, one flow. Your backend creates it with sessions.create(...), hands the returned verificationUrl to the user, and the session lives until they verify or it expires.
On any terminal status we record it in your activity log and fire the verification.completed webhook. Each session has a credit cost, fixed when it’s created and charged when the verification completes (test sessions are never billed).
API key
A bearer secret the SDK uses, scoped to one org and one environment:
sk_test_…: test flows, mock passports, never billed.sk_live_…: production, real proofs, real credits.
Test and live are fully isolated; each key is bound to one environment (the prefix reflects which). You generate keys under Developer → API keys. See API keys.
Webhook endpoint
An HTTPS URL you register under Developer → Webhooks to receive signed events like verification.completed. We deliver with automatic retries; verify the signature with the SDK. See the event catalog.
Related
- How verification works: the zero-knowledge model underneath.
- Anatomy of a flow: rules, documents, and versions in detail.
- Billing: credits and metering.
Thanks — what went wrong?
Thanks for your feedback!