curl --request GET \
--url https://api.kamino.finance/kvaults/vaults/{pubkey}/metrics/historyconst options = {method: 'GET'};
fetch('https://api.kamino.finance/kvaults/vaults/{pubkey}/metrics/history', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.kamino.finance/kvaults/vaults/{pubkey}/metrics/history"
response = requests.get(url)
print(response.text)false[
{
"timestamp": "2025-03-01T12:00:00.000Z",
"tvl": "1234.56789",
"solTvl": "1234.56789",
"apy": "0.123",
"apyTheoretical": "0.123",
"apyActual": "0.123",
"apyFarmRewards": "0.123",
"apyReservesIncentives": "0.123",
"apyIncentives": "0.123",
"sharePrice": "1234.56789",
"interest": "1234.56789",
"interestUsd": "1234.56789",
"interestSol": "1234.56789",
"reserves": [
{
"pubkey": "VEG1EMtttdHunMbSza8uoms1R18VXmYSph2bBpHcSJd",
"supplyApy": "0.123",
"rewardsApy": "0.123",
"allocationRatio": "1234.56789",
"rewardTokens": [
{
"tokenMint": "VEG1EMtttdHunMbSza8uoms1R18VXmYSph2bBpHcSJd",
"apy": "0.123"
}
]
}
],
"vaultRewards": [
{
"tokenMint": "VEG1EMtttdHunMbSza8uoms1R18VXmYSph2bBpHcSJd",
"apy": "0.123"
}
]
}
]{
"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"
}
]
}{
"error": "An internal error occurred"
}Get historical KVault metrics
Get historical Kamino Earn Vault metrics for a given vault, between an optional range of dates
curl --request GET \
--url https://api.kamino.finance/kvaults/vaults/{pubkey}/metrics/historyconst options = {method: 'GET'};
fetch('https://api.kamino.finance/kvaults/vaults/{pubkey}/metrics/history', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.kamino.finance/kvaults/vaults/{pubkey}/metrics/history"
response = requests.get(url)
print(response.text)false[
{
"timestamp": "2025-03-01T12:00:00.000Z",
"tvl": "1234.56789",
"solTvl": "1234.56789",
"apy": "0.123",
"apyTheoretical": "0.123",
"apyActual": "0.123",
"apyFarmRewards": "0.123",
"apyReservesIncentives": "0.123",
"apyIncentives": "0.123",
"sharePrice": "1234.56789",
"interest": "1234.56789",
"interestUsd": "1234.56789",
"interestSol": "1234.56789",
"reserves": [
{
"pubkey": "VEG1EMtttdHunMbSza8uoms1R18VXmYSph2bBpHcSJd",
"supplyApy": "0.123",
"rewardsApy": "0.123",
"allocationRatio": "1234.56789",
"rewardTokens": [
{
"tokenMint": "VEG1EMtttdHunMbSza8uoms1R18VXmYSph2bBpHcSJd",
"apy": "0.123"
}
]
}
],
"vaultRewards": [
{
"tokenMint": "VEG1EMtttdHunMbSza8uoms1R18VXmYSph2bBpHcSJd",
"apy": "0.123"
}
]
}
]{
"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"
}
]
}{
"error": "An internal error occurred"
}Path Parameters
Valid base58-encoded address
"VEG1EMtttdHunMbSza8uoms1R18VXmYSph2bBpHcSJd"
Query Parameters
Start date of the range (defaults to Unix epoch). Accepts ISO string or epoch in ms.
"1970-01-01T00:00:00.000Z"
End date of the range (defaults to current time). Accepts ISO string or epoch in ms.
"2025-01-01T00:00:00.000Z"
Response
OK
Timestamp when the snapshot was created (ISO 8601 format)
"2025-03-01T12:00:00.000Z"
Total Value Locked in token denomination
"1234.56789"
Total Value Locked in SOL
"1234.56789"
Annual Percentage Yield
"0.123"
Theoretical Annual Percentage Yield
"0.123"
Actual Annual Percentage Yield
"0.123"
Annual Percentage Yield from Farm Rewards
"0.123"
Annual Percentage Yield from Reserves Incentives
"0.123"
Annual Percentage Yield from Incentives
"0.123"
Share Price of the vault
"1234.56789"
Interest earned in token denomination
"1234.56789"
Interest earned in USD
"1234.56789"
Interest earned in SOL
"1234.56789"
List of reserves with rewards
Show child attributes
Show child attributes
List of vault reward tokens
Show child attributes
Show child attributes