> ## Documentation Index
> Fetch the complete documentation index at: https://crossmint-devin-1787949784-wallet-docs-two-concept-model.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Trigger Identity Verification

> Trigger identity verification for a user.

**API scope required**: `users.create`



## OpenAPI

````yaml put /2025-06-09/users/{userLocator}/identity-verification
openapi: 3.0.0
info:
  contact:
    email: support@crossmint.com
    name: Crossmint Support
    url: https://www.crossmint.com
  description: Crossmint Users API
  title: Crossmint Users API
  version: 1.0.0
servers:
  - description: Staging environment (testnets)
    url: https://staging.crossmint.com/api
  - description: Production environment (mainnets)
    url: https://www.crossmint.com/api
security: []
tags: []
paths:
  /2025-06-09/users/{userLocator}/identity-verification:
    put:
      tags:
        - Users
      summary: Trigger Identity Verification
      description: |-
        Trigger identity verification for a user.

        **API scope required**: `users.create`
      operationId: UsersController-triggerIdentityVerification-2
      parameters:
        - description: API key required for authentication
          in: header
          name: X-API-KEY
          required: true
          schema:
            type: string
        - description: |-
            A user locator can be of the format:
            - `email:<email>`
            - `userId:<userId>`
            - `phoneNumber:<phoneNumber>`
            - `twitter:<handle>`
            - `x:<handle>`
          example: email:user@example.com
          in: path
          name: userLocator
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IdentityVerificationResponseDto'
          description: Verification triggered
components:
  schemas:
    IdentityVerificationResponseDto:
      properties:
        eligibility:
          description: Array of eligibility status for different verification types
          example:
            missingData:
              - user-details
              - kyc-data
            missingDocuments:
              - id
              - proof-of-address
            status: requires-data
            type: onramp
          items:
            description: Eligibility information for a specific verification type
            example:
              missingData:
                - user-details
                - kyc-data
              missingDocuments:
                - id
                - proof-of-address
              status: requires-data
              type: onramp
            properties:
              failureReasons:
                description: >-
                  Reasons the verification was rejected. Only present on
                  rejected entries when failure details are available.
                example:
                  code: id-document-expired
                  message: >-
                    The ID document provided is expired. Please submit a
                    currently valid ID.
                items:
                  description: Reason a verification was rejected
                  example:
                    code: id-document-expired
                    message: >-
                      The ID document provided is expired. Please submit a
                      currently valid ID.
                  properties:
                    code:
                      description: >-
                        Machine-readable reason code identifying why the
                        verification failed. New codes may be added over time.
                      example: id-document-expired
                      type: string
                    message:
                      description: >-
                        Human-readable explanation of the failure that can be
                        shown to the user.
                      example: >-
                        The ID document provided is expired. Please submit a
                        currently valid ID.
                      type: string
                  required:
                    - code
                    - message
                  type: object
                type: array
              missingData:
                description: >-
                  List of missing data types required to proceed with
                  verification
                example: user-details
                items:
                  description: Type of missing data required for verification
                  enum:
                    - due-diligence
                    - kyc-data
                    - user-details
                    - verification-history
                  example: user-details
                  type: string
                type: array
              missingDocuments:
                description: >-
                  List of missing documents required to proceed with
                  verification
                example: id
                items:
                  description: >-
                    Type of missing document required for verification. Note:
                    selfie-left and selfie-right are optional but highly
                    recommended to increase the chances of successful KYC
                    verification.
                  enum:
                    - id
                    - id-back
                    - proof-of-address
                    - selfie-front
                    - selfie-left
                    - selfie-right
                    - source-of-wealth
                  example: id
                  type: string
                type: array
              status:
                description: Current verification status
                enum:
                  - not-started
                  - pending-manual-review
                  - pending-privacy-policy
                  - pending-review
                  - rejected
                  - requires-data
                  - verified
                example: requires-data
                type: string
              type:
                description: Type of verification flow
                enum:
                  - offramp
                  - offramp-light
                  - onramp
                  - onramp-light
                  - regulated-transfer
                example: onramp
                type: string
            required:
              - status
              - type
            type: object
          type: array
      required:
        - eligibility
      type: object

````