getRequiredCollateral or getMaxBorrow. For the full list of quote methods
and their return shapes, see
Borrow quote methods.
Prerequisites
Before you begin, ensure that you’ve: These are required so any example below runs with a validkit and adapter.
Preview a borrow
getBorrowQuote handles both opening a new loan and borrowing more against an
existing one. To preview opening a new loan, pass the walletAddress, chain,
and marketId:
TypeScript
loanId. The
service resolves the owner, blockchain, and market from the loan:
TypeScript
collateralAmount the borrow would pull, the
loanAssetAmount it would deliver, the market’s borrowApy, fees, gasFees,
and the position’s resultingHealthFactor, resultingLtv, resultingBand, and
liquidationPrice.
Preview add collateral
Quote the effect of adding cirBTC to an existing loan:TypeScript
fees, gasFees, and the position’s resulting health fields
after the collateral addition.
Preview a repayment
Quote a partial repayment. The SDK rejects repayments that exceed the loan’s outstanding debt at quote time.TypeScript
repayAmount, fees, gasFees, and resulting
health fields.
Preview a full close
Quote a full payoff. BecausecloseLoan uses share-based payoff math and may
pull more USDC than needed (up to your slippageBps bound), the quote’s
bundledRepayment reflects the upper bound of what the transaction may pull.
TypeScript
bundledRepayment (the upper bound of USDC the close may
pull), collateralAmount (the cirBTC returned), fees, gasFees, and
resulting health fields.
Preview withdrawing collateral
Quote the effect of withdrawing collateral, including the USDC required for the internal repay leg:TypeScript
collateralAmount (the cirBTC released), bundledRepayment
(the upper bound of USDC needed for the internal repay leg), fees, gasFees,
and resulting health fields.
Between preview and execution, the exact repayment amount can shift slightly as
interest accrues on the loan. slippageBps (default 300, or 3%) caps how much
larger the actual repayment can be than the previewed amount. Pass a smaller
slippageBps to tighten the ceiling, or omit it for the default.
Size a borrow
UsegetRequiredCollateral when the user knows how much USDC they want and what
health factor they want to land on:
TypeScript
getMaxBorrow when the user has a fixed collateral amount and wants to see
the largest borrow it supports:
TypeScript
resultingHealthFactor and
liquidationPrice. They do not return fees, gasFees, resultingLtv, or
resultingBand.