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