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

# Get institutions for customer

> Get a customer-specific list of institutions for Finverse Link



## OpenAPI

````yaml /api-reference/openapi.json get /institutions/customer
openapi: 3.0.0
info:
  description: Documentation of the early finverse services
  title: Finverse Public
  termsOfService: https://example.com
  contact:
    name: Maintainers
    email: info@finverse.com
  license:
    name: unknown license
  version: 0.0.1
servers:
  - url: https://api.prod.finverse.net
security:
  - Oauth2:
      - test
tags:
  - name: public
    description: Publicly accessible endpoints
    x-group: Public
  - name: customer
    description: Customer app and institution endpoints
    x-group: Customer
  - name: link
    description: Finverse Link flows
    x-group: Link
  - name: login_identity
    description: Login identity lifecycle and metadata
    x-group: Login identity
  - name: accounts
    description: Accounts, balances, and account numbers
    x-group: Accounts
  - name: statements
    description: Statements and composite statements
    x-group: Statements
  - name: transactions
    description: Transaction history
    x-group: Transactions
  - name: identity_income
    description: Identity and income insights
    x-group: Identity & income
  - name: payment_links
    description: Payment link creation and checkout
    x-group: Payment links
  - name: mandates
    description: Direct debit mandates
    x-group: Mandates
  - name: payments
    description: Payment initiation and status
    x-group: Payment operations
  - name: payouts
    description: Payouts and scheduled payouts
    x-group: Payouts
  - name: payment_users
    description: Payment user profiles
    x-group: Payment users
  - name: payment_accounts
    description: Payment accounts for users
    x-group: Payment accounts
  - name: payment_methods
    description: Stored payment methods
    x-group: Payment methods
  - name: bills
    description: Bill presentment
    x-group: Bills
  - name: disputes
    description: Payment disputes
    x-group: Disputes
  - name: ledger
    description: Ledger and statements
    x-group: Ledger
paths:
  /institutions/customer:
    get:
      tags:
        - customer
      summary: Get institutions for customer
      description: Get a customer-specific list of institutions for Finverse Link
      operationId: getInstitutionsForCustomer
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListInstitutionsResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrBodyModelV2'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrBodyModelV2'
      security:
        - Oauth2:
            - institution:link
components:
  schemas:
    ListInstitutionsResponse:
      type: array
      items:
        $ref: '#/components/schemas/Institution'
    ErrBodyModelV2:
      properties:
        error:
          $ref: '#/components/schemas/FvErrorModelV2'
    Institution:
      required:
        - institution_id
        - countries
        - institution_type
        - products_supported
        - institution_name
        - user_type
        - status
        - login_details
      properties:
        color:
          type: string
          example: '#FFFFFF'
        countries:
          type: array
          items:
            type: string
          example:
            - HKG
        institution_id:
          type: string
          example: 123
        institution_name:
          type: string
          example: Mock Bank
        institution_type:
          type: string
          enum:
            - BANK
            - WALLET
            - TEST
          example: BANK
        login_actions:
          type: array
          items:
            $ref: '#/components/schemas/LoginAction'
        login_details:
          x-go-type:
            import:
              package: gitlab.com/finverse/gitops/applications/api/models/custom
            type: LoginDetails
        login_methods:
          type: array
          items:
            $ref: '#/components/schemas/LoginMethod'
        login_url:
          type: string
          example: https://example.com/login
        parent_institution_name:
          type: string
          example: Parent Mock Bank
        payment_info:
          $ref: '#/components/schemas/PaymentInfo'
        portal_name:
          type: string
          example: Personal Internet Banking
        products_supported:
          type: array
          items:
            type: string
            enum:
              - ACCOUNTS
              - TRANSACTIONS
              - STATEMENTS
              - ACCOUNT_NUMBERS
              - IDENTITY
              - AUTO_DEBIT_SETUP
          example:
            - ACCOUNTS
            - TRANSACTIONS
            - STATEMENTS
            - ACCOUNT_NUMBERS
            - IDENTITY
            - AUTO_DEBIT_SETUP
        status:
          type: string
          enum:
            - SUPPORTED
            - ALPHA
            - BETA
          example: SUPPORTED
        status_details:
          type: object
          example: {}
        tags:
          type: array
          items:
            type: string
            enum:
              - real
              - test
          example:
            - real
        updated_at:
          type: string
          format: date-time
        user_type:
          type: array
          items:
            type: string
            enum:
              - PERSONAL
              - INDIVIDUAL
              - BUSINESS
            example: INDIVIDUAL
    FvErrorModelV2:
      required:
        - type
        - error_code
        - message
        - details
        - request_id
      properties:
        details:
          type: string
        error_code:
          type: string
          example: CREDENTIALS_INVALID
        message:
          type: string
        request_id:
          description: The request_id provided in the request header
          type: string
        type:
          description: The error type
          type: string
          enum:
            - LINK_ERROR
            - API_ERROR
          example: LINKING_ERROR
    LoginAction:
      properties:
        buttons:
          type: array
          items:
            $ref: '#/components/schemas/UserButton'
        fields:
          type: array
          items:
            $ref: '#/components/schemas/UserField'
        messages:
          type: array
          items:
            $ref: '#/components/schemas/UserMessage'
        name:
          type: string
          example: MOBILE_OTP
        type:
          type: string
          example: ACTION
    LoginMethod:
      properties:
        id:
          type: string
          example: SMS OTP
        is_default_method:
          type: boolean
          example: true
          nullable: true
        login_fields:
          type: array
          items:
            $ref: '#/components/schemas/LoginField'
        name:
          type: string
          example: SMS OTP
        status:
          type: string
          enum:
            - SUPPORTED
            - ALPHA
            - BETA
          example: SUPPORTED
    PaymentInfo:
      required:
        - payments_supported
      properties:
        currencies_supported:
          type: array
          items:
            type: string
          example:
            - HKD
            - CNY
        other_info:
          $ref: '#/components/schemas/OtherInfo'
        payments_supported:
          type: array
          items:
            type: string
            enum:
              - MANDATE
              - DEBIT_AUTHORIZATION
          example:
            - MANDATE
            - DEBIT_AUTHORIZATION
    UserButton:
      required:
        - name
        - value
        - type
      properties:
        name:
          description: Name identifying the button
          type: string
        type:
          description: 'Type of button. Possible values: `SUBMIT`'
          type: string
          example: SUBMIT
        value:
          description: Button value to be displayed to the user
          type: string
          example: Submit One time password
    UserField:
      required:
        - name
        - type
      properties:
        label:
          description: User-facing label for the field
          type: string
        name:
          description: Name identifying the field
          type: string
        options:
          description: >-
            List of possible options, from which user needs to select one value.
            Only used for field `type` = `SELECT`
          type: array
          items:
            $ref: '#/components/schemas/UserFieldOption'
        placeholder:
          description: Initial field value to be displayed to the user
          type: string
        type:
          description: 'Type of field. Possible values: `INPUT`, `SELECT`'
          type: string
          example: SELECT
    UserMessage:
      required:
        - name
        - type
        - value
      properties:
        name:
          description: The name of the message
          type: string
        type:
          description: >-
            The type of the message. This will help how the UI renders this
            text.
          type: string
        value:
          description: The actual text value.
          type: string
    LoginField:
      properties:
        key:
          type: string
          example: password
        name:
          type: string
          example: Password
        type:
          description: could be password, text, number
          type: string
          example: password
    OtherInfo:
      properties:
        bank_code:
          type: string
    UserFieldOption:
      required:
        - label
        - value
      properties:
        label:
          description: User-facing label for the option
          type: string
          example: joe-iphone-13
        value:
          description: Value for the option
          type: string
          example: Joe's iPhone 13 Pro Max
  securitySchemes:
    Oauth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://finverse-dev.us.auth0.com/oauth/token
          scopes:
            account: Account
            balance: Balance
            credit: Credit
            institution: Institution
            investment: Investment
            link: Link
            test: Test
            transaction: Transaction

````