Skip to main content

TermRate

All rates are NOMINAL APR in PERCENT (3.85 = 3.85 %/yr) — never a fraction, never an APY.

kindstringrequired

variable-curve | variable-managed | user-set | fixed-term | zero-interest | prepaid | nav-accrual | none. A zero-interest market is NOT a free borrow — the cost is a one-off fee.

aprnumberrequired

Base rate only.

components objectrequired
basenumber
rewardsnumbernullable

PRICEABLE rewards only.

intrinsicnumbernullable
aprTotalnumberrequired

base + priceable rewards + intrinsic. Deliberately EXCLUDES points programs, which have no priceable value — see rewards[].indicative.

basisstringrequired

Possible values: [apr-nominal]

compoundingstring
sourcestring
isLockedbooleanrequired
minAprnumbernullable
maxAprnumbernullable
userSet objectnullable

Present when the BORROWER sets the rate (Liquity family). A borrow UI must render an input: the rate decides your place in the redemption queue, so the cheapest is also the first redeemed. Omit the rate on the action and the protocol applies default (the branch average).

requiredboolean
minnumbernullable
maxnumbernullable
defaultnumbernullable
adjustableboolean
adjustmentCostNotestringnullable
adjustmentCooldownSecsnumbernullable
rewards object[]nullable
  • Array [
  • asset objectnullable
    property name*anynullable
    kindstring

    token | points | unknown

    aprnumber
    sidestring

    Possible values: [supply, borrow]

    claimstring

    accrual | merkl | manual | none

    endsAtnumbernullable
    indicativebooleannullable

    Points — not priceable, and excluded from aprTotal.

  • ]
  • menu object[]nullable
  • Array [
  • termIdinteger

    Term identifier — MEANING IS LENDER-SPECIFIC. Exactly and TermMax: the pool/market unix MATURITY timestamp. Lista: the broker-defined product id. Teller: the duration in seconds (rolling term). Midnight and Term Finance: 0, a placeholder (single maturity per market, so the id carries no information). Pass to /v1/actions/lending/borrow?termId=…. Numeric on-chain; some upstream feeds serialize it as a string — coerce with Number() when comparing.

    Example: 2
    depositAprnumbernullable

    Annualised fixed LEND rate at this maturity, in percent (Exactly only — its fixed pools quote both sides).

    availablenumbernullable

    Borrowable liquidity at this maturity in loan-token human units (Exactly only).

    durationDaysnumber

    How long the position is locked at the fixed rate, in days (e.g. 7, 14, 30).

    Example: 7
    durationSecsnumbernullable

    Term duration in seconds (raw on-chain value).

    Example: 604800
    aprnumber

    Annualised borrow APR for this term, in percent (e.g. 3.85 = 3.85%). Same unit as variableBorrowRate / stableBorrowRate. For order-book markets (Midnight) this is the 0-notional top-of-book (cheapest) rate — see aprAtAmount for the size-weighted rate.

    Example: 3.85
    aprAtAmountnumbernullable

    Size-weighted (VWAP) borrow APR % at the supplied debt notional, for order-book fixed-term markets (Morpho Midnight): the borrow book filled cheapest-first, (Σ filledᵢ·aprᵢ)/amount. Present only when an amount is supplied AND the term carries an order-book ladder; broker rate cards (Lista, single flat rate) omit it and apr already applies at any size.

    fillablenumbernullable

    Total loan-token depth in this term's order book — the maximum borrow openable at this maturity. Present only for order-book terms with an amount supplied.

    cappedbooleannullable

    True when the supplied debt notional exceeds fillable — the book can't fully fund the borrow at this maturity (aprAtAmount is then the drain-the-book VWAP).

    ladder object[]nullable

    Order-book borrow ladder (best-borrow first) for order-book fixed-term markets (Midnight). Only serialized when depth=true (bulky). aprAtAmount is the pre-computed size-weighted rate; use this to re-derive it at any amount.

  • Array [
  • aprnumber

    Annualised borrow rate at this tier (%).

    unitsstring

    Credit/debt units at this tier (raw).

    assetsnumber

    Loan-token size available at this tier.

  • ]
  • ]
  • TermRate
    {
    "kind": "string",
    "apr": 0,
    "components": {
    "base": 0,
    "rewards": 0,
    "intrinsic": 0
    },
    "aprTotal": 0,
    "basis": "apr-nominal",
    "compounding": "string",
    "source": "string",
    "isLocked": true,
    "minApr": 0,
    "maxApr": 0,
    "userSet": {
    "required": true,
    "min": 0,
    "max": 0,
    "default": 0,
    "adjustable": true,
    "adjustmentCostNote": "string",
    "adjustmentCooldownSecs": 0
    },
    "rewards": [
    {
    "asset": {},
    "kind": "string",
    "apr": 0,
    "side": "supply",
    "claim": "string",
    "endsAt": 0,
    "indicative": true
    }
    ],
    "menu": [
    {
    "termId": 2,
    "depositApr": 0,
    "available": 0,
    "durationDays": 7,
    "durationSecs": 604800,
    "apr": 3.85,
    "aprAtAmount": 0,
    "fillable": 0,
    "capped": true,
    "ladder": [
    {
    "apr": 0,
    "units": "string",
    "assets": 0
    }
    ]
    }
    ]
    }