curl -X POST https://kyc.legaltalent.ai/kyc/workflows \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Basic KYC",
"description": "Standard KYC onboarding workflow",
"entity_types": ["individual"],
"steps": [
{
"step_id": "step_1",
"order": 1,
"name": "ID Document",
"type": "document_upload",
"document_requirements": [
{
"document_type": "id",
"required": true,
"auto_extract": true
}
]
},
{
"step_id": "step_2",
"order": 2,
"name": "Selfie",
"type": "selfie",
"instructions": "Please take a clear selfie matching your ID photo"
},
{
"step_id": "step_3",
"order": 3,
"name": "Personal Information",
"type": "form_fill",
"custom_fields": [
{
"field_id": "full_name",
"name": "Full Name",
"type": "name",
"name_type": "individual",
"validate_lists": true,
"required": true
},
{
"field_id": "nationality",
"name": "Nationality",
"type": "country",
"country_type": "nationality",
"required": true
},
{
"field_id": "email",
"name": "Email",
"type": "email",
"validate_email": true,
"required": true
}
]
}
],
"validation_config": {
"run_lists": true,
"run_crypto": false,
"run_adverse_media": false,
"auto_face_match": true,
"face_match_threshold": 0.8,
"automation_rules": {
"enabled": true,
"auto_process": true,
"country_rules": [
{
"country_code": "KP",
"action": "auto_deny",
"applies_to": ["all"],
"reason": "Sanctioned country"
}
],
"face_match_threshold": 0.85,
"face_match_action_on_fail": "auto_deny",
"default_action": "manual_review"
}
}
}'