For a conceptual overview of how nodes work and connect, see Node Model. For common flow patterns, see Verification Patterns.
Base node structure
All nodes share these fields:Node type enum
START
Entry point for every flow. Exactly one START node is required per flow. Additional fields:
Example:
END
Exit point for a flow. At least one END node is required. The END node has no outcomes — reaching it marks the session as complete. Additional fields: None. Example:CONVERSATION
AI-powered conversational interaction. The avatar speaks the prompt and waits for the user to respond. FaceSign’s AI evaluates the response against the defined conditions and selects the matching outcome. Additional fields:
Outcome structure (FSConditionalOutcome):
Conditions are evaluated in order. The first matching condition wins. Write conditions so they are mutually exclusive when possible.
LIVENESS_DETECTION
Anti-spoofing check to confirm a real person is present. Detects photos, videos, and deepfakes. Additional fields:
Outcomes:
Example:
FACE_SCAN
Captures the user’s face and performs 1:1 matching against a reference image (e.g., from a scanned document or a provided photo). Additional fields:
Outcomes:
Example:
DOCUMENT_SCAN
Captures and verifies an identity document. Supports passports, driver’s licenses, and national ID cards. Additional fields:
Outcomes:
Example:
RECOGNITION
1:N face recognition. Checks whether the user’s face matches any existing entry in your FaceSign database. Additional fields:
Outcomes:
Example:
ENTER_EMAIL
Presents a form for the user to enter their email address. Additional fields:
Outcomes:
Example:
TWO_FACTOR_EMAIL
Sends a one-time passcode (OTP) via email and verifies the user enters the correct code. Additional fields:
Outcomes:
Example:
TWO_FACTOR_SMS
Sends a one-time passcode (OTP) via SMS and verifies the user enters the correct code. Additional fields:
Outcomes:
Example:
DATA_VALIDATION
Performs conditional routing based on collected session data. Evaluates a validation rule against a data field and routes through transitions. Additional fields:
Validation object:
Transition structure:
Transitions are evaluated in order. The first matching condition determines the next node. Make sure your conditions cover all cases.
FACE_COMPARE
Compares two face images captured during the session to determine whether they belong to the same person. Additional fields:
Outcomes:
Example:
PERMISSIONS
Requests camera and microphone access from the user’s browser. Typically placed early in the flow before any node that requires media access. Additional fields:
Outcomes:
Example:
Flow validation rules
FaceSign validates your flow at session creation time. Flows that violate any of these rules are rejected with an error:Next steps
Node Model
Conceptual overview of how nodes work
Verification Patterns
Production-ready flow patterns for common use cases