Skip to main content

Workspace

A workspace is one integration. It fixes:
  • The check, called Verification in the console: Identity (KYC), or Age verification with one of two methods: ID document (minimum age 16 to 25) or Facial age estimation (18+). In the API: flow_type kyc or age, and on age workspaces age_mode document_verification or estimation with age_threshold. See the home page.
  • The mode: test or live, chosen at creation and never changed.
  • The keys: a public key that identifies the workspace, and up to five secret keys that sign requests. See Workspaces and keys.
  • Settings: the webhook URL, the default redirect URL, whether expired documents are accepted and whether one face may verify under several of your users.
Create one workspace per product or environment. A test and a live workspace are two separate workspaces with separate keys.

Verification

A verification is one person going through the check once; the widget and the SDKs call it a session. Your backend creates it, gets its id and a url, and the person completes it at that url. It moves through statuses until it reaches a final one: The full state diagram is on Verification statuses.

Attempt

Inside one verification, each try at the capture is an attempt. When the person is asked to retake an image (resubmission_requested), a new attempt starts in the same verification, with the same url. When a facial age estimation needs a document, the document is added to the same attempt. The number of attempts is limited. When they run out the verification is declined, and its reason is the last attempt’s reason, not a separate code: treat declined as final whatever the code. Results you read back name the attempt they come from, as attempt_id or meta.attempt_id. You rarely need it: the verification’s status and reason always describe the attempt that decided it.

Your identifiers

external_id also scopes duplicate detection: the same face under a different external_id is a possible duplicate account.

Test and live

Build against a test workspace, then go live by creating a live workspace and swapping its keys into your configuration.