Tracking balance and TVL

Fetching User's Balance

To fetch user's balance within a specific pool:

const userPoolBalance = await sdk.vaults.balanceOf(vault, pool, await signer.getAddress());const balance = await sdk.portfolio.getBalance(vault, poolId, user);

Where:

  • vault – Address of the Yelay vault.

  • pool – ID of the requested pool.

Retrieving TVL of a Client's Pool

To fetch the Total Value Locked (TVL) of a specific pool within a Yelay vault:

const vault = '0x1234';
const pool = 1234;
const poolsTvl = await sdk.data.getPoolTvl(vault, [pool]);

Where:

  • vault – Address of the Yelay vault.

  • pool – Array of pool IDs to calculate the total TVL

Getting historical TVL data for a vault and pool

// Fetch historical TVL data with various filter options
const historicalTVL = await sdk.data.getHistoricalTvl({
	vaultAddress: '0x1234...5678', // Required: The vault address to get TVL for
	poolId: 1, // Required: The specific pool ID to query
	fromTimestamp: 1641034800, // Optional: Start time in seconds (Jan 1, 2022)
	toTimestamp: 1672570800, // Optional: End time in seconds (Jan 1, 2023)
	page: 1, // Optional: Page number for pagination (starts at 1)
	pageSize: 30, // Optional: Number of records per page (max 100)
});

// Example with just the required parameters
const currentTVL = await sdk.data.getHistoricalTvl({
	vaultAddress: '0x1234...5678',
	poolId: 1,
});

The method returns a paginated response with the following structure:

Last updated