---
title: "Get lending markets"
method: GET
path: "/api/v1/markets/lend"
tags: ["Market"]
---

# Get lending markets

`GET /api/v1/markets/lend`

## Query parameters

- `with_text` boolean — Include text variation fields
- `with_value` boolean — Calculate and include USD values for amounts, where applicable

## Response `200`

Success response

- LendMarketListResponse
  - `data` LendMarket[], required
    - `asset_info` AssetInfo, required — Asset identifiers with associated metadata
      - `asset` AssetSpec, required — 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, required
        - `group` union, required
          - 'native'
          - 'token'
        - `group_key` string, required
      - `metadata` AssetMetadata, required — Additional metadata for assets
        - `name` string, required — Full name of the asset
        - `symbol` string, required — Symbol of the asset, e.g.: `NEPT` `INJ`
        - `symbol_denom` string, required — Denom symbol for the asset (e.g. `inj` for `INJ`, `sat` for `BTC`)
        - `decimals_denom` integer, required — Denom exponent, or num. of decimal places that shift between denom/standard amounts (e.g. `18` for `INJ`)
        - `decimals_display` integer, required — Number of decimals used when displaying amounts of this asset (this is subjective and used for generating text representations)
      - `classification` union, required — 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.
        - object
          - `kind` 'regular', required
          - `neptune_receipt_asset` AssetSpec, required — 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, required
            - `group` union, required
              - …
            - `group_key` string, required
        - object
          - `kind` 'neptune_receipt_token', required
          - `origin_asset` AssetSpec, required — 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, required
            - `group` union, required
              - …
            - `group_key` string, required
        - object
          - `kind` 'liquid_staking_token', required
          - `origin_asset` AssetSpec, required — 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, required
            - `group` union, required
              - …
            - `group_key` string, required
    - `rate` MarketRate, required
      - `apr` string, required — Market rate in APR standard as a decimal percentage
      - `apy` string, required — Market rate in APY standard as a decimal percentage
      - `extra` object, required
        - `text` object, nullable, required — Human-readable field variants. Will not be null when query param `with_text` is `true`.
          - `apr` string, required
          - `apy` string, required
    - `state` LendMarketState, required
      - `principal_sum` string, required — The total amount of the asset deposited for lending in the market.
      - `receipt_total_supply` string, required
      - `redemption_ratio` string, required
      - `extra` object, required
        - `text` object, nullable, required — Human-readable field variants. Will not be null when query param `with_text` is `true`.
          - `receipt_total_supply` string, required
          - `principal_sum` string, required
          - `redemption_ratio` string, required
        - `value` object, nullable, required — USD values for the corresponding amounts above. Will not be null when query param `with_value` is `true`.
          - `principal_sum` string, required
          - `extra` object, required
            - `text` object, nullable, required — Human-readable variants of USD values. Will not be null when query params `with_text` and `with_value` are `true`.
              - …
  - `count` integer, required — Total number of objects irrespective of any pagination parameters.
  - `error` unknown, required
  - `status` integer, required — HTTP status. Successful responses are guaranteed to be < `400`. Conversely, error responses are guaranteed to be >= `400`.
  - `status_text` string, required — HTTP status text

## Other responses

- `500` — Server error response
- `default`

## Changes

- **2026-03-31** `09b5978b7e7d` — 4 breaking, 10 info
  - added `subschema #9: JSON invalid, subschema #10: JSON decode, subschema #11: JSON body deserialize failure` to the `error/allOf[#/components/schemas/ErrorDataVariants]/anyOf[subschema #1: General/common error -> subschema #2: General/common error]/allOf[#/components/schemas/ErrorData]/kind/allOf[#/components/schemas/ErrorKind]/` response property `oneOf` list for the response status `500`
  - added `subschema #9: JSON invalid, subschema #10: JSON decode, subschema #11: JSON body deserialize failure` to the `error/allOf[#/components/schemas/ErrorDataVariants]/anyOf[subschema #1: General/common error -> subschema #2: General/common error]/allOf[#/components/schemas/ErrorData]/kind/allOf[#/components/schemas/ErrorKind]/` response property `oneOf` list for the response status `default`
  - removed the required property `count` from the response with the `500` status
  - removed the required property `count` from the response with the `default` status
  - …10 more
- **2026-03-30** `5768d4f43166` — 2 info
  - added `#/components/schemas/ErrorDataVariants` to the `error` response property `allOf` list for the response status `500`
  - removed `subschema #1: General/common error, subschema #2: Validation error` from the `error` response property `anyOf` list for the response status `500`
- …earlier changes not shown

[Full history](https://skmtc.dev/cryptechdev/apis/neptune-api-v2/changes/api/v1/markets/lend/get.md)

---

[API](https://skmtc.dev/cryptechdev/apis/neptune-api-v2.md) · [All operations](https://skmtc.dev/cryptechdev/apis/neptune-api-v2/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/cryptechdev/neptune-api-v2/revisions/09b5978b7e7d/schema)
