Skip to main content

Authentication

All management API endpoints use your application API key. No org/app UUIDs are needed in URLs — the application is identified from your key.
Don’t have an API key yet? Register programmatically in 2 API calls.

Workflows

Workflows define what verification steps your users go through (ID scan, liveness, face match, AML screening, etc.). Each workflow is a reusable configuration you attach to sessions.
GET
List all workflows for your application. Returns each workflow’s features, thresholds, and whether it’s the default.
POST
Create a new workflow. Define which verification features to enable, set thresholds, configure accepted document types, and more.
GET
Get full details of a specific workflow, including all feature configurations and thresholds.
PATCH
Update a workflow configuration. You can modify any feature settings, thresholds, or accepted documents.
DELETE
Delete a workflow. Sessions already using this workflow are not affected.
We strongly recommend using the Business Console to create and configure workflows. The visual workflow builder provides templates, drag-and-drop feature configuration, document settings, threshold tuning, and preview — all without writing code. Use the API only for automation or programmatic management of workflows.

Quick Example: Create a Workflow

The workflow_type determines the base feature set. Individual features are then toggled with is_*_enabled flags.
Available workflow_type values: kyc, kyb, adaptive_age_verification, biometric_authentication, address_verification, questionnaire_verification, email_verification, phone_verification. For kyc workflows, ID verification is automatically included — you don’t need a separate flag for it. Use the is_*_enabled flags to add or remove optional features like face match, liveness, AML, NFC, phone, email, proof of address, Device & IP Analysis, and more. Then use the workflow when creating sessions:

Questionnaires

Custom forms you can add to verification workflows to collect additional information from users.
GET
List all questionnaires.
POST
Create a new questionnaire with custom questions, branching logic, and translations.
GET
Get questionnaire details including all questions and form structure.
PATCH
Update a questionnaire.
DELETE
Delete a questionnaire.

Users

Manage verified individuals (users) in your application. Each user is identified by a vendor_data string you provide when creating sessions.
GET
List all users for your application, including their verification status and session history.
GET
Get user details by your vendor_data identifier.
PATCH
Update user metadata.
POST
Batch delete users. Body: {"vendor_data_list": ["user-1", "user-2"]} or {"delete_all": true}.

Session Operations

POST
Batch delete sessions. Requires delete:sessions. Body: {"session_numbers": [1, 2, 3]} or {"delete_all": true}.
GET
List reviews and activity log for a session.
POST
Add a review note or status change to a session.

Billing

GET
Get current credit balance and auto-refill settings.
POST
Create a Stripe checkout session to top up credits. Minimum $50.

Lists (Blocklists, Allowlists & Custom)

Manage typed lists for blocklisting, allowlisting, and custom workflow conditions. See the full Lists API documentation.
GET
List all lists for the application (blocklists, allowlists, custom).
POST
Add an entry to a list. Supports reference_session_id to auto-extract data from a session, and reference_object_uuid for traceability to transactions/users/businesses.
DELETE
Remove an entry from a list.
POST
Upload a face image to a face blocklist (base64).

Webhook Configuration

GET
Get current webhook configuration including URL, version, and the secret key for verifying webhook signatures.
PATCH
Update webhook URL, version, or rotate the secret key. Set rotate_secret_key: true to generate a new webhook secret (old one immediately invalidated).

Complete API Endpoint Summary