borrowLendState WebSocket channel uses the same payload.
Endpoint
Request Body
Response
Earn Summary Units
earn.apy and earn.borrowApr are integer basis points: 525 represents 5.25%. earn.utilization
is a decimal ratio, and tvl and available are decimal USDC strings. nextAccrualTimestamp is a
Unix-millisecond timestamp or null. If pool state is unavailable, the earn summary can contain
zero values and a null accrual timestamp.
When the pUSD pool is active and readable, the response also includes
earnPusd with the same
fields, denominated in pUSD. Its interestApr is derived from the recorded pool rate (borrowed
capital times borrowApr over activeAssets) and is never null, capacityAssets is active plus
pending capital, and nextAccrualTimestamp is the next hourly epoch close. If balance totals
cannot be read, earnPusd.tvl is null; its rates, capital figures, available liquidity,
utilization, and accrual timestamp remain available. Treat null TVL as unavailable, not zero. A
measured zero is the string "0.00". The entire earnPusd block is omitted only when the pool is
inactive or its own state cannot be read or validated. These semantics also apply to the WebSocket
borrowLendState stream.