> ## 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 historical metrics for multiple KVaults

> Get historical Kamino Earn Vault metrics for multiple vaults between an optional range of dates. The response is keyed by vault public key; unknown vaults are omitted.



## OpenAPI

````yaml /kamino-api.json get /kvaults/vaults/metrics/history
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/metrics/history:
    get:
      tags:
        - Kamino Earn Vaults
      summary: Get historical metrics for multiple KVaults
      description: >-
        Get historical Kamino Earn Vault metrics for multiple vaults between an
        optional range of dates. The response is keyed by vault public key;
        unknown vaults are omitted.
      parameters:
        - schema:
            anyOf:
              - type: string
              - type: number
            default: '1970-01-01T00:00:00.000Z'
            description: >-
              Start date of the range (defaults to Unix epoch). Accepts ISO
              string or epoch in ms.
            examples:
              - '1970-01-01T00:00:00.000Z'
              - 0
          required: false
          description: >-
            Start date of the range (defaults to Unix epoch). Accepts ISO string
            or epoch in ms.
          name: start
          in: query
        - schema:
            anyOf:
              - type: string
              - type: number
            description: >-
              End date of the range (defaults to current time). Accepts ISO
              string or epoch in ms.
            examples:
              - '2025-01-01T00:00:00.000Z'
              - 1735689600000
          required: false
          description: >-
            End date of the range (defaults to current time). Accepts ISO string
            or epoch in ms.
          name: end
          in: query
        - schema:
            anyOf:
              - type: string
              - type: array
                items:
                  type: string
            description: >-
              KVault public keys, provided as comma-separated or repeated query
              parameters (max 25)
            example: VEG1EMtttdHunMbSza8uoms1R18VXmYSph2bBpHcSJd
          required: true
          description: >-
            KVault public keys, provided as comma-separated or repeated query
            parameters (max 25)
          name: vaults
          in: query
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/KvaultBatchTimeSeriesResponse'
        '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:
    KvaultBatchTimeSeriesResponse:
      type: object
      additionalProperties:
        type: array
        items:
          type: object
          properties:
            timestamp:
              type: number
              description: Unix timestamp in milliseconds
            tvl:
              allOf:
                - $ref: '#/components/schemas/Decimal'
                - description: Total Value Locked in token denomination
            solTvl:
              allOf:
                - $ref: '#/components/schemas/Decimal'
                - description: Total Value Locked in SOL
            apy:
              allOf:
                - $ref: '#/components/schemas/Apy'
                - description: Annual Percentage Yield
                  example: '0.2'
            apyTheoretical:
              allOf:
                - $ref: '#/components/schemas/Apy'
                - description: Theoretical Annual Percentage Yield
                  example: '0.2'
            apyActual:
              allOf:
                - $ref: '#/components/schemas/Apy'
                - description: Actual Annual Percentage Yield
                  example: '0.2'
            apyFarmRewards:
              allOf:
                - $ref: '#/components/schemas/Apy'
                - description: Annual Percentage Yield from Farm Rewards
                  example: '0.2'
            apyReservesIncentives:
              allOf:
                - $ref: '#/components/schemas/Apy'
                - description: Annual Percentage Yield from Reserves Incentives
                  example: '0.2'
            apyIncentives:
              allOf:
                - $ref: '#/components/schemas/Apy'
                - description: Annual Percentage Yield from Incentives
                  example: '0.2'
            sharePrice:
              allOf:
                - $ref: '#/components/schemas/Decimal'
                - description: Share Price of the vault
            interest:
              allOf:
                - $ref: '#/components/schemas/Decimal'
                - description: Interest earned in token denomination
            interestUsd:
              allOf:
                - $ref: '#/components/schemas/Decimal'
                - description: Interest earned in USD
            interestSol:
              allOf:
                - $ref: '#/components/schemas/Decimal'
                - description: Interest earned in SOL
            reserves:
              type: array
              items:
                type: object
                properties:
                  pubkey:
                    allOf:
                      - $ref: '#/components/schemas/AddressBase58'
                      - description: Public key of the reserve
                  supplyApy:
                    allOf:
                      - $ref: '#/components/schemas/Apy'
                      - description: Supply Annual Percentage Yield
                        example: '0.2'
                  rewardsApy:
                    allOf:
                      - $ref: '#/components/schemas/Apy'
                      - description: Rewards Annual Percentage Yield
                        example: '0.2'
                  allocationRatio:
                    allOf:
                      - $ref: '#/components/schemas/Decimal'
                      - description: Allocation Ratio
                  rewardTokens:
                    type: array
                    items:
                      type: object
                      properties:
                        tokenMint:
                          allOf:
                            - $ref: '#/components/schemas/AddressBase58'
                            - description: Token mint address
                        apy:
                          allOf:
                            - $ref: '#/components/schemas/Apy'
                            - description: Annual Percentage Yield for the reward token
                              example: '0.2'
                      required:
                        - tokenMint
                        - apy
                    description: List of reward tokens for the reserve
                required:
                  - pubkey
                  - supplyApy
                  - rewardsApy
                  - allocationRatio
                  - rewardTokens
              description: List of reserves with rewards
            vaultRewards:
              type: array
              items:
                type: object
                properties:
                  tokenMint:
                    allOf:
                      - $ref: '#/components/schemas/AddressBase58'
                      - description: Token mint address
                  apy:
                    allOf:
                      - $ref: '#/components/schemas/Apy'
                      - description: Annual Percentage Yield for the vault reward token
                        example: '0.2'
                required:
                  - tokenMint
                  - apy
              description: List of vault reward tokens
          required:
            - timestamp
            - tvl
            - solTvl
            - apy
            - apyTheoretical
            - apyActual
            - apyFarmRewards
            - apyReservesIncentives
            - apyIncentives
            - sharePrice
            - interest
            - interestUsd
            - interestSol
            - reserves
            - vaultRewards
      description: >-
        Vault metrics time series keyed by vault public key. Unknown vaults are
        omitted.
    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: Borrow interest APY
      example: '0.027610992938039702'
      examples:
        - '0.123'
        - '0'
        - '1'
        - '1.23'
        - '-0.5'
        - '999999.999999'
    AddressBase58:
      type: string
      description: Valid base58-encoded address
      example: VEG1EMtttdHunMbSza8uoms1R18VXmYSph2bBpHcSJd

````