Skip to main content

LendingLatestResponse

Latest lending market data as a flat list of lender/chain entries. Returns only the lender keys requested via lenders=… (max 20 per request).

countintegerrequired

Number of lender/chain entries

items object[]required

Flat array of lender/chain entries

  • Array [
  • chainIdstringrequired

    EVM chain id, as a decimal string. See the ChainId schema.

    Example: 8453
    lenderInfo objectrequired

    Protocol/lender metadata (name, logo).

    keystring

    Lender key identifier

    Example: AAVE_V3
    namestringnullable

    Human-readable lender name

    Example: Aave V3
    logoURIstringnullable

    Lender logo URL

    Example: https://raw.githubusercontent.com/1delta-DAO/protocol-icons/main/lender/aave_v3.webp
    lastFetchednumbernullable

    Epoch ms of latest snapshot

    totalDepositsUsdnumberrequired

    Total deposits across all markets in USD

    totalDebtUsdnumberrequired

    Total debt across all markets in USD

    tvlUsdnumberrequired

    Total value locked in USD (deposits - debt)

    params objectnullable

    Lender-specific parameters. Only present for Morpho/Lista lenders (e.g. { market: { … } }).

    property name*anynullable

    Lender-specific parameters. Only present for Morpho/Lista lenders (e.g. { market: { … } }).

    fixedTerm objectnullable

    Fixed-term descriptor for this lender key. Absent/null on variable-rate lenders. For Term Finance read fixedTerm.auction.canBorrow before offering a borrow — most repos sit between auction rounds and cannot be borrowed even though they quote a rate.

    modelstring

    Underlying fixed-term protocol shape.

    Possible values: [lista, midnight, term, exactly, teller, termmax]

    Example: term
    maturityintegernullable

    Single fixed calendar maturity, unix seconds. Absent for rolling-duration menus (Lista) and multi-maturity markets (Exactly — the menu lives on terms[]).

    fees object

    Market-level fees: continuousFeeApr (%/yr lender-side haircut, Midnight), settlementFee (fraction at the current TTM, Midnight), latePenaltyApr (%/yr on overdue debt, Exactly), originationFeePercent (upfront % of principal, Teller). Empty for lenders without them.

    property name*any

    Market-level fees: continuousFeeApr (%/yr lender-side haircut, Midnight), settlementFee (fraction at the current TTM, Midnight), latePenaltyApr (%/yr on overdue debt, Exactly), originationFeePercent (upfront % of principal, Teller). Empty for lenders without them.

    earlyRepay object

    Early-repayment policy: { kind: "none" | "penalty" | "discount" }. none = exit any time at market price; penalty = per-loan penalty (amount is position-level); discount = repaying early costs LESS than face value (Exactly).

    property name*any

    Early-repayment policy: { kind: "none" | "penalty" | "discount" }. none = exit any time at market price; penalty = per-loan penalty (amount is position-level); discount = repaying early costs LESS than face value (Exactly).

    provider object

    Who fronts the term: { kind: "broker" | "orderbook" | "auction" | "pool", address? }. auction markets carry the auction window below and can only be borrowed inside a round.

    property name*any

    Who fronts the term: { kind: "broker" | "orderbook" | "auction" | "pool", address? }. auction markets carry the auction window below and can only be borrowed inside a round.

    auction object

    Origination window for a fixed-term market whose terms are only obtainable during a bounded round rather than continuously — Term Finance (fixedTerm.provider.kind = "auction"). Served on fixedTerm.auction; ABSENT on lenders whose terms are continuously available, and absent is NOT the same as closed.

    This is the difference between "the rate card is empty right now" and "this market cannot be borrowed at all": between rounds a Term repo still has a maturity, collateral params and a last-cleared rate, but nothing can be borrowed. Most repos are between rounds at any given time.

    statusstring

    upcoming — a round is listed but not yet accepting submissions. open — accepting sealed bids/offers. revealing — bidding shut, sealed prices revealing and the round clearing. closed — no round is listed. Snapshot at fetch time; re-derive from the timestamps against the current clock when reading a cached response.

    Possible values: [upcoming, open, revealing, closed]

    Example: open
    canBorrowboolean

    Can a NEW borrow be opened right now? Gate the borrow CTA on this, not on status and not on the presence of a rate — it stays correct if more statuses are added. True only inside an open round: Term borrow origination is a sealed bid, so there is no other entry point.

    Example: true
    canLendboolean

    Can a NEW lend position be opened right now? Deliberately independent of canBorrow — the primary auction is only one of two lend surfaces, and buying repo tokens on the secondary market works between rounds. A closed round therefore leaves the market lend-only, not inert; greying out the whole market would be wrong.

    Example: true
    secondsUntilCloseintegernullable

    Seconds until submissions close (revealTime − now). Absent unless a round is open. A snapshot — for a live countdown derive from revealTime, since responses are cached.

    Example: 263000
    implicationsstring[]

    Ready-to-display consequences of this market's origination model, most important first (same convention as params.market.teller.implications). Auction mechanics are unusual enough that showing only a rate misleads.

    idstringnullable

    Auction round id. Absent when status: "closed".

    startTimeintegernullable

    Submissions open, unix seconds. Absent when closed.

    revealTimeintegernullable

    Submissions CLOSE and sealed prices begin revealing, unix seconds — the deadline to act. Absent when closed.

    endTimeintegernullable

    Round clears, unix seconds. Equal to revealTime on current deployments. Absent when closed.

    minBorrowAmountstringnullable

    Minimum bid (borrow) size for this round, loan-token BASE units. A real floor (e.g. "1000000000" = 1000 USDC) — a smaller amount cannot be submitted at all, so validate before building the action rather than surfacing a failed transaction.

    Example: 1000000000
    minLendAmountstringnullable

    Minimum offer (lend) size for this round, loan-token BASE units.

    Example: 1000000000
    markets object[]required

    Individual lending markets for this lender on this chain

  • Array [
  • lenderKeystring

    Protocol identifier

    Example: AAVE_V3
    poolIdstring

    Pool/vault address or protocol-specific ID

    depositRatenumbernullable

    Deposit APR (percent)

    variableBorrowRatenumbernullable

    Variable borrow APR (percent)

    stableBorrowRatenumbernullable

    Stable borrow APR (percent)

    intrinsicYieldnumbernullable

    Intrinsic yield APR from underlying asset (e.g. stETH staking)

    totalDepositsnumbernullable

    Total deposits in token units

    totalDebtStablenumbernullable

    Total stable debt in token units

    totalDebtnumbernullable

    Total variable debt in token units

    totalLiquiditynumbernullable

    Available liquidity (totalDeposits - totalDebt) in token units

    totalDepositsUsdnumbernullable

    Total deposits in USD

    totalDebtStableUsdnumbernullable

    Total stable debt in USD

    totalDebtUsdnumbernullable

    Total variable debt in USD

    totalLiquidityUsdnumbernullable

    Available liquidity in USD

    utilizationnumbernullable

    Utilization ratio (totalDebt / totalDeposits)

    decimalsintegernullable

    Token decimals — divide raw amounts by 10 ** decimals.

    underlyingInfo object

    Nested asset metadata, oracle prices, and market prices for a lending market.

    asset object

    Token metadata for an underlying asset.

    chainIdstring

    EVM chain id, as a decimal string. See the ChainId schema.

    Example: 1
    addressstring

    Token contract address (lowercase)

    Example: 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
    symbolstring

    Token symbol, e.g. WETH.

    Example: USDC
    namestring

    Human-readable display name.

    Example: USD Coin
    decimalsintegernullable

    Token decimals — divide raw amounts by 10 ** decimals.

    Example: 6
    logoURIstringnullable

    URL of the logo image.

    assetGroupstringnullable

    Canonical asset group (e.g. "USDC", "ETH", "BTC")

    Example: USDC
    currencyIdstringnullable
    props objectnullable

    Protocol-specific asset properties

    property name*anynullable

    Protocol-specific asset properties

    oraclePrice object

    On-chain oracle price data.

    oraclePricenumbernullable

    Raw on-chain oracle price

    oraclePriceUsdnumbernullable

    Oracle price denominated in USD

    prices object

    Market prices for an asset with 24h comparison.

    priceUsdnumbernullable

    Current price in USD

    priceTsstring<date-time>nullable

    Timestamp of current price

    priceUsd24hnumbernullable

    Price 24 hours ago in USD

    priceTs24hstring<date-time>nullable

    Timestamp of 24h-ago price

    priceChange24hnumbernullable

    Percentage price change over 24h

    oracleInfo objectnullable

    Oracle feed-correctness classification for the market's price oracle(s). null when the market has no oracle classification.

    This is feed correctness — does the oracle price the right asset in the right unit — and is distinct from the price-staleness signal carried in risk.breakdown[oracle] (a 1–5 score). A market can have several feeds (Compound comets price each collateral asset; Fluid prices each vault side), so feeds is an array and worstScore/worstBand summarize the riskiest one.

    Scoring (per feed, additive): score = provider base + flag penalties, clamped 0–100.

    Provider base (oracle mechanism; first match wins):

    ProviderBase
    chainlink, price-cap10
    redstone/pyth/chronicle/… and unrecognized18
    composite / cross-feed22
    exchange-rate / pendle-pt / LST rate adapters28
    twap/uniswap/DEX30
    fixed-rate / constant55

    Flag penalties (added on top): wrong-asset +45 · correlated-proxy +18 · cross-numeraire +18 · undecoded-source +8.

    Bands: LOW < 25 · MEDIUM 25–49 · HIGH 50–74 · CRITICAL ≥ 75.

    feeds object[]required

    Per-feed classifications, ordered worst-first.

  • Array [
  • assetstringnullable

    Priced asset symbol (the reported numerator).

    oraclestringnullable

    Oracle / feed / adapter address (lowercased).

    providerstringnullable

    Oracle mechanism: chainlink, redstone, pyth, chronicle, composite, price-cap (Aave PriceCapAdapter), exchange-rate (correlated/LST, e.g. Venus OneJumpOracle), pendle-pt, constant, or a lender-specific stub (compound-v2-oracle, dolomite-oracle, fluid-oracle).

    priceDescriptionstringnullable

    Decoded reported pair, e.g. "WBTC / USD"; "UNKNOWN" when the source could not be decoded.

    intendedPairstringnullable

    What the feed should report: "<asset> / <numeraire>".

    correctOraclebooleannullable

    Does the feed price the intended asset (numerator match)? null = unverifiable.

    denominatorMatchbooleannullable

    Is the feed denominated in the right numeraire (e.g. the loan token / market unit)? null = unknown.

    fixedRateboolean

    Hardcoded/constant price feed.

    scoreinteger

    Feed risk score 0–100. See OracleInfo for the model.

    bandstring

    Risk band for score.

    Possible values: [LOW, MEDIUM, HIGH, CRITICAL]

    flagsstring[]

    Risk flags: wrong-asset, correlated-proxy, cross-numeraire, undecoded-source, fixed-rate, unrecognized-provider.

  • ]
  • worstScoreintegerrequired

    Highest (worst) score across feeds.

    worstBandstringrequired

    Band of the worst feed.

    Possible values: [LOW, MEDIUM, HIGH, CRITICAL]

    caps object

    Supply, borrow, and debt ceiling caps for a lending market.

    borrowCapnumbernullable

    Maximum borrowable amount (token units)

    supplyCapnumbernullable

    Maximum depositable amount (token units)

    debtCeilingstringnullable

    Isolation-mode debt ceiling

    flags object

    Boolean flags describing the operational status of a lending market. Values may be null if unavailable from the protocol.

    isActivebooleannullable

    Whether the market is active

    isFrozenbooleannullable

    Whether the market is frozen (no new deposits/borrows)

    hasStablebooleannullable

    Whether stable-rate borrowing is available

    borrowingEnabledbooleannullable

    Whether borrowing is enabled

    depositsEnabledbooleannullable

    Whether deposits are enabled

    collateralActivebooleannullable

    Whether the asset can be used as collateral

    variableBorrowDisabledbooleannullable

    Whether variable-rate borrowing is unavailable through 1delta for this market. true for Lista DAO fixed-term (brokered) markets, where borrows must go through the broker and pick a fixed term from terms[]. Together with a non-empty terms[] this is the canonical "brokered market" signal — such markets report variableBorrowRate = 0 but cannot be borrowed variably.

    rewards object[]

    Active reward programs. Defaults to [] when none.

  • Array [
  • assetstring

    Reward token address, lowercased. For a points program (kind: "points") there is no token and this is a synthetic points:<sourceId> key.

    symbolstringnullable

    Reward token symbol. Denormalized deliberately — reward tokens are routinely absent from the asset table (aMonUSDe, WMON, aHorRwaRLUSD are live examples), so a join would leave them unnamed.

    decimalsintegernullable

    Token decimals — divide raw amounts by 10 ** decimals.

    logoURIstringnullable

    URL of the logo image.

    depositRatenumber

    Reward APR on deposits

    variableBorrowRatenumber

    Reward APR on variable borrows

    stableBorrowRatenumber

    Reward APR on stable borrows

    kindstringnullable

    token | points. Points are NOT priceable and must be shown separately from any headline APR.

    claimstringnullable

    How the reward is realized, i.e. whether the APR is bankable. accrual — claimable from the protocol on-chain; merkl — off-chain merkle distribution; manual.

    sourcestring

    LEGACY mechanism tag (merkle, onchain-incentives, native) — it cannot distinguish two programs on the same platform. Prefer sourceId.

    sourceIdstringnullable

    Stable program identifier, safe to key on: merkl:aave, merkl:euler, merkl:morpho, dtrinity:rebate.

    sourceLabelstringnullable

    Display string for the program, e.g. Merkl · Aave.

    linkstringnullable

    Deep link to THIS program — the exact Merkl opportunity page, not a protocol homepage.

    endsAtnumbernullable

    Unix seconds the program stops paying. An APR with two weeks left is not the same product as a standing rate, so render it.

    startsAtnumbernullable
    dailyRewardsUsdnumbernullable

    Program-wide payout rate in USD/day, as the source reports it.

    refs objectnullable

    Platform identifiers verbatim — Merkl campaign ids and opportunity type, or the incentives-controller address for an on-chain program. For support and deduplication, not display.

    property name*anynullable

    Platform identifiers verbatim — Merkl campaign ids and opportunity type, or the incentives-controller address for an on-chain program. For support and deduplication, not display.

  • ]
  • config object

    Risk config keyed by mode/category ID (e.g. "0" for default, "1" for e-mode)

    property name* MarketConfigEntry

    Risk parameters for a specific e-mode or collateral category.

    categorystring

    E-mode category identifier

    Example: 1
    labelstring

    Human-readable label for this config category

    Example: ETH correlated
    borrowCollateralFactornumbernullable

    LTV for borrowing (0-1)

    Example: 0.8
    collateralFactornumbernullable

    Liquidation threshold (0-1)

    Example: 0.85
    borrowFactornumbernullable

    Borrow factor (typically 1)

    Example: 1
    liquidationPenaltynumbernullable

    Liquidation penalty for this mode, as a fraction of repaid debt the liquidator receives on top of par (e.g. 0.05 = 5%). Mode-specific where supported (Aave e-modes, Dolomite categories, Euler vaults).

    Example: 0.05
    closeFactornumbernullable

    Max fraction of debt repayable per liquidation (0-1). Mirrors the pool-level closeFactor; not e-mode-specific in any supported protocol, so the same value across every mode of a market.

    Example: 0.5
    targetHealthFactornumbernullable

    Liquidation target health factor (e.g. 1.05). Set only by protocols that liquidate to a target HF instead of a fixed close factor (Aave V4, spoke-level); omitted otherwise.

    Example: 1.05
    collateralDisabledboolean
    debtDisabledboolean
    terms object[]nullable

    Fixed-term rate card for Lista DAO brokered markets. Non-empty ⇒ the market is brokered (borrow via the broker, pick a termId); null ⇒ a regular variable-rate market. Together with flags.variableBorrowDisabled this is the canonical brokered-market signal.

  • 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.

  • ]
  • ]
  • brokerstringnullable

    Lista DAO LendingBroker contract address — the mandatory gateway for the debt side (borrow/repay) of a brokered market. Present (non-zero) only for brokered markets. The borrow/repay calldata routes through this contract (the SDK and worker resolve it automatically).

    Example: 0x1fa26015286d1270343d7526c60bd57ab6be8b54
    collateralProviderstringnullable

    Lista DAO collateral-provider contract for this market. When set (non-zero), Moolah gates supplyCollateral/withdrawCollateral behind it, so collateral deposits/withdrawals must route through this provider rather than calling Moolah directly (the SDK/worker handle this). Set for markets whose collateral is a Lista-managed token (e.g. slisBNB); null for plain ERC-20 collateral.

    Example: 0x33f7a980a246f9b8fea2254e3065576e127d4d5f
    loanProviderstringnullable

    Lista DAO loan-token provider contract for this market (e.g. the native-WBNB wrapper provider). When set, loan-token operations are gated behind it; for brokered markets the broker handles the debt side. Informational — consumers do not pass it; the SDK/worker resolve routing automatically.

    Example: 0x367384c54756a25340c63057d87ea22d47fd5701
    closeFactornumbernullable

    Max fraction of a borrower's debt repayable in a single liquidation (0-1). Aave ~0.5 (rises to 1 below the close-factor health threshold), Compound V2 closeFactorMantissa; 1 (full liquidation) for isolated / credit-account protocols (Compound V3, Morpho, Euler, Fluid, Gearbox, Dolomite, Silo).

    Example: 0.5
    targetHealthFactornumbernullable

    Liquidation target health factor (e.g. 1.05). Set only by protocols that liquidate to a target HF rather than a fixed close factor (Aave V4, spoke-level); omitted otherwise.

    Example: 1.05
    lenderInfo object

    Protocol/lender metadata (name, logo).

    keystring

    Lender key identifier

    Example: AAVE_V3
    namestringnullable

    Human-readable lender name

    Example: Aave V3
    logoURIstringnullable

    Lender logo URL

    Example: https://raw.githubusercontent.com/1delta-DAO/protocol-icons/main/lender/aave_v3.webp
    termSheet objectnullable

    Structured description of this market’s lend and borrow offer. Shape depends on the terms query param: digest (default) or full. Absent when terms=none.

    oneOf
    schemaVersioninteger
    profileIdstring
    marketUidstring

    Market identifier, formatted lender:chainId:address.

    supply object
    property name*any
    borrow object
    property name*any
    oracle object
    property name*any
    governance object
    property name*any
    utilizationnumbernullable

    Market utilization, as a fraction between 0 and 1.

    property name*any

    Enriched lending market data as returned by /lending and /pools endpoints. Numeric fields are parsed to number | null.

  • ]
  • ]
  • LendingLatestResponse
    {
    "count": 0,
    "items": [
    {
    "chainId": "8453",
    "lenderInfo": {
    "key": "AAVE_V3",
    "name": "Aave V3",
    "logoURI": "https://raw.githubusercontent.com/1delta-DAO/protocol-icons/main/lender/aave_v3.webp"
    },
    "lastFetched": 0,
    "totalDepositsUsd": 0,
    "totalDebtUsd": 0,
    "tvlUsd": 0,
    "params": {},
    "fixedTerm": {
    "model": "term",
    "maturity": 0,
    "fees": {},
    "earlyRepay": {},
    "provider": {},
    "auction": {
    "status": "open",
    "canBorrow": true,
    "canLend": true,
    "secondsUntilClose": 263000,
    "implications": [
    "string"
    ],
    "id": "string",
    "startTime": 0,
    "revealTime": 0,
    "endTime": 0,
    "minBorrowAmount": "1000000000",
    "minLendAmount": "1000000000"
    }
    },
    "markets": [
    {
    "lenderKey": "AAVE_V3",
    "poolId": "string",
    "depositRate": 0,
    "variableBorrowRate": 0,
    "stableBorrowRate": 0,
    "intrinsicYield": 0,
    "totalDeposits": 0,
    "totalDebtStable": 0,
    "totalDebt": 0,
    "totalLiquidity": 0,
    "totalDepositsUsd": 0,
    "totalDebtStableUsd": 0,
    "totalDebtUsd": 0,
    "totalLiquidityUsd": 0,
    "utilization": 0,
    "decimals": 0,
    "underlyingInfo": {
    "asset": {
    "chainId": "1",
    "address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
    "symbol": "USDC",
    "name": "USD Coin",
    "decimals": 6,
    "logoURI": "string",
    "assetGroup": "USDC",
    "currencyId": "string",
    "props": {}
    },
    "oraclePrice": {
    "oraclePrice": 0,
    "oraclePriceUsd": 0
    },
    "prices": {
    "priceUsd": 0,
    "priceTs": "2024-07-29T15:51:28.071Z",
    "priceUsd24h": 0,
    "priceTs24h": "2024-07-29T15:51:28.071Z",
    "priceChange24h": 0
    }
    },
    "oracleInfo": {
    "feeds": [
    {
    "asset": "string",
    "oracle": "string",
    "provider": "string",
    "priceDescription": "string",
    "intendedPair": "string",
    "correctOracle": true,
    "denominatorMatch": true,
    "fixedRate": true,
    "score": 0,
    "band": "LOW",
    "flags": [
    "string"
    ]
    }
    ],
    "worstScore": 0,
    "worstBand": "LOW"
    },
    "caps": {
    "borrowCap": 0,
    "supplyCap": 0,
    "debtCeiling": "string"
    },
    "flags": {
    "isActive": true,
    "isFrozen": true,
    "hasStable": true,
    "borrowingEnabled": true,
    "depositsEnabled": true,
    "collateralActive": true,
    "variableBorrowDisabled": true
    },
    "rewards": [
    {
    "asset": "string",
    "symbol": "string",
    "decimals": 0,
    "logoURI": "string",
    "depositRate": 0,
    "variableBorrowRate": 0,
    "stableBorrowRate": 0,
    "kind": "string",
    "claim": "string",
    "source": "string",
    "sourceId": "string",
    "sourceLabel": "string",
    "link": "string",
    "endsAt": 0,
    "startsAt": 0,
    "dailyRewardsUsd": 0,
    "refs": {}
    }
    ],
    "config": {},
    "terms": [
    {
    "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
    }
    ]
    }
    ],
    "broker": "0x1fa26015286d1270343d7526c60bd57ab6be8b54",
    "collateralProvider": "0x33f7a980a246f9b8fea2254e3065576e127d4d5f",
    "loanProvider": "0x367384c54756a25340c63057d87ea22d47fd5701",
    "closeFactor": 0.5,
    "targetHealthFactor": 1.05,
    "lenderInfo": {
    "key": "AAVE_V3",
    "name": "Aave V3",
    "logoURI": "https://raw.githubusercontent.com/1delta-DAO/protocol-icons/main/lender/aave_v3.webp"
    },
    "termSheet": {
    "schemaVersion": 0,
    "profileId": "string",
    "marketUid": "string",
    "supply": {},
    "borrow": {},
    "oracle": {},
    "governance": {},
    "utilization": 0
    }
    }
    ]
    }
    ]
    }