## Get lend/collateral/debt grouped by asset **get** `/api/v1/markets/merged` Get lend/collateral/debt grouped by asset ### Query Parameters - `with_text: optional boolean` Include text variation fields - `with_value: optional boolean` Calculate and include USD values for amounts, where applicable ### Returns - `count: number` Total number of objects irrespective of any pagination parameters. - `data: array of MergedMarket` - `asset_info: AssetInfo` Asset identifiers with associated metadata - `asset: AssetSpec` Provides a unique identifier for an asset for use throughout the Neptune API. IDs are unique across asset domains (contract tokens, native denoms, etc) - `id: string` - `group: "native" or "token"` - `"native"` - `"token"` - `group_key: string` - `classification: AssetClassification` The asset's classification metadata. Assets are classfied to provide context on their usage throughout the Neptune API (e.g. regular assets, neptune receipt tokens, LSTs, etc.) Each asset belongs to only a single classification type. This object contains metadata pertaining to the given classification. While some fields may be common among the distinct classifcations, each classification is distinct and subject to independent change. - `Regular = object { kind, neptune_receipt_asset }` - `kind: "regular"` - `"regular"` - `neptune_receipt_asset: AssetSpec` Provides a unique identifier for an asset for use throughout the Neptune API. IDs are unique across asset domains (contract tokens, native denoms, etc) - `NeptuneReceiptToken = object { kind, origin_asset }` - `kind: "neptune_receipt_token"` - `"neptune_receipt_token"` - `origin_asset: AssetSpec` Provides a unique identifier for an asset for use throughout the Neptune API. IDs are unique across asset domains (contract tokens, native denoms, etc) - `LiquidStakingToken = object { kind, origin_asset }` - `kind: "liquid_staking_token"` - `"liquid_staking_token"` - `origin_asset: AssetSpec` Provides a unique identifier for an asset for use throughout the Neptune API. IDs are unique across asset domains (contract tokens, native denoms, etc) - `metadata: AssetMetadata` Additional metadata for assets - `decimals_denom: number` Denom exponent, or num. of decimal places that shift between denom/standard amounts (e.g. `18` for `INJ`) - `decimals_display: number` Number of decimals used when displaying amounts of this asset (this is subjective and used for generating text representations) - `name: string` Full name of the asset - `symbol: string` Symbol of the asset, e.g.: `NEPT` `INJ` - `symbol_denom: string` Denom symbol for the asset (e.g. `inj` for `INJ`, `sat` for `BTC`) - `borrow_collateral: BorrowCollateralMarketData` Info for asset as collateral for borrow market, if one exists - `config: BorrowCollateralConfig` Collateral configuration parameters - `allowable_ltv: string` The loan to value ratio at which we allow collateral withdrawals or borrows. - `collateral_cap: string` The optional, global/shared maximum deposit limit for this collateral. - `enabled: boolean` Collateral enabled state - `extra: object { text, value }` - `text: object { allowable_ltv, collateral_cap, liquidation_ltv, 2 more }` Human-readable field variants. Will not be null when query param `with_text` is `true`. - `allowable_ltv: string` - `collateral_cap: string` - `liquidation_ltv: string` - `max_discount: string` - `min_discount: string` - `value: object { collateral_cap, extra, price }` USD values for the corresponding amounts above. Will not be null when query param `with_value` is `true`. ### Note This variant group contains an additional `price` field (set to the number used in value calculation). The embedded text group will contain the text variant if `with_text` was specified as well. - `collateral_cap: string` - `extra: object { text }` - `text: object { collateral_cap, price }` Human-readable variants of USD values. Will not be null when query params `with_text` and `with_value` are `true`. - `collateral_cap: optional string` - `price: optional string` Text representation of price - `price: string` Price used in value calculations - `liquidation_ltv: string` The loan to value ratio at which the collateral can be liquidated. - `max_discount: string` The maximum dynamic discount - `min_discount: string` The minimum dynamic discount. - `state: BorrowCollateralState` Current collateral state - `balance: string` - `collateral_sum: string` Total amount of this asset which is actively collateralized - `extra: object { text, value }` - `text: object { collateral_sum }` Human-readable field variants. Will not be null when query param `with_text` is `true`. - `collateral_sum: string` - `value: object { collateral_sum, extra, price }` USD values for the corresponding amounts above. Will not be null when query param `with_value` is `true`. ### Note This variant group contains an additional `price` field (set to the number used in value calculation). The embedded text group will contain the text variant if `with_text` was specified as well. - `collateral_sum: string` - `extra: object { text }` - `text: object { collateral_sum, price }` Human-readable variants of USD values. Will not be null when query params `with_text` and `with_value` are `true`. - `collateral_sum: string` - `price: string` Text representation of price - `price: string` Price used in value calculations - `borrow_debt: BorrowDebtMarketData` Info for asset as debt for borrow market, if one exists - `config: BorrowDebtConfig` Debt market configuration parameters - `borrow_cap: string` The global max amount which can be borrowed - `borrow_halt_utilization: string` The maximum utilization ratio at which new borrow positions can be opened. - `enabled: boolean` Market enabled state - `extra: object { text, value }` - `text: object { borrow_cap, borrow_halt_utilization, interest_fee }` Human-readable field variants. Will not be null when query param `with_text` is `true`. - `borrow_cap: string` - `borrow_halt_utilization: string` - `interest_fee: string` - `value: object { borrow_cap, extra, price }` USD values for the corresponding amounts above. Will not be null when query param `with_value` is `true`. ### Note This variant group contains an additional `price` field (set to the number used in value calculation). The embedded text group will contain the text variant if `with_text` was specified as well. - `borrow_cap: string` - `extra: object { text }` - `text: object { borrow_cap, price }` Human-readable variants of USD values. Will not be null when query params `with_text` and `with_value` are `true`. - `borrow_cap: optional string` - `price: optional string` Text representation of price - `price: string` Price used in value calculations - `interest_fee: string` The protocol (base) interest rate that is charged to borrowers. - `rate: MarketRate` Market rates - `apr: string` Market rate in APR standard as a decimal percentage - `apy: string` Market rate in APY standard as a decimal percentage - `extra: object { text }` - `text: object { apr, apy }` Human-readable field variants. Will not be null when query param `with_text` is `true`. - `apr: string` - `apy: string` - `state: BorrowDebtState` Current debt market state - `balance_sum: string` - `extra: object { text, value }` - `text: object { balance_sum, principal_sum, time_last_distributed_interest }` Human-readable field variants. Will not be null when query param `with_text` is `true`. - `balance_sum: string` - `principal_sum: string` - `time_last_distributed_interest: string` - `value: object { balance_sum, extra, price, principal_sum }` USD values for the corresponding amounts above. Will not be null when query param `with_value` is `true`. ### Note This variant group contains an additional `price` field (set to the number used in value calculation). The embedded text group will contain the text variant if `with_text` was specified as well. - `balance_sum: string` - `extra: object { text }` - `text: object { balance_sum, price, principal_sum }` Human-readable variants of USD values. Will not be null when query params `with_text` and `with_value` are `true`. - `balance_sum: string` - `price: string` Text representation of price - `principal_sum: string` - `price: string` Price used in value calculations - `principal_sum: string` - `principal_sum: string` - `time_last_distributed_interest: string` Timestamp used to keep track of the last time interest was distributed. - `utilization_accumulator: string` Asset utilization tracker. - `lend: LendMarketData` Info for asset's lending market, if one exists - `rate: MarketRate` Lending market rates - `state: LendMarketState` Current lending market state - `extra: object { text, value }` - `text: object { principal_sum, receipt_total_supply, redemption_ratio }` Human-readable field variants. Will not be null when query param `with_text` is `true`. - `principal_sum: string` - `receipt_total_supply: string` - `redemption_ratio: string` - `value: object { extra, price, principal_sum }` USD values for the corresponding amounts above. Will not be null when query param `with_value` is `true`. ### Note This variant group contains an additional `price` field (set to the number used in value calculation). The embedded text group will contain the text variant if `with_text` was specified as well. - `extra: object { text }` - `text: object { price, principal_sum }` Human-readable variants of USD values. Will not be null when query params `with_text` and `with_value` are `true`. - `price: string` Text representation of price - `principal_sum: string` - `price: string` Price used in value calculations - `principal_sum: string` - `principal_sum: string` The total amount of the asset deposited for lending in the market. - `receipt_total_supply: string` - `redemption_ratio: string` - `error: unknown` Error data. Guaranteed `null` for successful response. - `status: number` HTTP status. Successful responses are guaranteed to be < `400`. Conversely, error responses are guaranteed to be >= `400`. - `status_text: string` HTTP status text ### Example ```http curl https://api-v2.nept.finance/api/v1/markets/merged ``` #### Response ```json { "data": [ { "asset_info": { "asset": { "id": "native;inj", "group": "native", "group_key": "inj" }, "metadata": { "name": "Injective", "symbol": "INJ", "symbol_denom": "inj", "decimals_denom": 18, "decimals_display": 4 }, "classification": { "kind": "regular", "neptune_receipt_asset": { "id": "token;inj1rmzufd7h09sqfrre5dtvu5d09ta7c0t4jzkr2f", "group": "token", "group_key": "inj1rmzufd7h09sqfrre5dtvu5d09ta7c0t4jzkr2f" } } }, "lend": { "rate": { "apr": "0.06862234", "apy": "0.07103165", "extra": { "text": { "apy": "7.10%", "apr": "6.86%" } } }, "state": { "principal_sum": "425740748412504991838699", "receipt_total_supply": "396952939907783847231686", "redemption_ratio": "1.072521968249961422", "extra": { "text": { "redemption_ratio": "1.0725", "receipt_total_supply": "396,952.9399 nINJ", "principal_sum": "425,740.7484 INJ" }, "value": { "price": "2.99835", "principal_sum": "1276519.773002634342279563", "extra": { "text": { "price": "$2.99", "principal_sum": "$1,276,519.77" } } } } } }, "borrow_collateral": { "config": { "enabled": true, "collateral_cap": null, "allowable_ltv": "0.1", "liquidation_ltv": "0.7", "min_discount": "0.14", "max_discount": "0.16", "extra": { "text": { "min_discount": "14.00%", "allowable_ltv": "10.00%", "collateral_cap": "", "liquidation_ltv": "70.00%", "max_discount": "16.00%" }, "value": { "collateral_cap": null, "price": "2.99835", "extra": { "text": { "collateral_cap": null, "price": "$2.99" } } } } }, "state": { "collateral_sum": "7596263598527", "balance": "4255523766851", "extra": { "text": { "collateral_sum": "0.0000 INJ" }, "value": { "collateral_sum": "0.000022776256960643", "price": "2.99835", "extra": { "text": { "collateral_sum": "$0.00", "price": "$2.99" } } } } } }, "borrow_debt": { "rate": { "apr": "0.12867137", "apy": "0.13731631", "extra": { "text": { "apy": "13.73%", "apr": "12.86%" } } }, "config": { "enabled": true, "borrow_cap": null, "interest_fee": "0.01", "borrow_halt_utilization": "0.9", "extra": { "text": { "borrow_halt_utilization": "90.00%", "borrow_cap": "", "interest_fee": "1.00%" }, "value": { "price": "2.99835", "borrow_cap": null, "extra": { "text": { "price": "$2.99", "borrow_cap": null } } } } }, "state": { "principal_sum": "856896759772", "balance_sum": "6223567085599", "utilization_accumulator": "72507.562733515586636759", "time_last_distributed_interest": "2026-04-09T22:40:09.136032784Z", "extra": { "text": { "time_last_distributed_interest": "2026-04-09 10:40:09 PM +00:00", "principal_sum": "0.0000 INJ", "balance_sum": "0.0000 INJ" }, "value": { "principal_sum": "0.000002569276399662", "balance_sum": "0.000018660432371105", "price": "2.99835", "extra": { "text": { "price": "$2.99", "principal_sum": "$0.00", "balance_sum": "$0.00" } } } } } } } ], "count": 1, "error": null, "status": 200, "status_text": "200 OK" } ```