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

# Get client identity information for a card account

> Retrieve the identity information of a cardholder associated with a specific card account.



## OpenAPI

````yaml /issuing/api-reference/openapi.yaml get /cardaccounts/client-identity
openapi: 3.1.0
info:
  title: API Reference
  version: '1.0'
servers:
  - url: https://access.utgl.io/v1
  - url: https://sandbox.access.utgl.io/v1
security:
  - Basic: []
  - Bearer: []
tags:
  - name: Accounts
  - name: Transactions
  - name: Card Accounts
  - name: Card Products
  - name: Cards
  - name: Digital Custody
  - name: Fee
  - name: Payout
paths:
  /cardaccounts/client-identity:
    get:
      tags:
        - Card Accounts
      summary: Get client identity information for a card account
      description: >-
        Retrieve the identity information of a cardholder associated with a
        specific card account.
      parameters:
        - in: query
          name: cardAccountId
          schema:
            type: string
            format: uuid
          required: true
          description: Unique identifier for the card account.
          example: 123e4567-e89b-12d3-a456-426614174000
      responses:
        '200':
          description: Client identity retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    format: uuid
                    description: Unique identifier for the retrieval operation.
                    example: 123e4567-e89b-12d3-a456-426614174001
                  cardAccountId:
                    type: string
                    format: uuid
                    description: Unique identifier for the card account.
                    example: 123e4567-e89b-12d3-a456-426614174000
                  individual:
                    $ref: '#/components/schemas/MaskedCardholderInfo'
              example:
                id: 123e4567-e89b-12d3-a456-426614174001
                cardAccountId: 123e4567-e89b-12d3-a456-426614174000
                individual:
                  firstName: J*** A******
                  lastName: CHAN
                  email: j*****e@*****.com
                  dateOfBirth: '1985-07-20'
                  annualIncome: '100000'
                  position: senior management
                  occupation: accountant
                  mobile: 85*******11
                  document:
                    type: passport
                    number: '******678'
                    country: HK
                    expiryDate: '2025-12-31'
                  address: address
                  status: rejected
                  rejectedReason: Invalid ID (expired doc)
                  rejectionAdditionalInfo: Please upload valid hotel booking information.
components:
  schemas:
    MaskedCardholderInfo:
      type: object
      description: Masked information about the cardholder.
      properties:
        firstName:
          type: string
          description: The masked first name of the cardholder.
          example: J*** A******
        lastName:
          type: string
          description: The last name of the cardholder.
          example: CHAN
        firstNameLocal:
          type: string
          description: The masked first name of the cardholder on ID.
          example: J*** A******
        lastNameLocal:
          type: string
          description: The last name of the cardholder on ID.
          example: CHAN
        email:
          type: string
          description: The masked email address of the cardholder.
          example: j*****e@*****.com
        dateOfBirth:
          type: string
          format: date
          description: The cardholder's date of birth.
          example: '1985-07-20'
        annualIncome:
          type: string
          example: '100000'
          description: Annual income of card holder in USD
        position:
          type: string
          description: The cardholder's position in the company.
          example: senior management
        occupation:
          type: string
          description: The cardholder's occupation.
          example: accountant
        mobile:
          type: string
          description: The masked mobile phone number of the cardholder.
          nullable: true
          example: 85*******11
        document:
          type: object
          description: Identification document details of the cardholder.
          properties:
            type:
              type: string
              enum:
                - passport
                - drivers-license
                - national-id
              description: The type of identification document.
              example: passport
            number:
              type: string
              description: The masked identification document number.
              example: '******678'
            country:
              type: string
              format: ISO3166-1 alpha-2
              example: HK
              description: >-
                Issuing country of identification document in ISO3166-1 alpha-2
                format
            expiryDate:
              type: string
              pattern: \d{4}-\d{2}-\d{2}
              example: '2025-12-31'
              description: Expiry date of identification document (YYYY-MM-DD)
        address:
          type: string
          description: The masked address of the cardholder.
          nullable: true
          example: address
        gender:
          type: string
          enum:
            - MALE
            - FEMALE
          nullable: true
          description: Gender of cardholder
          example: MALE
        nationality:
          type: string
          minLength: 2
          maxLength: 2
          nullable: true
          description: Nationality of cardholder in ISO 3166-1 alpha-2 format
          example: HK
        supportingDocuments:
          type: array
          nullable: true
          description: Supporting documents (documentType only, file content is masked)
          items:
            type: object
            properties:
              documentType:
                type: string
                enum:
                  - IMMIGRATION_ENDORSEMENT
                  - WORK_VISA
                  - EMPLOYMENT_CONTRACT
                  - SALARY_PAYSLIP
                  - TENANCY_AGREEMENT
                  - ADDRESS_PROOF
                  - BANK_STATEMENT
                  - TRAVEL_PERMIT
                  - PROOF_OF_VISIT
          example:
            - documentType: WORK_VISA
        status:
          type: string
          enum:
            - pending_approval
            - approved
            - rejected
          description: >-
            Indicates the current KYC verification status: pending_approval,
            approved, or rejected.
          example: pending_approval
        rejectedReason:
          type: string
          nullable: true
          description: Provides the reason for KYC rejection if the status is rejected.
          enum:
            - Invalid ID (expired doc)
            - Invalid ID (age under 18)
            - Invalid ID (bogus id)
            - Invalid ID (id not accepted, hkid/passport is required)
            - Invalid ID (clear physical id card photo is required)
            - Invalid ID (missing id back photo)
            - Invalid ID (id not belong to client)
            - Invalid ID (two different ids attached)
            - >-
              Invalid ID (attached id with a stated purpose other than card
              application)
            - Invalid ID (name check hit)
            - Invalid ID (exceed the company's risk appetite)
            - Invalid ID (others)
            - Unclear ID Image
            - Cannot Open Doc
            - Block Nationality
            - Info Mismatch b/w ID and Input Data (id/passport expiry date)
            - Info Mismatch b/w ID and Input Data (date of birth)
            - Info Mismatch b/w ID and Input Data (client name)
            - Info Mismatch b/w ID and Input Data (id number)
            - Info Mismatch b/w ID and Input Data (id type)
            - Info Mismatch b/w ID and Input Data (id country)
            - Info Mismatch b/w ID and Input Data (gender)
            - Info Mismatch b/w ID and Input Data (nationality)
            - Incomplete Info (address)
            - Incomplete Info (not residential address)
            - Incomplete Info (id/passport expiry date)
            - Incomplete Info (position & occupation)
            - Additional Doc for Non-HK Resident (document type not accepted)
            - Additional Doc for Non-HK Resident (expired document)
            - Additional Doc for Non-HK Resident (unclear image)
            - Additional Doc for Non-HK Resident (document not belong to client)
            - Additional Doc for Non-HK Resident (potential bogus document)
            - Additional Doc for Non-HK Resident (cannot open doc)
            - Additional Doc for Non-HK Resident (doc date not accepted)
            - Additional Doc for Non-HK Resident (incomplete image)
            - Additional Doc for Non-HK Resident (missing id back photo)
            - Additional Doc for Non-HK Resident (hotel info invalid)
          example: Invalid ID (expired doc)
        rejectionAdditionalInfo:
          type: string
          nullable: true
          description: Additional KYC rejection information, if provided.
          example: Please upload valid hotel booking information.
  securitySchemes:
    Basic:
      type: http
      scheme: basic
    Bearer:
      type: http
      scheme: bearer
      bearerFormat: JWT

````