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

# Get KVault account data

> Fetch base64-encoded account data for Kamino Earn Vaults together with the lending markets, reserves and farms they allocate into, so clients can hydrate SDK objects without any getProgramAccounts calls. Omit the vaults parameter to include every vault; unknown vaults are omitted from the response.



## OpenAPI

````yaml /kamino-api.json get /kvaults/vaults/account-data
openapi: 3.1.0
info:
  version: 1.0.0
  title: Kamino Public API
  description: >
    The Kamino API provides a comprehensive way to interact with Kamino without
    reading directly from the blockchain.


    The API also provides the ability to fetch data that might not be available
    from just reading the chain.


    The API is rate-limited for unauthenticated users. If you feel you need to
    make more requests or run into rate-limit issues, please reach out.
servers:
  - url: https://api.kamino.finance
security: []
paths:
  /kvaults/vaults/account-data:
    get:
      tags:
        - Kamino Earn Vaults
      summary: Get KVault account data
      description: >-
        Fetch base64-encoded account data for Kamino Earn Vaults together with
        the lending markets, reserves and farms they allocate into, so clients
        can hydrate SDK objects without any getProgramAccounts calls. Omit the
        vaults parameter to include every vault; unknown vaults are omitted from
        the response.
      parameters:
        - schema:
            anyOf:
              - type: string
              - type: array
                items:
                  type: string
            description: >-
              KVault public keys, provided as comma-separated or repeated query
              parameters (max 100). Omit to include every vault.
            example: VEG1EMtttdHunMbSza8uoms1R18VXmYSph2bBpHcSJd
          required: false
          description: >-
            KVault public keys, provided as comma-separated or repeated query
            parameters (max 100). Omit to include every vault.
          name: vaults
          in: query
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/KvaultAccountDataResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: High-level error message describing the failure
                    example: Invalid query params
                  details:
                    type: array
                    items:
                      type: object
                      additionalProperties: {}
                    description: >-
                      Detailed validation issues (present only for validation
                      errors)
                required:
                  - error
                description: Bad request response (400)
                example:
                  error: Invalid query request
                  details:
                    - code: invalid_union
                      errors:
                        - - code: custom
                            path: []
                            message: Invalid date string
                        - - expected: number
                            code: invalid_type
                            path: []
                            message: 'Invalid input: expected number, received string'
                      path:
                        - start
                      message: Invalid input
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    KvaultAccountDataResponse:
      type: object
      properties:
        slot:
          type: string
          description: Slot at which the response was assembled
        recentSlotDurationMs:
          type: number
          description: Recent average slot duration in milliseconds
        vaults:
          type: array
          items:
            type: object
            properties:
              pubkey:
                allOf:
                  - $ref: '#/components/schemas/AddressBase58'
                  - description: Account public key
              data:
                type: string
                description: Base64 encoded account data
            required:
              - pubkey
              - data
          description: VaultState accounts of the requested vaults
        markets:
          type: array
          items:
            type: object
            properties:
              pubkey:
                allOf:
                  - $ref: '#/components/schemas/AddressBase58'
                  - description: Account public key
              data:
                type: string
                description: Base64 encoded account data
            required:
              - pubkey
              - data
          description: >-
            LendingMarket accounts of every market the requested vaults allocate
            into
        reserves:
          type: array
          items:
            type: object
            properties:
              market:
                allOf:
                  - $ref: '#/components/schemas/AddressBase58'
                  - description: Market public key
              reserves:
                type: array
                items:
                  type: object
                  properties:
                    pubkey:
                      allOf:
                        - $ref: '#/components/schemas/AddressBase58'
                        - description: Account public key
                    data:
                      type: string
                      description: Base64 encoded account data
                  required:
                    - pubkey
                    - data
            required:
              - market
              - reserves
          description: >-
            Reserve accounts of every market the requested vaults allocate into,
            grouped by market
        farms:
          type: array
          items:
            type: object
            properties:
              pubkey:
                allOf:
                  - $ref: '#/components/schemas/AddressBase58'
                  - description: Account public key
              data:
                type: string
                description: Base64 encoded account data
            required:
              - pubkey
              - data
          description: >-
            FarmState accounts of the vault farms, first-loss-capital farms,
            delegated farms and allocation reserve farms
      required:
        - slot
        - recentSlotDurationMs
        - vaults
        - markets
        - reserves
        - farms
    Error:
      type: object
      properties:
        error:
          type: string
          description: Error message for internal server failure
          example: An internal error occurred
      required:
        - error
      description: Internal server error response (500)
      example:
        error: An internal error occurred
    AddressBase58:
      type: string
      description: Valid base58-encoded address
      example: VEG1EMtttdHunMbSza8uoms1R18VXmYSph2bBpHcSJd

````