Vault blocks
Vault blocks are detailed blockchain-based snapshots of a vault’s state at a specific block height. They are used for calculating APR/APY, tracking liquidity, and generating analytics.
Structure
Each vault block object includes:
_id(string) — Unique identifiervaultId(string) — Vault being trackedvaultAddress(string) — Smart contract address of the vaultblock(object):number(number) — Block numbertimestamp(number) — Unix timestamp of the block
APRs(object) — Non-compounded APRs:BASE,HARVEST,REWARDS,GROSS,NET,FEE(number)
APYs(object) — Compounded yield rates:BASE,HARVEST,REWARDS,GROSS,NET,FEE(number)
totalSupply(string) — Total shares issued by the vaultprice(string) — Price per shareTVL(object) —token(string) — TVL in vault tokenUSD(string) — TVL in USD
pools(array of objects) — Breakdown of pool-level performance:address(string)protocol(string)rates:{ supply: number, borrow: number }utilization:{ supplied: string, borrowed: string, rate: number }available:{ toBorrow: string, toWithDraw: string }
allocations(array) — Optional pool allocation breakdowncreatedAt,updatedAt(string) — ISO timestampscreatedBy,updatedBy(string) — Actor IDs
Endpoints
A list of vault blocks
GET /v1/vault-blocks HTTP/1.1
Host: api.pareto.credit
Accept: */*
A list of vault blocks
{
"data": [
{
"_id": "text",
"vaultId": "text",
"vaultAddress": "text",
"block": {
"number": 1,
"timestamp": 1
},
"APRs": {
"BASE": 1,
"HARVEST": 1,
"REWARDS": 1,
"GROSS": 1,
"NET": 1,
"FEE": 1
},
"APYs": {
"BASE": 1,
"HARVEST": 1,
"REWARDS": 1,
"GROSS": 1,
"NET": 1,
"FEE": 1
},
"totalSupply": "text",
"price": "text",
"TVL": {
"token": "text",
"USD": "text"
},
"pools": [
{
"address": "text",
"protocol": "text",
"rates": {
"supply": 1,
"borrow": 1
},
"utilization": {
"supplied": "text",
"borrowed": "text",
"rate": 1
},
"available": {
"toBorrow": "text",
"toWithDraw": "text"
}
}
],
"allocations": [],
"createdAt": "2025-11-18T11:09:38.288Z",
"updatedAt": "2025-11-18T11:09:38.288Z",
"createdBy": "text",
"updatedBy": "text"
}
],
"totalCount": 1
}Vault block details
GET /v1/vault-blocks/{vaultBlockId} HTTP/1.1
Host: api.pareto.credit
Accept: */*
Vault block details
{
"_id": "text",
"vaultId": "text",
"vaultAddress": "text",
"block": {
"number": 1,
"timestamp": 1
},
"APRs": {
"BASE": 1,
"HARVEST": 1,
"REWARDS": 1,
"GROSS": 1,
"NET": 1,
"FEE": 1
},
"APYs": {
"BASE": 1,
"HARVEST": 1,
"REWARDS": 1,
"GROSS": 1,
"NET": 1,
"FEE": 1
},
"totalSupply": "text",
"price": "text",
"TVL": {
"token": "text",
"USD": "text"
},
"pools": [
{
"address": "text",
"protocol": "text",
"rates": {
"supply": 1,
"borrow": 1
},
"utilization": {
"supplied": "text",
"borrowed": "text",
"rate": 1
},
"available": {
"toBorrow": "text",
"toWithDraw": "text"
}
}
],
"allocations": [],
"createdAt": "2025-11-18T11:09:38.288Z",
"updatedAt": "2025-11-18T11:09:38.288Z",
"createdBy": "text",
"updatedBy": "text"
}Vault latest blocks
Vault latest blocks are real-time snapshots of the most recent state for each vault. Unlike vault blocks (historical), these represent the current or latest available data.
Endpoints
Latest vault state per block
GET /v1/vault-latest-blocks HTTP/1.1
Host: api.pareto.credit
Accept: */*
Latest vault state per block
{
"data": [
{
"vaultId": "text",
"vaultAddress": "text",
"block": {
"number": 1,
"timestamp": 1
},
"TVL": {
"token": "text",
"USD": "text"
},
"price": "text",
"APRs": {
"BASE": 1,
"HARVEST": 1,
"REWARDS": 1,
"GROSS": 1,
"NET": 1,
"FEE": 1
},
"createdAt": "2025-11-18T11:09:38.288Z",
"updatedAt": "2025-11-18T11:09:38.288Z",
"createdBy": "text",
"updatedBy": "text"
}
],
"totalCount": 1
}Last updated

