> ## Documentation Index
> Fetch the complete documentation index at: https://docs.urtentic.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Validate Verification Process

> Validates inputs for a specific verification process type without actually submitting them.
This allows clients to pre-validate document uploads and field values before formal submission, 
identifying any errors or missing requirements early in the process.

### Use Cases
- Validating document quality before submission
- Checking for errors in verification inputs
- Testing selfie videos for lighting and quality issues
- Verifying that all required inputs are present

### Notes
- This endpoint uses the same input format as the submission endpoint
- The validation is specific to the process type specified in the URL
- Returns an empty array if validation passes
- Returns detailed error information if validation fails




## OpenAPI

````yaml /api-reference/openapi.yml post /verifications/{verificationId}/validations/{processType}
openapi: 3.0.0
info:
  title: Urtentic API
  version: '1.0'
  description: >
    # Introduction

    The Urtentic API provides comprehensive identity verification and workflow
    management capabilities. 

    It enables organizations to create customized verification workflows,
    perform identity checks, 

    and manage verification processes with features including liveness
    detection, 

    location intelligence, and document verification.


    ## Authentication

    All authenticated endpoints require two headers:

    - `Authorization: Bearer {API_KEY}` - Your API key

    - `X-CLIENT-ID: {CLIENT_ID}` - Your client ID


    API credentials can be generated from your Urtentic Dashboard under Settings
    > API Keys.


    ## Webhook Notifications

    Configure webhook URLs in your Urtentic Dashboard to receive real-time
    notifications

    about verification status changes. Webhooks include the verification ID and
    current status,

    allowing your system to react to verification completions or failures.


    ## Key Features

    - User and organization management

    - Customizable verification workflows

    - Multiple verification processes (Liveness, Location, Document, Watchlist
    Check, Email)

    - Analytics and reporting

    - Webhook notifications for verification results
  contact:
    name: Urtentic Support Team
    email: support@urtentic.com
    url: https://urtentic.com/support
  termsOfService: https://urtentic.com/terms
  license:
    name: Urtentic License
    url: https://urtentic.com/license
servers:
  - url: https://api.urtentic.com/api/v1
    description: Urtentic API
security: []
tags:
  - name: Identity
    description: >
      Management of verified identity data, including retrieval and validation
      of identity information.


      Endpoints in this category allow you to:

      - Retrieve verified identity details

      - Check identity verification status

      - Update identity information

      - Link identities across verification sessions
  - name: Processes
    description: >
      Configuration and management of individual verification process types that
      can be used in workflows.


      The Urtentic platform supports these verification processes:

      - **Document Verification**: OCR and authenticity checks for identity
      documents

      - **Liveness Detection**: Confirms a person is physically present and not
      using photos/videos

      - **Location Intelligence**: Verifies geographic location and environments

      - **Email Verification**: Validates email ownership through OTP

      - **Watchlist Check**: Screens identities against compliance databases
  - name: Verification
    description: >
      Core verification operations including starting verifications, submitting
      verification data, and retrieving results.


      Key operations include:

      - Starting new verification sessions

      - Submitting identity data for verification

      - Retrieving verification results

      - Validating inputs before submission

      - Tracking verification status
  - name: Webhook
    description: >
      Configuration and management of webhook endpoints for receiving real-time
      event notifications.


      The webhook system allows you to:

      - Receive real-time notifications about verification status changes

      - Configure multiple webhook endpoints for different environments

      - Specify which events trigger notifications

      - Verify webhook signature to ensure authenticity

      - Track webhook delivery and retry failed deliveries
  - name: Workflow
    description: >
      Creation and management of verification workflows, combining multiple
      verification processes into customized sequences.


      Workflows allow you to:

      - Define multi-step verification sequences

      - Configure country-specific document requirements

      - Set custom verification rules and thresholds

      - Create specialized flows for different use cases

      - Manage verification process order and dependencies
paths:
  /verifications/{verificationId}/validations/{processType}:
    parameters:
      - schema:
          type: string
          format: uuid
        name: verificationId
        in: path
        required: true
        description: |
          Unique identifier of the verification.
          This is the verificationId returned when starting a verification.
        example: 85c94e71-6e3f-4a19-b15c-781d8a876542
      - name: processType
        in: path
        required: true
        schema:
          type: string
          enum:
            - LIVENESS
            - DOCUMENT_VERIFICATION
            - LOCATION_INTELLIGENCE
            - EMAIL_CHECK
        description: |
          Type of verification process to validate.
          - LIVENESS: Validates selfie video for liveness detection
          - DOCUMENT_VERIFICATION: Validates document images and data
          - LOCATION_INTELLIGENCE: Validates location and environment data
          - EMAIL_CHECK: Validates email verification inputs
        example: DOCUMENT_VERIFICATION
    post:
      tags:
        - Verification
      summary: Validate Verification Process
      description: >
        Validates inputs for a specific verification process type without
        actually submitting them.

        This allows clients to pre-validate document uploads and field values
        before formal submission, 

        identifying any errors or missing requirements early in the process.


        ### Use Cases

        - Validating document quality before submission

        - Checking for errors in verification inputs

        - Testing selfie videos for lighting and quality issues

        - Verifying that all required inputs are present


        ### Notes

        - This endpoint uses the same input format as the submission endpoint

        - The validation is specific to the process type specified in the URL

        - Returns an empty array if validation passes

        - Returns detailed error information if validation fails
      operationId: post-verifications-verificationId-validations-processType
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                documents:
                  type: array
                  items:
                    type: string
                    format: binary
                  description: >
                    Document files to validate. These should match the file
                    types

                    expected for the specified process type.
                inputs:
                  type: array
                  items:
                    $ref: '#/components/schemas/FieldValue'
                  description: |
                    Field values to validate. These should include all required
                    fields for the specified process type.
            examples:
              document_validation:
                value:
                  documents:
                    - (binary file data)
                  inputs:
                    - fieldName: DOCUMENT_TYPE
                      value: PASSPORT
                    - fieldName: FRONT_IMAGE
                      fileName: passport_front.jpg
                      value: passport_front.jpg
      responses:
        '200':
          description: Empty array when no validation errors are found
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ValidatorError'
              examples:
                no_errors:
                  value: []
        '400':
          description: List of validation errors
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ValidatorError'
              examples:
                validation_errors:
                  value:
                    - fieldName: SELFIE_VIDEO
                      message: Poor lighting detected in selfie video
                      errorCode: POOR_LIGHTING
                    - fieldName: FRONT_IMAGE
                      message: Document is blurry or unclear
                      errorCode: DOCUMENT_QUALITY
        '404':
          description: Verification not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                  message:
                    type: string
              examples:
                verification_not_found:
                  value:
                    error: VERIFICATION_NOT_FOUND
                    message: The specified verification ID was not found
      security:
        - apiKeyAuth: []
components:
  schemas:
    FieldValue:
      type: object
      description: >
        Configuration value for a verification field. These configurations
        control 

        validation rules, appearance, and behavior for different verification
        processes.
      properties:
        id:
          type: integer
          format: int64
          description: Unique identifier for the field value
          example: 12345
        createdAt:
          type: string
          format: date-time
          description: When the field value was created
          example: '2023-06-15T14:30:00Z'
        updatedAt:
          type: string
          format: date-time
          description: When the field value was last updated
          example: '2023-06-15T14:30:00Z'
        deletedAt:
          type: string
          format: date-time
          description: When the field value was deleted (if applicable)
          example: '2023-06-15T14:30:00Z'
        value:
          type: string
          description: Value of the field
          example: 'true'
        fileName:
          type: string
          description: Name of associated file (if applicable)
          example: passport_front.jpg
        fieldName:
          type: string
          enum:
            - SELFIE_VIDEO
            - DEVICE_DATA
            - BIOMETRICS
            - LOCATION_RESTRICTION
            - RESTRICT_VPN
            - RESTRICT_IP_GEOLOCATION
            - HIGH_ACCURACY_CHECK
            - GALLERY_RESTRICTION
            - RESTRICT_SCREENSHOT
            - RESTRICT_AGE
            - DUPLICATE_DETECTION
            - FACEMATCH_THRESHOLD
            - DOCUMENT_TYPES
            - FRONT_IMAGE
            - DOCUMENT_TYPE
            - DOCUMENT_PHOTO
            - BACK_IMAGE
            - EMAIL_ADDRESS
            - OTP_CODE
            - EMAIL_COMPANY_NAME
            - EMAIL_RISK_THRESHOLD
          description: |
            Name of the configuration field. Available fields:

            **Liveness Detection**
            - SELFIE_VIDEO: Video capture for liveness detection
            - BIOMETRICS: Biometric data extraction settings

            **Environment Checks**
            - DEVICE_DATA: Device information collection
            - LOCATION_RESTRICTION: Geographic restrictions
            - RESTRICT_VPN: Whether to block VPN usage
            - RESTRICT_IP_GEOLOCATION: IP-based geolocation rules
            - HIGH_ACCURACY_CHECK: Enhanced accuracy for location checks

            **Security Features**
            - GALLERY_RESTRICTION: Prevent using photos from gallery
            - RESTRICT_SCREENSHOT: Block screenshots during verification
            - RESTRICT_AGE: Age verification thresholds
            - DUPLICATE_DETECTION: Settings for detecting duplicate submissions
            - FACEMATCH_THRESHOLD: Minimum confidence score for face matching

            **Document Verification**
            - DOCUMENT_TYPES: Allowed document types
            - FRONT_IMAGE: Front image of document
            - DOCUMENT_TYPE: Type of identification document
            - DOCUMENT_PHOTO: Photo extracted from document
            - BACK_IMAGE: Back image of document

            **Email Verification**
            - EMAIL_ADDRESS: Email to verify
            - OTP_CODE: One-time password code
            - EMAIL_COMPANY_NAME: Company name for email communications
            - EMAIL_RISK_THRESHOLD: Risk threshold for email verification
          example: SELFIE_VIDEO
        type:
          type: string
          description: Type of the field value (e.g., BOOLEAN, STRING, NUMBER)
          example: BOOLEAN
        country:
          type: string
          maxLength: 3
          description: ISO 3166-1 alpha-3 country code (if applicable)
          example: USA
        page:
          type: string
          enum:
            - FRONT
            - BACK
            - NONE
          default: NONE
          description: |
            Page association for the field:
            - FRONT: Front page/side of document
            - BACK: Back page/side of document
            - NONE: Not page-specific
          example: FRONT
        data:
          type: array
          description: Additional field data options
          items:
            $ref: '#/components/schemas/FieldData'
          example:
            - value: 'true'
              label: Enable Restriction
              description: Prevent using the device gallery during verification
    ValidatorError:
      type: object
      description: >
        Validation error details. These errors are returned when input
        validation

        fails during verification processes.
      properties:
        fieldName:
          type: string
          description: Name of the field with validation error
          example: SELFIE_VIDEO
        message:
          type: string
          description: Error message describing the validation failure
          example: Poor lighting detected in selfie video
        errorCode:
          type: string
          description: |
            Error code for programmatic handling. Common error codes:

            **General Errors**
            - MISSING_FIELD: Required field is missing
            - INVALID_FORMAT: Field has incorrect format

            **Document Errors**
            - DOCUMENT_EXPIRED: Document is expired
            - DOCUMENT_QUALITY: Image quality is insufficient
            - DOCUMENT_MISMATCH: Document type doesn't match selected type
            - DOCUMENT_TAMPERED: Signs of document tampering detected

            **Liveness Errors**
            - POOR_LIGHTING: Inadequate lighting for liveness verification
            - MULTIPLE_FACES: Multiple faces detected in selfie
            - FACE_MISMATCH: Face doesn't match document photo
            - REPLAY_ATTACK: Potential replay attack detected

            **Location Errors**
            - VPN_DETECTED: VPN or proxy detected
            - LOCATION_RESTRICTED: User in restricted location
            - LOCATION_MISMATCH: Location doesn't match expected location

            **Email Errors**
            - INVALID_EMAIL: Email address format is invalid
            - EMAIL_RISK_HIGH: Email associated with high risk score
            - OTP_INVALID: One-time password is incorrect
          example: POOR_LIGHTING
      example:
        fieldName: SELFIE_VIDEO
        message: Poor lighting detected in selfie video
        errorCode: POOR_LIGHTING
    FieldData:
      type: object
      description: |
        Data item for field configuration. These are used to provide options
        for dropdown fields, radio buttons, and other input types.
      required:
        - value
        - label
        - description
      properties:
        value:
          type: string
          description: Value of the data item
          example: PASSPORT
        label:
          type: string
          description: Human-readable label
          example: International Passport
        description:
          type: string
          description: Detailed description of the data item
          example: Standard international travel document with photo identification

````