An SDK for interacting with the Vaults.fyi API
npm install @vaultsfyi/sdk@vaultsfyi/sdk``bash`
npm install @vaultsfyi/sdkor
pnpm add @vaultsfyi/sdkor
yarn add @vaultsfyi/sdk
`javascript
// Import the SDK
import { VaultsSdk } from "@vaultsfyi/sdk";
// Initialize the SDK with your API key
const sdk = new VaultsSdk({ apiKey: "your-api-key" })
// Example usage: get all vaults
async function main() {
const vaults = await sdk.getAllVaults()
console.log(vaults)
}
main()
`
`typescript
// Get benchmarks
getBenchmarks()
// Get vault historical data
getVaultHistoricalData(params: { path: { network: string, vaultAddress: string } })
// Get vault total returns for a user
getVaultTotalReturns(params: { path: { userAddress: string, network: string, vaultAddress: string } })
// Get user positions
getPositions(params: { path: { userAddress: string } })
// Get deposit options for a user
getDepositOptions(params: { path: { userAddress: string } })
// Get vault holder events
getVaultHolderEvents(params: { path: { userAddress: string, network: string, vaultAddress: string } })
// Get all vaults
getAllVaults(params?: ParamsV2<'/v2/detailed-vaults'>)
// Get specific vault information
getVault(params: { path: { network: string, vaultAddress: string } })
// Get idle assets for a user
getIdleAssets(params: { path: { userAddress: string } })
// Get transaction context
getTransactionsContext(params: { path: { userAddress: string, network: string, vaultAddress: string } })
// Get transaction actions
getActions(params: { path: { action: string, userAddress: string, network: string, vaultAddress: string } })
`
You can override the default API URL:
`javascript``
const sdk = new VaultsSdk(
{ apiKey: "your-api-key" },
{ apiBaseUrl: "https://custom-api.example.com" }
)