> ## Documentation Index
> Fetch the complete documentation index at: https://developer.sandbox.co.in/llms.txt
> Use this file to discover all available pages before exploring further.

# Verify User Account

> Check whether a user account exists on DigiLocker using their mobile number or Aadhaar number.

<Card title="Run in Postman" icon="https://mintcdn.com/sandboxfinancialtechnologiesprivatelimited/gviqebbpT5NUt_6i/static/svg/Postman.svg?fit=max&auto=format&n=gviqebbpT5NUt_6i&q=85&s=da47f2b7e10d87befec951aed9468de3" horizontal arrow="true" href="https://www.postman.com/in-co-sandbox/workspace/sandbox-api/request/29708799-b700987e-fe24-475d-8d16-63a89e0e9d1e?action=share&source=copy-link&creator=29708799&ctx=documentation" width="2030" height="2031" data-path="static/svg/Postman.svg" />

<Info>
  At least one of the fields `aadhaar_number` or `mobile` must be provided in the request.
</Info>


## OpenAPI

````yaml api-reference/kyc/openapi.json POST /kyc/digilocker/user/verify
openapi: 3.1.0
info:
  title: in-co-sandbox-kyc
  description: ''
  version: 1.0.0
servers:
  - url: https://test-api.sandbox.co.in
    description: test
  - url: https://api.sandbox.co.in
    description: prod
security: []
tags:
  - name: kyc
  - name: digilocker-sdk
  - name: digilocker
  - name: aadhaar
  - name: bank
  - name: pan
  - name: mca
  - name: entitylocker
  - name: entitylocker-sdk
paths:
  /kyc/digilocker/user/verify:
    post:
      tags:
        - kyc
        - digilocker
      summary: Verify User Account
      description: Verifies if a user with the provided credentials exists on digilocker.
      operationId: verifyUserAccount
      parameters:
        - name: Authorization
          in: header
          description: >-
            JWT access token. For token-generation steps, refer to the
            [Quickstart
            Guide](https://developer.sandbox.co.in/guides/get-started/quickstart).
          required: true
          example: '{{access_token}}'
          schema:
            type: string
        - name: x-api-key
          in: header
          description: API key used to identify and authenticate the client.
          required: true
          example: '{{api_key}}'
          schema:
            type: string
        - name: x-api-version
          in: header
          description: Specifies the API version for the request.
          required: false
          example: 1.0.0
          schema:
            type: string
        - name: Content-Type
          in: header
          description: Media type of the request body.
          required: false
          example: application/json
          schema:
            type: string
            enum:
              - application/json
      requestBody:
        content:
          application/json:
            schema:
              type: object
              description: >-
                Request payload for Digilocker user verification. At least one
                of the fields 'aadhaar_number' or 'mobile' must be provided.
              properties:
                '@entity':
                  type: string
                  enum:
                    - in.co.sandbox.kyc.digilocker.user.verification.request
                  description: >-
                    Entity identifier that specifies the type of request being
                    made.
                aadhaar_number:
                  type: string
                  pattern: ^[0-9]{12}$
                  description: 12-digit Aadhaar number without spaces or separators.
                mobile:
                  type: string
                  pattern: ^[0-9]{10}$
                  description: 10-digit Indian mobile number without country code.
              required:
                - '@entity'
              anyOf:
                - required:
                    - aadhaar_number
                - required:
                    - mobile
            examples:
              User exists - validated with mobile:
                value:
                  '@entity': in.co.sandbox.kyc.digilocker.user.verification.request
                  mobile: '9687205427'
                summary: User exists - validated with mobile
              User does not exist - validated with mobile:
                value:
                  '@entity': in.co.sandbox.kyc.digilocker.user.verification.request
                  mobile: '9999999999'
                summary: User does not exist - validated with mobile
              User exists - validated with Aadhaar number:
                value:
                  '@entity': in.co.sandbox.kyc.digilocker.user.verification.request
                  aadhaar_number: '1234567890123'
                summary: User exists - validated with Aadhaar number
              User does not exist - validated with Aadhaar number:
                value:
                  '@entity': in.co.sandbox.kyc.digilocker.user.verification.request
                  aadhaar_number: '987654321098'
                summary: User does not exist - validated with Aadhaar number
        required: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    description: HTTP status code.
                  timestamp:
                    type: integer
                    description: >-
                      Unix timestamp (in milliseconds) indicating when the
                      server generated the response.
                  data:
                    type: object
                    description: >-
                      Response payload containing the requested data or error
                      details.
                    properties:
                      '@entity':
                        type: string
                        enum:
                          - >-
                            in.co.sandbox.kyc.digilocker.user.verification.response
                        description: >-
                          Entity identifier that specifies the type of response
                          being returned.
                      user_exists:
                        type: boolean
                        description: >-
                          Indicates whether a Digilocker account exists for the
                          provided Aadhaar number or mobile number.
                    required:
                      - '@entity'
                      - user_exists
                  transaction_id:
                    type: string
                    description: Unique identifier for tracking the request across systems.
                required:
                  - code
                  - timestamp
                  - data
                  - transaction_id
              examples:
                User exists - validated with mobile:
                  summary: User exists - validated with mobile
                  value:
                    code: 200
                    timestamp: 1751975600361
                    data:
                      '@entity': in.co.sandbox.kyc.digilocker.user.verification.response
                      user_exists: true
                    transaction_id: a11c4e00-fae1-4092-a55f-b4f0be92ffeb
                User does not exist - validated with mobile:
                  summary: User does not exist - validated with mobile
                  value:
                    code: 200
                    timestamp: 1751975600361
                    data:
                      '@entity': in.co.sandbox.kyc.digilocker.user.verification.response
                      user_exists: false
                    transaction_id: a11c4e00-fae1-4092-a55f-b4f0be92ffeb
                User exists - validated with Aadhaar number:
                  summary: User exists - validated with Aadhaar number
                  value:
                    code: 200
                    timestamp: 1751975600361
                    data:
                      '@entity': in.co.sandbox.kyc.digilocker.user.verification.response
                      user_exists: true
                    transaction_id: a11c4e00-fae1-4092-a55f-b4f0be92ffeb
                User does not exist - validated with Aadhaar number:
                  summary: User does not exist - validated with Aadhaar number
                  value:
                    code: 200
                    timestamp: 1751975600361
                    data:
                      '@entity': in.co.sandbox.kyc.digilocker.user.verification.response
                      user_exists: false
                    transaction_id: a11c4e00-fae1-4092-a55f-b4f0be92ffeb
          headers: {}
        '429':
          description: >-
            There were too many requests to DigiLocker. Wait, then send the
            request again.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    const: 429
                    description: The HTTP status code.
                  timestamp:
                    type: integer
                    description: >-
                      The time of the response. The unit is milliseconds from
                      the Unix epoch.
                  message:
                    type: string
                    description: The error message.
                  transaction_id:
                    type: string
                    description: The unique identifier of the request.
                required:
                  - code
                  - timestamp
                  - message
                  - transaction_id
              examples:
                Too Many Requests:
                  summary: Too Many Requests
                  value:
                    code: 429
                    timestamp: 1782806266274
                    message: Too Many Requests
                    transaction_id: b1e2c3d4-3333-4a5b-8c6d-7e8f9a0b1c2d
          headers: {}
        '500':
          description: The request failed.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    const: 500
                    description: The HTTP status code.
                  timestamp:
                    type: integer
                    description: >-
                      The time of the response. The unit is milliseconds from
                      the Unix epoch.
                  message:
                    type: string
                    description: The error message.
                  transaction_id:
                    type: string
                    description: The unique identifier of the request.
                required:
                  - code
                  - timestamp
                  - message
                  - transaction_id
              examples:
                Failed to verify user:
                  summary: Failed to verify user
                  value:
                    code: 500
                    timestamp: 1782806266274
                    message: Failed to verify user
                    transaction_id: b1e2c3d4-4444-4a5b-8c6d-7e8f9a0b1c2d
                Failed to verify user in VerifyUserManager Source Unavailable:
                  summary: >-
                    Failed to verify user in VerifyUserManager: Source
                    Unavailable
                  value:
                    code: 500
                    timestamp: 1782806266274
                    message: >-
                      Failed to verify user in VerifyUserManager: Source
                      Unavailable
                    transaction_id: b1e2c3d4-4444-4a5b-8c6d-7e8f9a0b1c2d
                Internal Server Error:
                  summary: Internal Server Error
                  value:
                    code: 500
                    timestamp: 1782806266274
                    message: Internal Server Error
                    transaction_id: b1e2c3d4-4444-4a5b-8c6d-7e8f9a0b1c2d
          headers: {}
        '503':
          description: DigiLocker is not available. Send the request again later.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    const: 503
                    description: The HTTP status code.
                  timestamp:
                    type: integer
                    description: >-
                      The time of the response. The unit is milliseconds from
                      the Unix epoch.
                  message:
                    type: string
                    description: The error message.
                  transaction_id:
                    type: string
                    description: The unique identifier of the request.
                required:
                  - code
                  - timestamp
                  - message
                  - transaction_id
              examples:
                Source Unavailable:
                  summary: Source Unavailable
                  value:
                    code: 503
                    timestamp: 1782806266274
                    message: Source Unavailable
                    transaction_id: b1e2c3d4-5555-4a5b-8c6d-7e8f9a0b1c2d
          headers: {}
      deprecated: false
      security: []

````