Appearance
Request & Response Types
Request Types
Request
An enum representing the 10 possible operations in a batch request.
rust
pub enum Request {
Deposit(StandardRequest),
Borrow(StandardRequest),
Withdraw(StandardRequest),
Repay(StandardRequest),
AddCollateral(StandardRequest),
RemoveCollateral(StandardRequest),
FlashBorrow(StandardRequest),
SwapExactTokens(SwapExactTokensRequest),
SwapForExactTokens(SwapForExactTokensRequest),
Liquidate(LiquidateRequest),
}StandardRequest
Used for deposit, borrow, withdraw, repay, add/remove collateral, and flash borrow.
rust
pub struct StandardRequest {
pub amount: i128,
pub pool_address: Address,
}SwapExactTokensRequest
Swap a precise amount of input tokens for at least a minimum output.
rust
pub struct SwapExactTokensRequest {
pub swap_provider: Address,
pub token_in: Address,
pub token_out: Address,
pub amount_in: i128,
pub min_amount_out: i128,
}SwapForExactTokensRequest
Swap up to a maximum input for a precise output amount.
rust
pub struct SwapForExactTokensRequest {
pub swap_provider: Address,
pub token_in: Address,
pub token_out: Address,
pub max_amount_in: i128,
pub amount_out: i128,
}LiquidateRequest
Liquidate another user's position within a batch.
rust
pub struct LiquidateRequest {
pub borrower_obligation_key: ObligationKey,
pub borrow_pool_address: Address,
pub collateral_pool_address: Address,
pub repay_amount: i128,
pub min_demanded_collateral_amount: i128,
}Result Types
WithdrawResult
rust
pub struct WithdrawResult {
pub j_tokens_to_burn: i128,
pub deposit_decrease: i128,
pub withdrawer_to_receive: i128,
pub operation_fees: OperationFees,
}DepositResult
rust
pub struct DepositResult {
pub j_tokens_to_issue: i128,
pub deposited: i128,
pub operation_fees: OperationFees,
}BorrowResult
rust
pub struct BorrowResult {
pub d_tokens_to_issue: i128,
pub borrower_new_debt: i128,
pub borrower_to_receive: i128,
pub operation_fees: OperationFees,
}RepayResult
rust
pub struct RepayResult {
pub d_tokens_to_burn: i128,
pub debt_repaid: i128,
pub amount_to_send_back: i128,
pub operation_fees: OperationFees,
}AddCollateralResult
rust
pub struct AddCollateralResult {
pub added_collateral: i128,
pub operation_fees: OperationFees,
}RemoveCollateralResult
rust
pub struct RemoveCollateralResult {
pub collateral_decrease: i128,
pub collateral_remover_to_receive: i128,
pub operation_fees: OperationFees,
}LiquidationResult
rust
pub struct LiquidationResult {
pub debt_repaid: i128,
pub amount_to_send_back: i128,
pub d_tokens_burned: i128,
pub plain_collateral_seized: i128,
pub j_tokens_seized: i128,
pub tokens_from_j_tokens_seized: i128,
}OperationFees
rust
pub struct OperationFees {
pub fee_sum: i128, // Total fee charged
pub referrer_fee: i128, // Portion sent to the referrer (if any)
}