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

# Get user profile

> Returns profile and identity-verification status for a registered user identified by phone or email.
Loads the user record, subscriber `createdAt`, and CIP process `status` via `cipService.getProcessInfo`.



## OpenAPI

````yaml /raas/swagger-partner.json get /user/profile/{phoneOrEmail}
openapi: 3.0.0
info:
  title: ''
  version: 0.0.1
servers:
  - url: https://raas-partner-cv.nomas.cash/v1
security: []
paths:
  /user/profile/{phoneOrEmail}:
    get:
      tags:
        - Users
      summary: Get user profile
      description: >-
        Returns profile and identity-verification status for a registered user
        identified by phone or email.

        Loads the user record, subscriber `createdAt`, and CIP process `status`
        via `cipService.getProcessInfo`.
      operationId: getProfile
      parameters:
        - description: |-
            - User identifier (phone with country code or email).
            Example: `+19166020018` or `test@example.com`.
          in: path
          name: phoneOrEmail
          required: true
          schema:
            type: string
      responses:
        '200':
          description: >-
            **200 — OK.** Profile returned for a registered user.


            **Scenarios for this response** (keep in sync with
            `testing-sandbox.mdx`):


            | Scenario | How to reproduce | Typical body |

            |------------|------------------|--------------|

            | Known user | Path `phoneOrEmail` is a registered phone (E.164 with
            `+`) or email for the tenant; user has subscriber and CIP records. |
            `UserProfile` with `id`, names, contact, address, CIP `status`,
            `createdAt`, optional `latitude` / `longitude`. |


            See also [Full scenario
            matrix](/raas/guides/testing-sandbox#get-profile-scenario-matrix).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserProfile'
              example:
                id: OSZwErXgt1MGPHwkYJVqz3LTN0R2
                email: maria.arenas@example.com
                firstName: Maria del Carmen
                lastName: Arenas Mendoza
                middleName: Elena
                secondLastName: Ruiz
                address1: >-
                  Cancún International Airport, Carretera a Aeropuerto Cancún,
                  Cancún, Quintana Roo, Mexico
                city: Cancún
                state: Q.R.
                zipCode: '77500'
                gender: Female
                dob: '1987-06-24T07:00:00.000Z'
                status: Approved
                phoneNumber: '+5215521206703'
                countryCode: MX
                createdAt: '2024-01-15T18:30:00.000Z'
                latitude: 21.0365
                longitude: -86.8515
        '401':
          description: >-
            **401 — Unauthorized.**


            **Scenarios for this response** (keep in sync with
            `testing-sandbox.mdx`):


            | Scenario | How to reproduce | Typical `code` / body |

            |------------|------------------|------------------------|

            | Missing / bad API key | Omit `api_key` or send an invalid/expired
            partner key. | OpenAPI `@Response<ErrorResponse>(401, "Missing or
            invalid API key")`; body may match `ErrorResponse` or your gateway.
            |


            See also [Full scenario
            matrix](/raas/guides/testing-sandbox#get-profile-scenario-matrix).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                reason: Missing or invalid API key
                code: ERROR_UNAUTHORIZED
        '404':
          description: >-
            **404 — Not found.** No user or subscriber matches the path
            identifier.


            **Scenarios for this response** (keep in sync with
            `testing-sandbox.mdx`):


            | Scenario | How to reproduce | Typical `code` / body |

            |------------|------------------|------------------------|

            | User not found | Phone or email not registered in the tenant. |
            `ERROR_USER_NOT_FOUND` |

            | Subscriber not found | User exists but has no subscriber record. |
            `ERROR_SUBSCRIBER_NOT_FOUND` |


            See also [Full scenario
            matrix](/raas/guides/testing-sandbox#get-profile-scenario-matrix).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                reason: User not found
                code: ERROR_USER_NOT_FOUND
        '422':
          description: >-
            **422 — Validation failed.** Path parameter failed schema
            validation.


            See also [Full scenario
            matrix](/raas/guides/testing-sandbox#get-profile-scenario-matrix).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidateError'
        '500':
          description: >-
            **500 — Internal server error.** Unexpected failure during user,
            subscriber, or CIP lookup.


            **Scenarios for this response** (keep in sync with
            `testing-sandbox.mdx`):


            | Scenario | How to reproduce | Typical `code` / body |

            |------------|------------------|------------------------|

            | CIP not found | User/subscriber exist but CIP record is missing
            when `getProcessInfo` runs. | `ERROR_CIP_NOT_FOUND` |

            | Downstream / unexpected | Storage or platform error after
            validation paths are ruled out. | `ERROR_INTERNAL_SERVER_ERROR` (no
            raw exception message to client) |


            See also [Full scenario
            matrix](/raas/guides/testing-sandbox#get-profile-scenario-matrix).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                reason: An unhandled error has occurred
                code: ERROR_INTERNAL_SERVER_ERROR
      security:
        - api_key:
            - partner_full
            - partner
components:
  schemas:
    UserProfile:
      properties:
        id:
          type: string
        email:
          type: string
        firstName:
          type: string
        lastName:
          type: string
        middleName:
          type: string
        secondLastName:
          type: string
        phoneNumber:
          type: string
        countryCode:
          type: string
        createdAt:
          type: string
          format: date-time
          description: Subscriber registration timestamp.
      required:
        - id
      type: object
      additionalProperties: false
    ErrorResponse:
      properties:
        detail:
          type: string
        code:
          type: string
        reason:
          type: string
      required:
        - code
        - reason
      type: object
    ValidateError:
      properties:
        name:
          type: string
        message:
          type: string
        stack:
          type: string
        status:
          type: number
          format: double
        fields:
          $ref: '#/components/schemas/FieldErrors'
      required:
        - name
        - message
        - status
        - fields
      type: object
      additionalProperties: false
    FieldErrors:
      properties: {}
      type: object
      additionalProperties:
        properties:
          value: {}
          message:
            type: string
        required:
          - message
        type: object
  securitySchemes:
    api_key:
      type: apiKey
      name: api_key
      in: header

````