---
title: "Get user market portfolio"
method: GET
path: "/api/v1/users/{address}/markets"
tags: ["User"]
---

# Get user market portfolio

`GET /api/v1/users/{address}/markets`

## Path parameters

- `address` string, required — The user account address

## Query parameters

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

## Response `200`

- object
  - `data` UserMarket, required
    - `borrow` UserBorrowMarket, required
      - `accounts` UserBorrowMarketAccount[], required — Market sub-accounts for the user
        - `index` integer, required — Account index
        - `collaterals` UserCollateralAssetPool[], required — Account collateral allocations
          - `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)
              - …
            - `metadata` AssetMetadata, required — Additional metadata for assets
              - …
            - `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.
              - …
          - `amount` string, required — Amount of this asset which is actively collateralized
          - `extra` object, required
            - `text` object, nullable, required — Human-readable field variants. Will not be null when query param `with_text` is `true`.
              - …
            - `value` object, nullable, required — USD values for the corresponding amounts above. Will not be null when query param `with_value` is `true`.
              - …
        - `debts` UserDebtAssetPool[], required — Account debt allocations
          - `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)
              - …
            - `metadata` AssetMetadata, required — Additional metadata for assets
              - …
            - `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.
              - …
          - `principal` string, required — Initial amount borrowed (of debts which have not yet been repaid)
          - `interest` string, required — Sum of accrued interest for open debt position
          - `debt` string, required — Sum open debt amount (this is simply the principal + interest)
          - `extra` object, required
            - `text` object, nullable, required — Human-readable field variants. Will not be null when query param `with_text` is `true`.
              - …
            - `value` object, nullable, required — USD values for the corresponding amounts above. Will not be null when query param `with_value` is `true`.
              - …
        - `health` UserAccountHealth, required
          - `base` string, required — Account health value, before any added health boosts
          - `boost` string, required — Account health boost to be applied
          - `result` string, required — Account health, with boost
          - `extra` object, required
            - `text` object, nullable, required — Human-readable field variants. Will not be null when query param `with_text` is `true`.
              - …
      - `totals` UserBorrowMarketPools, required
        - `collaterals` UserCollateralAssetPool[], required — Account collateral allocations
          - `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)
              - …
            - `metadata` AssetMetadata, required — Additional metadata for assets
              - …
            - `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.
              - …
          - `amount` string, required — Amount of this asset which is actively collateralized
          - `extra` object, required
            - `text` object, nullable, required — Human-readable field variants. Will not be null when query param `with_text` is `true`.
              - …
            - `value` object, nullable, required — USD values for the corresponding amounts above. Will not be null when query param `with_value` is `true`.
              - …
        - `debts` UserDebtAssetPool[], required — Account debt allocations
          - `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)
              - …
            - `metadata` AssetMetadata, required — Additional metadata for assets
              - …
            - `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.
              - …
          - `principal` string, required — Initial amount borrowed (of debts which have not yet been repaid)
          - `interest` string, required — Sum of accrued interest for open debt position
          - `debt` string, required — Sum open debt amount (this is simply the principal + interest)
          - `extra` object, required
            - `text` object, nullable, required — Human-readable field variants. Will not be null when query param `with_text` is `true`.
              - …
            - `value` object, nullable, required — USD values for the corresponding amounts above. Will not be null when query param `with_value` is `true`.
              - …
    - `lend` UserLendMarket, required
      - `asset_pools` UserDebtAssetPool[], required — User lending allocations
        - `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
              - …
            - `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
              - …
            - object
              - …
            - object
              - …
        - `principal` string, required — Initial amount borrowed (of debts which have not yet been repaid)
        - `interest` string, required — Sum of accrued interest for open debt position
        - `debt` string, required — Sum open debt amount (this is simply the principal + interest)
        - `extra` object, required
          - `text` object, nullable, required — Human-readable field variants. Will not be null when query param `with_text` is `true`.
            - `principal` string, required
            - `interest` string, required
            - `debt` string, required
          - `value` object, nullable, required — USD values for the corresponding amounts above. Will not be null when query param `with_value` is `true`.
            - `interest` string, required
            - `debt` string, required
            - `principal` string, required
            - `extra` object, required
              - …
  - `error` ErrorData, required
    - `scope` union, required
      - 'user'
      - 'client'
      - 'server'
    - `kind` union, required
      - 'invalid_request'
      - 'validation'
      - 'entity_not_found'
      - 'contract'
      - 'internal'
    - `message` string, required — Error message
    - `fields` FieldValidationError[], nullable, required — List of names and error messages for invalid fields. Never NULL when `error.kind == 'validation'`. Always NULL for all other cases.
      - `field` string, required
      - `message` string, required
  - `status` integer, required — Request status
  - `status_text` string, required — Request status text

## Changes

- **2026-03-01** `9048b9a34641` — 14 breaking, 73 info
  - added `subschema #1: Invalid request, subschema #2: Validation error, subschema #3: Requested entity not found, subschema #4: Contract error, subschema #5: Internal server error` to the `error/anyOf[#/components/schemas/ErrorData]/kind/allOf[#/components/schemas/ErrorKind]/` response property `oneOf` list for the response status `200`
  - added `subschema #1: Native token, subschema #2: CW20 token` to the `data/anyOf[#/components/schemas/UserMarket]/borrow/allOf[#/components/schemas/UserBorrowMarket]/accounts/items/collaterals/items/asset_info/allOf[#/components/schemas/AssetInfo]/asset/allOf[#/components/schemas/AssetSpec]/group` response property `oneOf` list for the response status `200`
  - added `subschema #1: Native token, subschema #2: CW20 token` to the `data/anyOf[#/components/schemas/UserMarket]/borrow/allOf[#/components/schemas/UserBorrowMarket]/accounts/items/debts/items/asset_info/allOf[#/components/schemas/AssetInfo]/asset/allOf[#/components/schemas/AssetSpec]/group` response property `oneOf` list for the response status `200`
  - added `subschema #1: Native token, subschema #2: CW20 token` to the `data/anyOf[#/components/schemas/UserMarket]/borrow/allOf[#/components/schemas/UserBorrowMarket]/totals/allOf[#/components/schemas/UserBorrowMarketPools]/collaterals/items/asset_info/allOf[#/components/schemas/AssetInfo]/asset/allOf[#/components/schemas/AssetSpec]/group` response property `oneOf` list for the response status `200`
  - …83 more

[Change history](https://skmtc.dev/cryptechdev/apis/neptune-api-v2/changes/api/v1/users/:address/markets/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/9048b9a34641/schema)
