Skip to main content
POST
Builds the setReserveRatio transaction that earmarks a share of the market’s total liquidity against borrowing. Requires ISSUER_ROLE on the market, held by the wallet the lender of record named at adoption. The market brings its interest accrual up to date before the new ratio applies. The reserve binds borrowing only. A withdrawal can always consume it, because a reserve that trapped a provider’s money would be the opposite failure from the one it prevents. It is a buffer, not a guarantee: it serves whichever provider exits first. The slice held back is not lent and earns no interest, a cost the lender of record should disclose to liquidity providers. The ratio applies at once to what a new borrow can draw, shown as borrowableLiquidity on Get Exit Liquidity. It moves no open loan. When withdrawals have used the reserve up, repayments refill it before any new borrow can draw again.

Path Parameters

string
required
Market ID.

Body Parameters

integer
required
Share of total liquidity held back from borrowing, in basis points. Integer, 0 to 5000. The contract refuses anything above 50 percent. 0 clears the reserve, and every unit of unlent liquidity becomes borrowable again.
string
Hash of the transaction you broadcast for this operation. Send it to confirm the transaction and record the result. Omit it to receive the calldata. When txHash is present, every other field is ignored.

Confirm the Change

Send the mined hash back to this path as { "txHash": "0x..." }. The API checks that the transaction called setReserveRatio on the market. It then reads the offering back from the chain and updates the market record.

Response Fields

The calldata response carries the transaction twice. transaction holds to and data. The same to and data also sit directly on data, and that is where the chainId and value binding lands, so sign from those four fields.
object

Error Codes

Confirming with txHash can also return any transaction verification error.