CIAN Yield Layer Tech Docs
Base URL:
GET https://yieldlayer.cian.app/{chain_name}/poolSupported {chain_name} values:
ethereum
arbitrum
bsc
sei
Overview
Each vault is an ERC4626 vault. The underlying asset can be retrieved using the asset() function.
1. Chain Vaults List
Endpoint:
/home/vaultsDescription:
Retrieve the list of all vaults on the specified chain.
Example:
Response Fields:
pool_name: The name displayed on frontend. Might be changed.pool_address: Yield layer contract address.public: If the yield layer is listed on the landing page.tvl_usd: The TVL in USD after leverage.net_tvl_usd: The TVL in USD users deposited.apy_7: 7-day average APY, divided into:apy_instant_7: Reflected in receipt token prices.
apy_esti_by_points_7: Estimated APY from points earned.
apy_eco_earn_7: Ecosystem-specific APY (e.g., stETH Yield Layer).
CIAN POINTS ARE NOT INCLUDED.
Return:
2. Vault Config
Endpoint:
Description:
Retrieve configuration details for a specific vault.
Example:
Response Fields:
deposit_capacity: The capacity to control deposition on frontend. Depositing directly through contract is not affected.fee_info.exit: Initial exit fee, 0.02 for 0.02%fee_info.exit_override: The actual exit fee applied by the contract, 0.02 for 0.02%fee_info.management: Anual management fee.fee_info.performance: Performance fee, 8 for 8%conf.min_deposit&conf.min_withdraw: Minimum deposit/withdrawal limits (applicable only on Cian's frontend).current_holders_count&history_holders_count: Holders counted by history evnets.
3. Vault Tvls Info
Endpoint:
Description:
Retrieve TVL and related statistics for a specific vault.
Example:
Response Fields:
tvl_base: Vault's asset (ERC4626asset(), e.g., WETH for stETH Yield Layer; FBTC for FBTC Yield Layer) TVL after leverage.points_accumulated: The points earned by this vault.
For some protocols, points will be distributed directly to the users and we do not receive the points.
4. User Info
Endpoint:
Params:
param
type
required
user_address
string
Yes
Description:
Retrieve user-specific information for a vault.
Example:
Response Fields:
principal: User’s deposited amount.assets: Current assets owned by the user.earnings: User’s earnings in the vault.points: Points earned by the user.received_airdrops: For some yield layers like USD1 Yield Layer and slisBNB Yield Layer, we record the airdrop distribution tx.
5. Vault History
Endpoint:
Params:
param
type
required
Default
limit
int
No
100
Description:
Retrieve the historical data of a vault, including TVL, APY, and holders list in hour basis.
Example:
Response Fields:
Return the vault history for every hour, including tvl, apy and all holders list.
holders[i].amount: The receipt token user holds.holders[i].weight: The ratio user takes in the whole vault.
6. Apy breakdown
Endpoint:
Description:
Retrieve apy && allocation details for a specific vault.
Example:
Response Fields:
strategies.id: The ID to identify the strategy.strategies.weight: Allocation percentage.
7. Pending withdraw
Endpoint:
Description:
Get pending withdraw list for a specific vault.
Example:
Response Fields:
8. Confirmed withdraw
Endpoint:
Description:
Get confirmed withdraw list for a specific user on a vault which ORDER BY [block] DESC.
Example:
Response Fields:
Cian Yield Layer ABI
Deposit
optionalDeposit(address _token, uint256 _assets, address _receiver, address _referral) returns (uint256 _shares)
Before calling this function, user should approve the contract to spend the token (token can be WBTC / FBTC / pumpBTC).
Example:
optionalDeposit(WBTC, 1e8, UserAddress, ReferralAddress) Means UserAddress deposits 1 WBTC to the vault, and ReferralAddress gets the referral fee.
Return:
_shares: The amount of shares user gets.
Also emits event: OptionalDeposit(msg.sender, _token, _assets, _receiver, _referral)
Withdraw
requestRedeem(uint256 _shares)
Will transfer the assets from the user's address to redeemer address, and request to redeem the shares to tokens.
Example:
requestRedeem(1e8) Means user wants to redeem 1 shares.
Last updated
Was this helpful?