Manage KYC onboarding workflows that define the steps and validation requirements for end-user onboarding processes. Workflows allow you to create customizable onboarding experiences with document upload, form fields, selfie verification, liveness detection, and automated validation checks with automation rules.Documentation Index
Fetch the complete documentation index at: https://docs.compliance.legaltalent.ai/llms.txt
Use this file to discover all available pages before exploring further.
| Method | Endpoint | Description |
|---|---|---|
POST | /kyc/workflows | Create a new workflow |
POST | /kyc/workflows/from-template/{type} | Create workflow from template |
GET | /kyc/workflows | List all workflows |
GET | /kyc/workflows/{workflow_id} | Get workflow details |
GET | /kyc/workflows/{workflow_id}/versions | List workflow versions |
PUT | /kyc/workflows/{workflow_id} | Update workflow (creates new version) |
DELETE | /kyc/workflows/{workflow_id} | Soft delete workflow |
kyc:create permission for creating workflows and kyc:read permission for retrieving workflows. Include your Bearer token in the Authorization header.
| Template | Description | Entity Type |
|---|---|---|
basic-kyc | Standard individual KYC with ID, address, and personal info | Individual |
company-kyc | Company KYC with incorporation docs, shareholders, directors | Company |
merchant-onboarding | Merchant onboarding with business license and sub-merchants | Both |
pep-enhanced | Enhanced due diligence for high-risk/PEP individuals | Individual |
| Property | Type | Required | Description |
|---|---|---|---|
name | string | ✓ | Workflow name |
description | string | Workflow description | |
template_type | string | Template: basic-kyc, company-kyc, merchant-onboarding, pep-enhanced, or custom (default) | |
entity_types | array | Target entity types: individual, company, or both | |
industry | string | Target industry (e.g., “Financial Services”, “E-commerce”) | |
tags | array | Tags for categorization | |
custom_tags | object | Key-value string pairs ({"key": "value"}) included in all session webhook payloads. Max 20 entries, 50 chars per key, 200 chars per value. | |
steps | array | ✓ | Array of workflow step objects. See Step Types. |
validation_config | object | Validation configuration (see below) |
| Property | Type | Description |
|---|---|---|
run_lists | boolean | Run watchlist checks (OFAC, UN, etc.). Default: true |
run_crypto | boolean | Run crypto wallet checks. Default: false |
run_adverse_media | boolean | Run adverse media checks. Default: false |
auto_face_match | boolean | Automatically run face matching between ID and selfie. Default: false |
face_match_threshold | number | Minimum confidence threshold for face match (0.0-1.0). Default: 0.8 |
cross_validate_documents | boolean | Validate consistency between uploaded documents. Default: true |
automation_rules | object | Advanced automation rules. See Automation Rules. |
| Parameter | Type | Description |
|---|---|---|
version | integer | Specific version to retrieve (defaults to latest) |
| Code | Description |
|---|---|
| 200 | Success |
| 201 | Created - Workflow created successfully |
| 400 | Bad Request - Invalid parameters |
| 401 | Unauthorized - Missing or invalid token |
| 403 | Forbidden - Insufficient permissions |
| 404 | Not Found - Workflow or template not found |
| 500 | Internal Server Error |
liveness step type for better fraud preventionauto_face_match when collecting both ID and selfie/livenesscustom_tags to attach metadata (e.g., department, region, campaign) that will be forwarded in all session webhook payloads