Exactly Protocol Variable Rate API
Floating/variable rate deposit and borrow operations
Floating/variable rate deposit and borrow operations
openapi: 3.1.0
info:
title: Exactly Protocol Auditor ERC-4626 Variable Rate API
description: 'Smart contract interface for the Auditor, the central risk management component of Exactly Protocol. Manages market listings, collateral factors, account liquidity checks, and liquidation eligibility. Provides methods to query all markets, compute account liquidity, calculate seizure amounts, and check liquidation conditions. Deployed on Ethereum, Optimism, and Base.
'
version: 1.0.0
contact:
name: Exactly Protocol
url: https://docs.exact.ly
license:
name: MIT
url: https://github.com/exactly/protocol/blob/main/LICENSE-MIT
servers:
- url: https://app.exact.ly
description: Exactly Protocol App
tags:
- name: Variable Rate
description: Floating/variable rate deposit and borrow operations
paths:
/market/deposit:
post:
summary: Deposit assets at variable rate
description: 'Deposits underlying assets into the floating pool and mints ERC-4626 shares to the receiver. Returns the number of shares minted.
'
operationId: deposit
tags:
- Variable Rate
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/DepositRequest'
responses:
'200':
description: Shares minted
content:
application/json:
schema:
type: object
properties:
shares:
type: string
description: Number of shares minted to receiver
/market/withdraw:
post:
summary: Withdraw assets at variable rate
description: 'Withdraws a specific amount of underlying assets from the floating pool, burning the required shares from the owner''s balance.
'
operationId: withdraw
tags:
- Variable Rate
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/WithdrawRequest'
responses:
'200':
description: Shares burned
content:
application/json:
schema:
type: object
properties:
shares:
type: string
description: Number of shares burned
/market/borrow:
post:
summary: Borrow assets at variable rate
description: 'Borrows assets from the floating pool at a variable interest rate and sends them to the receiver. Returns the borrow shares issued.
'
operationId: borrow
tags:
- Variable Rate
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- assets
- receiver
- borrower
properties:
assets:
type: string
description: Amount to borrow (in wei)
receiver:
type: string
description: Address to receive the borrowed assets
pattern: ^0x[a-fA-F0-9]{40}$
borrower:
type: string
description: Address whose collateral backs the borrow
pattern: ^0x[a-fA-F0-9]{40}$
responses:
'200':
description: Borrow shares issued
content:
application/json:
schema:
type: object
properties:
borrowShares:
type: string
description: Number of borrow shares issued
/market/repay:
post:
summary: Repay variable rate debt
description: 'Repays a specific amount of assets toward a variable rate borrow position. Returns the actual assets repaid and borrow shares burned.
'
operationId: repay
tags:
- Variable Rate
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- assets
- borrower
properties:
assets:
type: string
description: Amount to repay (in wei)
borrower:
type: string
description: Address of the borrower whose debt is being repaid
pattern: ^0x[a-fA-F0-9]{40}$
responses:
'200':
description: Repayment result
content:
application/json:
schema:
type: object
properties:
actualRepay:
type: string
description: Actual assets repaid (in wei)
borrowShares:
type: string
description: Borrow shares burned
components:
schemas:
WithdrawRequest:
type: object
required:
- assets
- receiver
- owner
properties:
assets:
type: string
description: Amount of underlying assets to withdraw (in wei)
receiver:
type: string
description: Address to receive the withdrawn assets
pattern: ^0x[a-fA-F0-9]{40}$
owner:
type: string
description: Address of the shares owner
pattern: ^0x[a-fA-F0-9]{40}$
DepositRequest:
type: object
required:
- assets
- receiver
properties:
assets:
type: string
description: Amount of underlying assets to deposit (in wei)
receiver:
type: string
description: Address to receive the minted shares
pattern: ^0x[a-fA-F0-9]{40}$
externalDocs:
description: Exactly Protocol Auditor Documentation
url: https://docs.exact.ly/guides/protocol/auditor.md