Skip to main content
GET
Scans every active loan in the market and returns those whose health factor is strictly below 1.0. This is a full scan of the market’s loan book, so response time grows with the number of loans. Poll it on a schedule rather than per page view.
This list covers one of the two liquidation triggers. A market that runs loan terms can also liquidate a loan whose term has run out, past its grace period, however healthy its collateral is. Those loans are not in this list, and this endpoint does not report them.A market’s term offering is on termConfig from Get Market Metrics. A market whose maxLoanDuration and terminalDueDate are both "0" makes open-ended loans, and for it this list is complete.For any other market, take the term side from List Positions, where each open position carries a term block. A position with term.enforceable: true is liquidatable now whatever its health factor says. Poll both and act on the union.

Path Parameters

string
required
Market ID.

Response Fields

object
When the chain read fails the endpoint returns 200 with totalActiveLoans: 0, an empty liquidatableLoans, and an onChainError string. An empty list is therefore not proof that no loan is liquidatable. Always check for onChainError before concluding the book is healthy.
Health factors are computed against the oracle’s stored price. If the price is stale the figures here are stale too. Push a current NAV with Sync Oracle Price before acting on this list, or pass a signedPrice when liquidating so the contract prices against a fresh value.