Exactly Protocol Rewards Query API
View methods for querying reward state and amounts
View methods for querying reward state and amounts
openapi: 3.1.0
info:
title: Exactly Protocol Auditor ERC-4626 Rewards Query 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: Rewards Query
description: View methods for querying reward state and amounts
paths:
/rewards/allRewards:
get:
summary: Get all reward tokens
description: Returns an array of all ERC-20 reward tokens registered in the RewardsController.
operationId: allRewards
tags:
- Rewards Query
responses:
'200':
description: Array of reward token addresses
content:
application/json:
schema:
type: object
properties:
rewards:
type: array
description: Addresses of all reward tokens (e.g., EXA, esEXA)
items:
type: string
pattern: ^0x[a-fA-F0-9]{40}$
/rewards/allMarketsOperations:
get:
summary: Get all market operations eligible for rewards
description: Returns all market-operation pairs (deposit/borrow) registered for reward distribution.
operationId: allMarketsOperations
tags:
- Rewards Query
responses:
'200':
description: Array of MarketOperation structs
content:
application/json:
schema:
type: object
properties:
marketOperations:
type: array
items:
$ref: '#/components/schemas/MarketOperation'
/rewards/allClaimable:
post:
summary: Get total claimable reward amount for an account
description: 'Returns the total amount of a specific reward token claimable by an account across all markets and operations.
'
operationId: allClaimable
tags:
- Rewards Query
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- account
- reward
properties:
account:
type: string
description: Address of the account to check
pattern: ^0x[a-fA-F0-9]{40}$
reward:
type: string
description: Address of the reward token (e.g., EXA)
pattern: ^0x[a-fA-F0-9]{40}$
responses:
'200':
description: Total claimable reward amount
content:
application/json:
schema:
type: object
properties:
claimable:
type: string
description: Total claimable amount in reward token units (in wei)
/rewards/claimable:
post:
summary: Get claimable rewards for specific market operations
description: 'Returns the claimable amount of a specific reward token for an account across a specified list of market operations.
'
operationId: claimable
tags:
- Rewards Query
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- marketOps
- account
- reward
properties:
marketOps:
type: array
description: List of market-operation pairs to include
items:
$ref: '#/components/schemas/MarketOperation'
account:
type: string
description: Address of the account to check
pattern: ^0x[a-fA-F0-9]{40}$
reward:
type: string
description: Address of the reward token
pattern: ^0x[a-fA-F0-9]{40}$
responses:
'200':
description: Claimable reward amount
content:
application/json:
schema:
type: object
properties:
claimable:
type: string
description: Claimable amount for the specified operations (in wei)
/rewards/previewAllocation:
post:
summary: Preview reward allocation for a time period
description: 'Returns projected deposit and borrow reward allocations and utilization for a specified time delta, useful for estimating rewards APR.
'
operationId: previewAllocation
tags:
- Rewards Query
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- market
- reward
- deltaTime
properties:
market:
type: string
description: Address of the Market contract
pattern: ^0x[a-fA-F0-9]{40}$
reward:
type: string
description: Address of the reward token
pattern: ^0x[a-fA-F0-9]{40}$
deltaTime:
type: string
description: Time period in seconds to project rewards over
responses:
'200':
description: Projected allocation amounts
content:
application/json:
schema:
type: object
properties:
depositRewards:
type: string
description: Projected rewards allocated to depositors (in wei)
borrowRewards:
type: string
description: Projected rewards allocated to borrowers (in wei)
utilization:
type: string
description: Utilization rate used for reward split (scaled by 1e18)
components:
schemas:
MarketOperation:
type: object
description: A market and operation type pair for reward queries/claims
required:
- market
- operations
properties:
market:
type: string
description: Address of the Market contract
pattern: ^0x[a-fA-F0-9]{40}$
operations:
type: array
description: Operation types (true = borrow, false = deposit)
items:
type: boolean
externalDocs:
description: Exactly Protocol Auditor Documentation
url: https://docs.exact.ly/guides/protocol/auditor.md