# Vault History

## GET /vaults/apy-history

> Get APY history for all vaults for the given date range. \`apy\` is the composition-weighted yield APY (liquid assets are excluded from the APY denominator). \`navApy\` is the price-delta (NAV-based) APY computed from vault token price changes.

```json
{"openapi":"3.0.0","info":{"title":"Nest API","version":"1.0.0"},"servers":[{"url":"https://api.nest.credit/v1","description":"Nest API Server"}],"paths":{"/vaults/apy-history":{"get":{"tags":["Vault History"],"description":"Get APY history for all vaults for the given date range. `apy` is the composition-weighted yield APY (liquid assets are excluded from the APY denominator). `navApy` is the price-delta (NAV-based) APY computed from vault token price changes.","parameters":[{"schema":{"type":"number","nullable":true,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"startDate","in":"query"},{"schema":{"type":"number","nullable":true,"default":1779306527,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"endDate","in":"query"},{"schema":{"type":"string","enum":["asc","desc"],"default":"desc","description":"Ordering for history arrays. `desc` returns newest first. `asc` returns oldest first."},"required":false,"description":"Ordering for history arrays. `desc` returns newest first. `asc` returns oldest first.","name":"order","in":"query"},{"schema":{"type":"number","nullable":true,"default":98866,"description":"Optional chain ID. Defaults to Plume: 98866"},"required":false,"description":"Optional chain ID. Defaults to Plume: 98866","name":"chainId","in":"query"}],"responses":{"200":{"description":"Vault APY history with composition and NAV-based APY","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/VaultApyHistory"}}},"required":["data"]}}}}}}}},"components":{"schemas":{"VaultApyHistory":{"type":"object","properties":{"vaultAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"history":{"type":"array","items":{"type":"object","properties":{"day":{"type":"number"},"apy":{"type":"object","properties":{"rolling7d":{"type":"number","nullable":true},"rolling30d":{"type":"number","nullable":true},"sec30d":{"type":"number","nullable":true}},"required":["rolling7d","rolling30d","sec30d"],"description":"Composition-weighted yield APY for this day (liquid assets excluded from APY denominator)."},"navApy":{"type":"object","properties":{"rolling7d":{"type":"number","nullable":true},"rolling30d":{"type":"number","nullable":true},"sec30d":{"type":"number","nullable":true}},"required":["rolling7d","rolling30d","sec30d"],"description":"Price-delta (NAV-based) APY for this day."}},"required":["day","apy","navApy"]}},"errors":{"type":"array","items":{"type":"object","properties":{"source":{"type":"string","description":"The external API or service that caused the error"},"operation":{"type":"string","description":"The operation that failed"},"message":{"type":"string","description":"Human-readable error message"},"code":{"type":"string","enum":["TIMEOUT","NETWORK_ERROR","EXTERNAL_API_ERROR","UNKNOWN_ERROR"],"description":"Error classification code"},"timestamp":{"type":"number","description":"Unix timestamp in seconds when error occurred"}},"required":["source","operation","message","timestamp"]},"description":"Non-fatal errors that occurred during request processing (e.g., external API timeouts)"}},"required":["vaultAddress","history"]}}}}
```

## GET /vaults/tvl-history

> Get TVL history for all vaults for the given date range

```json
{"openapi":"3.0.0","info":{"title":"Nest API","version":"1.0.0"},"servers":[{"url":"https://api.nest.credit/v1","description":"Nest API Server"}],"paths":{"/vaults/tvl-history":{"get":{"tags":["Vault History"],"description":"Get TVL history for all vaults for the given date range","parameters":[{"schema":{"type":"number","nullable":true,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"startDate","in":"query"},{"schema":{"type":"number","nullable":true,"default":1779306527,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"endDate","in":"query"}],"responses":{"200":{"description":"VaultTVLHistory for all vaults","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/VaultTvlHistory"}}},"required":["data"]}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}}},"components":{"schemas":{"VaultTvlHistory":{"type":"object","properties":{"vaultAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"history":{"type":"array","items":{"type":"object","properties":{"day":{"type":"number"},"tvl":{"type":"number","nullable":true,"description":"TVL at close of day"}},"required":["day","tvl"]}}},"required":["vaultAddress","history"]}}}}
```

## GET /vaults/holders-history

> Get VaultHoldersHistory for all vaults for the given date range

```json
{"openapi":"3.0.0","info":{"title":"Nest API","version":"1.0.0"},"servers":[{"url":"https://api.nest.credit/v1","description":"Nest API Server"}],"paths":{"/vaults/holders-history":{"get":{"tags":["Vault History"],"description":"Get VaultHoldersHistory for all vaults for the given date range","parameters":[{"schema":{"type":"number","nullable":true,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"startDate","in":"query"},{"schema":{"type":"number","nullable":true,"default":1779306527,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"endDate","in":"query"}],"responses":{"200":{"description":"VaultHoldersHistory for all vaults for the given date range","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/VaultHoldersHistory"}}},"required":["data"]}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}}},"components":{"schemas":{"VaultHoldersHistory":{"type":"object","properties":{"vaultAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"history":{"type":"array","items":{"type":"object","properties":{"day":{"type":"number"},"chainId":{"type":"number"},"start":{"type":"number","nullable":true},"end":{"type":"number","nullable":true},"min":{"type":"number","nullable":true},"max":{"type":"number","nullable":true},"average":{"type":"number","nullable":true},"count":{"type":"number","nullable":true}},"required":["day","chainId","start","end","min","max","average","count"]}}},"required":["vaultAddress","history"]}}}}
```

## GET /vaults/volume-history

> Get daily volume history for all vaults for the given date range

```json
{"openapi":"3.0.0","info":{"title":"Nest API","version":"1.0.0"},"servers":[{"url":"https://api.nest.credit/v1","description":"Nest API Server"}],"paths":{"/vaults/volume-history":{"get":{"tags":["Vault History"],"description":"Get daily volume history for all vaults for the given date range","parameters":[{"schema":{"type":"number","nullable":true,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"startDate","in":"query"},{"schema":{"type":"number","nullable":true,"default":1779306527,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"endDate","in":"query"}],"responses":{"200":{"description":"Daily volume history for all vaults for the given date range","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/VaultVolumeHistory"}}},"required":["data"]}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}}},"components":{"schemas":{"VaultVolumeHistory":{"type":"object","properties":{"vaultAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"history":{"type":"array","items":{"type":"object","properties":{"day":{"type":"number"},"volume24h":{"type":"number","nullable":true}},"required":["day","volume24h"]}}},"required":["vaultAddress","history"]}}}}
```

## GET /vaults/{slug}/apy-history

> Get APY history for vault by slug for the given date range. \`apy\` is the composition-weighted yield APY (liquid assets are excluded from the APY denominator). \`navApy\` is the price-delta (NAV-based) APY computed from vault token price changes.

```json
{"openapi":"3.0.0","info":{"title":"Nest API","version":"1.0.0"},"servers":[{"url":"https://api.nest.credit/v1","description":"Nest API Server"}],"paths":{"/vaults/{slug}/apy-history":{"get":{"tags":["Vault History"],"description":"Get APY history for vault by slug for the given date range. `apy` is the composition-weighted yield APY (liquid assets are excluded from the APY denominator). `navApy` is the price-delta (NAV-based) APY computed from vault token price changes.","parameters":[{"schema":{"type":"string","minLength":1,"description":"Unique slug identifier for the vault."},"required":true,"description":"Unique slug identifier for the vault.","name":"slug","in":"path"},{"schema":{"type":"number","nullable":true,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"startDate","in":"query"},{"schema":{"type":"number","nullable":true,"default":1779306527,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"endDate","in":"query"},{"schema":{"type":"string","enum":["asc","desc"],"default":"desc","description":"Ordering for history arrays. `desc` returns newest first. `asc` returns oldest first."},"required":false,"description":"Ordering for history arrays. `desc` returns newest first. `asc` returns oldest first.","name":"order","in":"query"},{"schema":{"type":"number","nullable":true,"default":98866,"description":"Optional chain ID. Defaults to Plume: 98866"},"required":false,"description":"Optional chain ID. Defaults to Plume: 98866","name":"chainId","in":"query"}],"responses":{"200":{"description":"Vault APY history with composition and NAV-based APY","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/VaultApyHistory"}},"required":["data"]}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}}},"components":{"schemas":{"VaultApyHistory":{"type":"object","properties":{"vaultAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"history":{"type":"array","items":{"type":"object","properties":{"day":{"type":"number"},"apy":{"type":"object","properties":{"rolling7d":{"type":"number","nullable":true},"rolling30d":{"type":"number","nullable":true},"sec30d":{"type":"number","nullable":true}},"required":["rolling7d","rolling30d","sec30d"],"description":"Composition-weighted yield APY for this day (liquid assets excluded from APY denominator)."},"navApy":{"type":"object","properties":{"rolling7d":{"type":"number","nullable":true},"rolling30d":{"type":"number","nullable":true},"sec30d":{"type":"number","nullable":true}},"required":["rolling7d","rolling30d","sec30d"],"description":"Price-delta (NAV-based) APY for this day."}},"required":["day","apy","navApy"]}},"errors":{"type":"array","items":{"type":"object","properties":{"source":{"type":"string","description":"The external API or service that caused the error"},"operation":{"type":"string","description":"The operation that failed"},"message":{"type":"string","description":"Human-readable error message"},"code":{"type":"string","enum":["TIMEOUT","NETWORK_ERROR","EXTERNAL_API_ERROR","UNKNOWN_ERROR"],"description":"Error classification code"},"timestamp":{"type":"number","description":"Unix timestamp in seconds when error occurred"}},"required":["source","operation","message","timestamp"]},"description":"Non-fatal errors that occurred during request processing (e.g., external API timeouts)"}},"required":["vaultAddress","history"]}}}}
```

## GET /vaults/{slug}/tvl-history

> Get Vault TVL history by slug for the given date range

```json
{"openapi":"3.0.0","info":{"title":"Nest API","version":"1.0.0"},"servers":[{"url":"https://api.nest.credit/v1","description":"Nest API Server"}],"paths":{"/vaults/{slug}/tvl-history":{"get":{"tags":["Vault History"],"description":"Get Vault TVL history by slug for the given date range","parameters":[{"schema":{"type":"string","minLength":1,"description":"Unique slug identifier for the vault."},"required":true,"description":"Unique slug identifier for the vault.","name":"slug","in":"path"},{"schema":{"type":"number","nullable":true,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"startDate","in":"query"},{"schema":{"type":"number","nullable":true,"default":1779306527,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"endDate","in":"query"}],"responses":{"200":{"description":"Vault TVL history","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/VaultTvlHistory"}},"required":["data"]}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}}},"components":{"schemas":{"VaultTvlHistory":{"type":"object","properties":{"vaultAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"history":{"type":"array","items":{"type":"object","properties":{"day":{"type":"number"},"tvl":{"type":"number","nullable":true,"description":"TVL at close of day"}},"required":["day","tvl"]}}},"required":["vaultAddress","history"]}}}}
```

## GET /vaults/{slug}/holders-history

> Get Vault holders history by slug

```json
{"openapi":"3.0.0","info":{"title":"Nest API","version":"1.0.0"},"servers":[{"url":"https://api.nest.credit/v1","description":"Nest API Server"}],"paths":{"/vaults/{slug}/holders-history":{"get":{"tags":["Vault History"],"description":"Get Vault holders history by slug","parameters":[{"schema":{"type":"string","minLength":1,"description":"Unique slug identifier for the vault."},"required":true,"description":"Unique slug identifier for the vault.","name":"slug","in":"path"},{"schema":{"type":"number","nullable":true,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"startDate","in":"query"},{"schema":{"type":"number","nullable":true,"default":1779306527,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"endDate","in":"query"}],"responses":{"200":{"description":"Vault holders history","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/VaultHoldersHistory"}},"required":["data"]}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}}},"components":{"schemas":{"VaultHoldersHistory":{"type":"object","properties":{"vaultAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"history":{"type":"array","items":{"type":"object","properties":{"day":{"type":"number"},"chainId":{"type":"number"},"start":{"type":"number","nullable":true},"end":{"type":"number","nullable":true},"min":{"type":"number","nullable":true},"max":{"type":"number","nullable":true},"average":{"type":"number","nullable":true},"count":{"type":"number","nullable":true}},"required":["day","chainId","start","end","min","max","average","count"]}}},"required":["vaultAddress","history"]}}}}
```

## GET /vaults/{slug}/volume-history

> Get Vault volume history by slug for the given date range

```json
{"openapi":"3.0.0","info":{"title":"Nest API","version":"1.0.0"},"servers":[{"url":"https://api.nest.credit/v1","description":"Nest API Server"}],"paths":{"/vaults/{slug}/volume-history":{"get":{"tags":["Vault History"],"description":"Get Vault volume history by slug for the given date range","parameters":[{"schema":{"type":"string","minLength":1,"description":"Unique slug identifier for the vault."},"required":true,"description":"Unique slug identifier for the vault.","name":"slug","in":"path"},{"schema":{"type":"number","nullable":true,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"startDate","in":"query"},{"schema":{"type":"number","nullable":true,"default":1779306527,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"endDate","in":"query"}],"responses":{"200":{"description":"Vault volume history","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/VaultVolumeHistory"}},"required":["data"]}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}}},"components":{"schemas":{"VaultVolumeHistory":{"type":"object","properties":{"vaultAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"history":{"type":"array","items":{"type":"object","properties":{"day":{"type":"number"},"volume24h":{"type":"number","nullable":true}},"required":["day","volume24h"]}}},"required":["vaultAddress","history"]}}}}
```

## GET /vaults/{slug}/price-history

> Get Vault daily price history by slug

```json
{"openapi":"3.0.0","info":{"title":"Nest API","version":"1.0.0"},"servers":[{"url":"https://api.nest.credit/v1","description":"Nest API Server"}],"paths":{"/vaults/{slug}/price-history":{"get":{"tags":["Vault History"],"description":"Get Vault daily price history by slug","parameters":[{"schema":{"type":"string","minLength":1,"description":"Unique slug identifier for the vault."},"required":true,"description":"Unique slug identifier for the vault.","name":"slug","in":"path"},{"schema":{"type":"number","nullable":true,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"startDate","in":"query"},{"schema":{"type":"number","nullable":true,"default":1779306527,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"endDate","in":"query"},{"schema":{"type":"number","nullable":true,"default":98866,"description":"Optional chain ID. Defaults to plume mainnet (98866)"},"required":false,"description":"Optional chain ID. Defaults to plume mainnet (98866)","name":"chainId","in":"query"}],"responses":{"200":{"description":"Vault price history","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"vaultAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"history":{"type":"array","items":{"type":"object","properties":{"day":{"type":"number"},"price":{"type":"number"}},"required":["day","price"]}}},"required":["vaultAddress","history"]}},"required":["data"]}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}}}}
```

## GET /vaults/{slug}/liquid-funds-history

> Get Vault Liquid Funds history by slug with pagination

```json
{"openapi":"3.0.0","info":{"title":"Nest API","version":"1.0.0"},"servers":[{"url":"https://api.nest.credit/v1","description":"Nest API Server"}],"paths":{"/vaults/{slug}/liquid-funds-history":{"get":{"tags":["Vault History"],"description":"Get Vault Liquid Funds history by slug with pagination","parameters":[{"schema":{"type":"string","minLength":1,"description":"Unique slug identifier for the vault."},"required":true,"description":"Unique slug identifier for the vault.","name":"slug","in":"path"},{"schema":{"type":"number","nullable":true,"description":"Start date in Unix timestamp seconds"},"required":false,"description":"Start date in Unix timestamp seconds","name":"startDate","in":"query"},{"schema":{"type":"number","nullable":true,"description":"End date in Unix timestamp seconds"},"required":false,"description":"End date in Unix timestamp seconds","name":"endDate","in":"query"},{"schema":{"type":"number","minimum":1,"maximum":200,"default":50,"description":"Maximum number of history entries to return"},"required":false,"description":"Maximum number of history entries to return","name":"limit","in":"query"},{"schema":{"type":"string","description":"Cursor returned from a previous request"},"required":false,"description":"Cursor returned from a previous request","name":"cursor","in":"query"}],"responses":{"200":{"description":"Vault Liquid Funds history","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"vaultAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"history":{"type":"array","items":{"type":"object","properties":{"day":{"type":"number"},"liquidFunds":{"type":"number"}},"required":["day","liquidFunds"]}},"pageInfo":{"type":"object","properties":{"endCursor":{"type":"string","nullable":true},"hasNextPage":{"type":"boolean"}},"required":["endCursor","hasNextPage"]}},"required":["vaultAddress","history","pageInfo"]}},"required":["data"]}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}}}}
```

## GET /vaults/{slug}/pending-redemptions-history

> Get Vault pending redemptions history by slug with separate filters for requestedAt and expiresAt

```json
{"openapi":"3.0.0","info":{"title":"Nest API","version":"1.0.0"},"servers":[{"url":"https://api.nest.credit/v1","description":"Nest API Server"}],"paths":{"/vaults/{slug}/pending-redemptions-history":{"get":{"tags":["Vault History"],"description":"Get Vault pending redemptions history by slug with separate filters for requestedAt and expiresAt","parameters":[{"schema":{"type":"string","minLength":1,"description":"Unique slug identifier for the vault."},"required":true,"description":"Unique slug identifier for the vault.","name":"slug","in":"path"},{"schema":{"type":"number","nullable":true,"description":"Start date for requestedAt filter (Unix timestamp in seconds)"},"required":false,"description":"Start date for requestedAt filter (Unix timestamp in seconds)","name":"requestedAtStart","in":"query"},{"schema":{"type":"number","nullable":true,"description":"End date for requestedAt filter (Unix timestamp in seconds)"},"required":false,"description":"End date for requestedAt filter (Unix timestamp in seconds)","name":"requestedAtEnd","in":"query"},{"schema":{"type":"number","nullable":true,"description":"Start date for expiresAt filter (Unix timestamp in seconds)"},"required":false,"description":"Start date for expiresAt filter (Unix timestamp in seconds)","name":"expiresAtStart","in":"query"},{"schema":{"type":"number","nullable":true,"description":"End date for expiresAt filter (Unix timestamp in seconds)"},"required":false,"description":"End date for expiresAt filter (Unix timestamp in seconds)","name":"expiresAtEnd","in":"query"},{"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]+$","description":"Optional atomic queue address filter."},"required":false,"description":"Optional atomic queue address filter.","name":"queueAddress","in":"query"}],"responses":{"200":{"description":"Vault pending redemptions history","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/VaultPendingRedemptions"}},"required":["data"]}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}}},"components":{"schemas":{"VaultPendingRedemptions":{"type":"object","properties":{"vaultAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"pendingRedemptions":{"type":"array","items":{"type":"object","properties":{"requestTransactionHash":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"user":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"chainId":{"type":"number"},"amount":{"type":"number"},"requestedAt":{"type":"number"},"expiresAt":{"type":"number"},"queueAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"wantTokenContractAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"minPrice":{"type":"number","description":"The price in terms of `want` asset the user wants their `offer` assets 'sold' at"},"isValid":{"type":"boolean","description":"Whether the redemption is valid. False if the redemption is expired or invalid."}},"required":["requestTransactionHash","user","chainId","amount","requestedAt","expiresAt","queueAddress","wantTokenContractAddress","minPrice","isValid"]}}},"required":["vaultAddress","pendingRedemptions"]}}}}
```

## GET /vaults/{slug}/composition-history

> Get historical vault composition by slug for the given date range. Returns daily snapshots of asset allocation across all chains, including both liquid and yield assets with their weights and values.

```json
{"openapi":"3.0.0","info":{"title":"Nest API","version":"1.0.0"},"servers":[{"url":"https://api.nest.credit/v1","description":"Nest API Server"}],"paths":{"/vaults/{slug}/composition-history":{"get":{"tags":["Vault History"],"description":"Get historical vault composition by slug for the given date range. Returns daily snapshots of asset allocation across all chains, including both liquid and yield assets with their weights and values.","parameters":[{"schema":{"type":"string","minLength":1,"description":"Unique slug identifier for the vault."},"required":true,"description":"Unique slug identifier for the vault.","name":"slug","in":"path"},{"schema":{"type":"number","nullable":true,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"startDate","in":"query"},{"schema":{"type":"number","nullable":true,"default":1779306527,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"endDate","in":"query"},{"schema":{"type":"string","enum":["asc","desc"],"default":"desc","description":"Ordering for history arrays. `desc` returns newest first. `asc` returns oldest first."},"required":false,"description":"Ordering for history arrays. `desc` returns newest first. `asc` returns oldest first.","name":"order","in":"query"}],"responses":{"200":{"description":"Vault composition history","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/VaultCompositionHistory"}},"required":["data"]}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}}},"components":{"schemas":{"VaultCompositionHistory":{"type":"object","properties":{"vaultAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"history":{"type":"array","items":{"type":"object","properties":{"day":{"type":"number","description":"Unix timestamp at start of day (UTC)"},"totalValue":{"type":"number","description":"Total vault value in USD"},"liquidAssets":{"type":"object","properties":{"totalValue":{"type":"number","description":"Total value of liquid assets in USD"},"weight":{"type":"number","description":"Proportion of vault total value (0-1)"},"assets":{"type":"array","items":{"type":"object","properties":{"assetAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"chainId":{"type":"number"},"value":{"type":"number","description":"Value in USD"}},"required":["assetAddress","chainId","value"]},"description":"Individual liquid asset positions"}},"required":["totalValue","weight","assets"]},"yieldAssets":{"type":"array","items":{"type":"object","properties":{"slug":{"type":"string","description":"Unique identifier for the yield asset"},"totalValue":{"type":"number","description":"Total value across all tokens in USD"},"weight":{"type":"number","description":"Proportion of vault total value (0-1)"},"tokens":{"type":"array","items":{"type":"object","properties":{"tokenAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"chainId":{"type":"number"},"isPending":{"type":"boolean","description":"When true, this token entry represents pending (in-transit) redemption value rather than an on-chain token balance."},"balance":{"type":"number","description":"Token balance in native units"},"price":{"type":"number","description":"Price per token in USD"},"value":{"type":"number","description":"Total value in USD (balance * price)"}},"required":["tokenAddress","chainId","balance","price","value"]},"description":"Individual token positions within this yield asset"}},"required":["slug","totalValue","weight","tokens"]}}},"required":["day","totalValue","liquidAssets","yieldAssets"]}}},"required":["vaultAddress","history"]}}}}
```

## GET /vaults/{slug}/transaction-history

> Get vault transaction history by slug

```json
{"openapi":"3.0.0","info":{"title":"Nest API","version":"1.0.0"},"servers":[{"url":"https://api.nest.credit/v1","description":"Nest API Server"}],"paths":{"/vaults/{slug}/transaction-history":{"get":{"tags":["Vault History"],"description":"Get vault transaction history by slug","parameters":[{"schema":{"type":"string","minLength":1,"description":"Unique slug identifier for the vault."},"required":true,"description":"Unique slug identifier for the vault.","name":"slug","in":"path"},{"schema":{"type":"integer","nullable":true,"description":"Start date filter (epoch seconds)"},"required":false,"description":"Start date filter (epoch seconds)","name":"startDate","in":"query"},{"schema":{"type":"integer","nullable":true,"description":"End date filter (epoch seconds)"},"required":false,"description":"End date filter (epoch seconds)","name":"endDate","in":"query"},{"schema":{"type":"number","nullable":true,"description":"Optional chain ID. If omitted, returns transactions across all chains."},"required":false,"description":"Optional chain ID. If omitted, returns transactions across all chains.","name":"chainId","in":"query"},{"schema":{"type":"string","description":"Optional comma-separated transaction types. Example: DEPOSIT,WITHDRAW_FULFILL"},"required":false,"description":"Optional comma-separated transaction types. Example: DEPOSIT,WITHDRAW_FULFILL","name":"transactionTypes","in":"query"},{"schema":{"type":"number","minimum":1,"maximum":200,"default":50,"description":"Maximum number of transactions to return"},"required":false,"description":"Maximum number of transactions to return","name":"limit","in":"query"},{"schema":{"type":"string","description":"Cursor returned from a previous request"},"required":false,"description":"Cursor returned from a previous request","name":"cursor","in":"query"}],"responses":{"200":{"description":"Vault transaction history","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"transactionHash":{"type":"string","pattern":"^0x[a-fA-F0-9]+$","description":"Transaction hash"},"logIndex":{"type":"integer","description":"Log index of the event within the transaction receipt"},"transactionType":{"type":"string","enum":["DEPOSIT","WITHDRAW_REQUEST","WITHDRAW_FULFILL","WITHDRAW_UPDATE","WITHDRAW_CLAIM","PRE_DEPOSIT_MIGRATION","WITHDRAW_INSTANT"]},"vaultAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$","description":"Vault address"},"user":{"type":"string","pattern":"^0x[a-fA-F0-9]+$","description":"User address"},"createdAt":{"type":"number","description":"Transaction created at in epoch seconds"},"shares":{"type":"number","description":"Shares"},"sharesTokenAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$","description":"Shares token address"},"assets":{"type":"number","nullable":true,"description":"Assets"},"assetsTokenAddress":{"type":"string","nullable":true,"pattern":"^0x[a-fA-F0-9]+$","description":"Assets token address"},"chainId":{"type":"number","description":"Chain ID"}},"required":["transactionHash","logIndex","transactionType","vaultAddress","user","createdAt","shares","sharesTokenAddress","assets","assetsTokenAddress","chainId"]}},"pageInfo":{"type":"object","properties":{"endCursor":{"type":"string","nullable":true,"description":"Cursor to fetch the next page of results"},"hasNextPage":{"type":"boolean","description":"Whether another page of results is available"}},"required":["endCursor","hasNextPage"]}},"required":["items","pageInfo"]}},"required":["data"]}}}},"400":{"description":"Invalid request","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}}}}
```

## GET /vaults/{slug}/performance-history

> Get vault performance history by slug for the given date range. Includes vault price/TVL/liquid funds/APY and optional per-yield-asset metrics. Vault price and NAV APY are derived from the preferred chain (Plume if configured, otherwise the first configured chain).

```json
{"openapi":"3.0.0","info":{"title":"Nest API","version":"1.0.0"},"servers":[{"url":"https://api.nest.credit/v1","description":"Nest API Server"}],"paths":{"/vaults/{slug}/performance-history":{"get":{"tags":["Vault History"],"description":"Get vault performance history by slug for the given date range. Includes vault price/TVL/liquid funds/APY and optional per-yield-asset metrics. Vault price and NAV APY are derived from the preferred chain (Plume if configured, otherwise the first configured chain).","parameters":[{"schema":{"type":"string","minLength":1,"description":"Unique slug identifier for the vault."},"required":true,"description":"Unique slug identifier for the vault.","name":"slug","in":"path"},{"schema":{"type":"number","nullable":true,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"startDate","in":"query"},{"schema":{"type":"number","nullable":true,"default":1779306527,"description":"Unix timestamp in seconds"},"required":false,"description":"Unix timestamp in seconds","name":"endDate","in":"query"},{"schema":{"type":"string","enum":["asc","desc"],"default":"desc","description":"Ordering for history arrays. `desc` returns newest first. `asc` returns oldest first."},"required":false,"description":"Ordering for history arrays. `desc` returns newest first. `asc` returns oldest first.","name":"order","in":"query"},{"schema":{"type":"string","default":false,"description":"Include per-yield-asset composition metrics."},"required":false,"description":"Include per-yield-asset composition metrics.","name":"includeCompositeAssets","in":"query"},{"schema":{"type":"string","enum":["json","csv"],"default":"json","description":"Response format. Use csv to export the history as CSV."},"required":false,"description":"Response format. Use csv to export the history as CSV.","name":"format","in":"query"}],"responses":{"200":{"description":"Vault performance history","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/VaultPerformanceHistory"}},"required":["data"]}},"text/csv":{"schema":{"type":"string","description":"CSV export of vault performance history"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}},"500":{"description":"Server error","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}}}}}}},"components":{"schemas":{"VaultPerformanceHistory":{"type":"object","properties":{"vaultAddress":{"type":"string","pattern":"^0x[a-fA-F0-9]+$"},"assets":{"type":"array","items":{"type":"object","properties":{"slug":{"type":"string"},"name":{"type":"string","nullable":true}},"required":["slug","name"]}},"history":{"type":"array","items":{"type":"object","properties":{"day":{"type":"number"},"vault":{"type":"object","properties":{"price":{"type":"number","nullable":true},"tvl":{"type":"number","nullable":true},"liquidFunds":{"type":"number","nullable":true},"apy":{"type":"object","properties":{"rolling7d":{"type":"number","nullable":true},"rolling30d":{"type":"number","nullable":true},"sec30d":{"type":"number","nullable":true}},"required":["rolling7d","rolling30d","sec30d"]},"navApy":{"type":"object","properties":{"rolling7d":{"type":"number","nullable":true},"rolling30d":{"type":"number","nullable":true},"sec30d":{"type":"number","nullable":true}},"required":["rolling7d","rolling30d","sec30d"]}},"required":["price","tvl","liquidFunds","apy","navApy"]},"assets":{"type":"object","additionalProperties":{"type":"object","properties":{"price":{"type":"number","nullable":true},"apy7d":{"type":"number","nullable":true},"apy30d":{"type":"number","nullable":true},"compositionPct":{"type":"number","nullable":true}},"required":["price","apy7d","apy30d","compositionPct"]}}},"required":["day","vault"]}}},"required":["vaultAddress","assets","history"]}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.nest.credit/developers/api/vault-history.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
