> ## 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 stats for a KVault

> Get derived stats for a Kamino Earn Vault computed from the current on-chain state: supply APY breakdown (base gross/net, vault farm incentives, reserve farm incentives), per-token vault farm rewards, holdings, share price, utilization, instant liquidity and the per-reserve allocation breakdown. Returns 404 when the vault does not exist.



## OpenAPI

````yaml /kamino-api.json get /kvaults/vaults/{pubkey}/stats
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/{pubkey}/stats:
    get:
      tags:
        - Kamino Earn Vaults
      summary: Get stats for a KVault
      description: >-
        Get derived stats for a Kamino Earn Vault computed from the current
        on-chain state: supply APY breakdown (base gross/net, vault farm
        incentives, reserve farm incentives), per-token vault farm rewards,
        holdings, share price, utilization, instant liquidity and the
        per-reserve allocation breakdown. Returns 404 when the vault does not
        exist.
      parameters:
        - schema:
            $ref: '#/components/schemas/AddressBase58'
          required: true
          description: Valid base58-encoded address
          name: pubkey
          in: path
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/KvaultStats'
        '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
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  metadata:
                    type: string
                    description: Error message describing why it was not found
                    example: Account could not be found
                required:
                  - metadata
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    AddressBase58:
      type: string
      description: Valid base58-encoded address
      example: VEG1EMtttdHunMbSza8uoms1R18VXmYSph2bBpHcSJd
    KvaultStats:
      type: object
      properties:
        token:
          allOf:
            - $ref: '#/components/schemas/AddressBase58'
            - description: Vault token mint
        tokenPrice:
          allOf:
            - $ref: '#/components/schemas/Decimal'
            - description: USD price of the vault token
        apy:
          type: object
          properties:
            total:
              allOf:
                - $ref: '#/components/schemas/Apy'
                - description: >-
                    Total supply APY: net base APY plus farm and reserve
                    incentives
            base:
              type: object
              properties:
                gross:
                  allOf:
                    - $ref: '#/components/schemas/Apy'
                    - description: >-
                        Gross lending APY earned by the current allocations,
                        before vault fees
                net:
                  allOf:
                    - $ref: '#/components/schemas/Apy'
                    - description: >-
                        Net lending APY earned by the current allocations, after
                        vault fees
              required:
                - gross
                - net
            farmIncentives:
              allOf:
                - $ref: '#/components/schemas/Apy'
                - description: APY from the vault farm incentives, sum of farmRewards[].apy
            reservesIncentives:
              allOf:
                - $ref: '#/components/schemas/Apy'
                - description: >-
                    APY from the allocation reserve farm incentives, weighted by
                    target allocation
            autoCompounding:
              allOf:
                - $ref: '#/components/schemas/Apy'
                - description: APY from the native vault reward stream
          required:
            - total
            - base
            - farmIncentives
            - reservesIncentives
            - autoCompounding
        farmRewards:
          type: array
          items:
            type: object
            properties:
              rewardToken:
                allOf:
                  - $ref: '#/components/schemas/AddressBase58'
                  - description: Reward token mint address
              apy:
                allOf:
                  - $ref: '#/components/schemas/Apy'
                  - description: >-
                      Current reward APY component from the vault farm, as a
                      decimal fraction
              tokensPerSecond:
                allOf:
                  - $ref: '#/components/schemas/Decimal'
                  - description: Reward token emission rate in UI token units per second
            required:
              - rewardToken
              - apy
              - tokensPerSecond
          description: >-
            Per-token rewards of the vault farm (shares staked in the vault
            farm). apy.farmIncentives is the sum of apy over these rows. Empty
            when the vault has no farm or nothing is emitting.
        holdings:
          type: object
          properties:
            available:
              allOf:
                - $ref: '#/components/schemas/Decimal'
                - description: Token amount sitting uninvested in the vault
            availableUsd:
              allOf:
                - $ref: '#/components/schemas/Decimal'
                - description: USD value sitting uninvested in the vault
            invested:
              allOf:
                - $ref: '#/components/schemas/Decimal'
                - description: Token amount invested in reserves
            investedUsd:
              allOf:
                - $ref: '#/components/schemas/Decimal'
                - description: USD value invested in reserves
            totalAumIncludingFees:
              allOf:
                - $ref: '#/components/schemas/Decimal'
                - description: Total token AUM of the vault, including pending fees
            totalAumIncludingFeesUsd:
              allOf:
                - $ref: '#/components/schemas/Decimal'
                - description: Total USD AUM of the vault, including pending fees
            pendingFees:
              allOf:
                - $ref: '#/components/schemas/Decimal'
                - description: Pending fees in token amount
            pendingFeesUsd:
              allOf:
                - $ref: '#/components/schemas/Decimal'
                - description: Pending fees in USD
          required:
            - available
            - availableUsd
            - invested
            - investedUsd
            - totalAumIncludingFees
            - totalAumIncludingFeesUsd
            - pendingFees
            - pendingFeesUsd
        sharesIssued:
          allOf:
            - $ref: '#/components/schemas/Decimal'
            - description: Total shares issued by the vault
        tokensPerShare:
          allOf:
            - $ref: '#/components/schemas/Decimal'
            - description: Token amount one share is worth
        sharePrice:
          allOf:
            - $ref: '#/components/schemas/Decimal'
            - description: USD price of one share
        utilizationRatio:
          allOf:
            - $ref: '#/components/schemas/Decimal'
            - description: >-
                Share of the vault total AUM that is borrowed out of the
                reserves
        capitalDeployed:
          allOf:
            - $ref: '#/components/schemas/Decimal'
            - description: Token amount deployed into reserves
        capitalDeployedUsd:
          allOf:
            - $ref: '#/components/schemas/Decimal'
            - description: USD value deployed into reserves
        instantLiquidity:
          allOf:
            - $ref: '#/components/schemas/Decimal'
            - description: >-
                Token amount withdrawable from the vault right now without
                queueing: holdings.available plus
                allocations[].withdrawableTokenAmount. A per-vault upper bound
                over reserve liquidity shared with other vaults and depositors,
                so never sum it across vaults. Gross of withdrawal penalties;
                not for building transactions.
        instantLiquidityUsd:
          allOf:
            - $ref: '#/components/schemas/Decimal'
            - description: USD value of instantLiquidity at tokenPrice
        depositCap:
          anyOf:
            - $ref: '#/components/schemas/Decimal'
            - type: 'null'
          description: >-
            Maximum vault AUM net of pending fees that deposits can reach, in
            token amount. Null when the vault is uncapped
        depositCapUsd:
          anyOf:
            - $ref: '#/components/schemas/Decimal'
            - type: 'null'
          description: USD value of depositCap at tokenPrice. Null when uncapped
        remainingDepositCapacity:
          anyOf:
            - $ref: '#/components/schemas/Decimal'
            - type: 'null'
          description: >-
            Token amount the vault still accepts before reaching depositCap:
            depositCap minus the AUM net of pending fees, floored at 0. Deposits
            above it are clamped on-chain. Null when uncapped
        remainingDepositCapacityUsd:
          anyOf:
            - $ref: '#/components/schemas/Decimal'
            - type: 'null'
          description: >-
            USD value of remainingDepositCapacity at tokenPrice. Null when
            uncapped
        allocations:
          type: array
          items:
            type: object
            properties:
              reserve:
                allOf:
                  - $ref: '#/components/schemas/AddressBase58'
                  - description: Reserve public key the vault allocates into
              market:
                allOf:
                  - $ref: '#/components/schemas/AddressBase58'
                  - description: Lending market public key of the reserve
              targetPct:
                allOf:
                  - $ref: '#/components/schemas/Decimal'
                  - description: >-
                      Target allocation weight of the reserve as a percentage of
                      all target weights
              actualPct:
                allOf:
                  - $ref: '#/components/schemas/Decimal'
                  - description: >-
                      Share of the vault total AUM currently supplied to the
                      reserve, in percent
              suppliedTokenAmount:
                allOf:
                  - $ref: '#/components/schemas/Decimal'
                  - description: Token amount currently supplied to the reserve
              suppliedUsd:
                allOf:
                  - $ref: '#/components/schemas/Decimal'
                  - description: USD value currently supplied to the reserve
              supplyApy:
                allOf:
                  - $ref: '#/components/schemas/Apy'
                  - description: Current supply APY of the reserve
              withdrawableTokenAmount:
                allOf:
                  - $ref: '#/components/schemas/Decimal'
                  - description: >-
                      Token amount the vault can withdraw from this reserve
                      right now: the vault supply, capped by the reserve freely
                      available liquidity and its remaining deposit-withdrawal
                      cap, minus a 1-lamport rounding buffer. An upper bound
                      over liquidity shared with other reserve depositors; not
                      for building transactions.
            required:
              - reserve
              - market
              - targetPct
              - actualPct
              - suppliedTokenAmount
              - suppliedUsd
              - supplyApy
              - withdrawableTokenAmount
          description: Per-reserve allocation breakdown
      required:
        - token
        - tokenPrice
        - apy
        - farmRewards
        - holdings
        - sharesIssued
        - tokensPerShare
        - sharePrice
        - utilizationRatio
        - capitalDeployed
        - capitalDeployedUsd
        - instantLiquidity
        - instantLiquidityUsd
        - depositCap
        - depositCapUsd
        - remainingDepositCapacity
        - remainingDepositCapacityUsd
        - allocations
    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
    Decimal:
      type: string
      description: Decimal value represented as string
      example: '1234.56789'
    Apy:
      type: string
      description: >-
        APY in decimal format (not percentage) represented as string. Multiply
        by 100 to get percentage (%) - 0.1 in API response is 10%.
      example: '0.2'
      examples:
        - '0.123'
        - '0'
        - '1'
        - '1.23'
        - '-0.5'
        - '999999.999999'

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.