---
title: "Get Account Portfolio"
method: GET
path: "/accounts/{accountAddress}/portfolio"
tags: ["Utilities"]
---

# Get Account Portfolio

`GET /accounts/{accountAddress}/portfolio`

## Request

- The document declares no server URL.
- Auth: none declared. Required headers: `x-api-version`, `x-api-key`
- TypeScript: <https://skmtc.dev/rhinestonewtf/apis/rhinestone-orchestrator-api/docs/accounts/:accountAddress/portfolio/get.ts> (a function with typed inputs; its response is checked against the schema)

Retrieves the token balances across all supported chains for a user's abstracted account

## Path parameters

- `accountAddress` string, required

## Query parameters

- `chainIds` string
- `tokens` string
- `filterEmpty` boolean

## Headers

- `x-api-version` '2026-01.alps', required
- `x-api-key` string, required

## Response `200`

OK

- object
  - `portfolio` object[], required: Array of token portfolio entries
    - `balance` object, required: Top-level aggregate balance. `unlocked` is the raw sum of per-chain unlocked balances — numerically meaningful only when per-chain decimals match.
      - `locked` string, required: Locked balance
      - `unlocked` string, required: Unlocked balance
    - `tokenName` string, required: Short name (symbol) of the token
    - `tokenDecimals` number, required: Token decimals, taken from the first per-chain entry
    - `tokenChainBalance` object[], required: Per-chain balances for this token
      - `chainId` number, required: Chain ID where the token balance exists
      - `balance` object, required: Locked and unlocked balance on this chain
        - `locked` string, required: Locked balance
        - `unlocked` string, required: Unlocked balance
      - `tokenAddress` string, required: Token contract address on this chain

## Other responses

- `400`: Invalid request parameters
- `403`: API key scope denied
- `500`: Server error

## Changes

- **2026-06-25** `3656a04f8c42`: 8 breaking, 21 info
  - the `x-api-version` request header's property undefined was restricted to a list of enum values
  - the `header` request parameter `x-api-version` was restricted to a list of enum values
  - the `header` request parameter `x-api-version` became required
  - the response's body type changed from no type to `object` for status `400`
  - …25 more
- **2026-06-09** `cec13ad7db82`: 2 info
  - api tag `Utilities` added
  - api tag `Portfolio` removed
- **2026-06-05** `36737b6b49a4`: 3 breaking
  - added `subschema #2` to the response body `oneOf` list for the response status `400`
  - added `subschema #2` to the response body `oneOf` list for the response status `403`
  - added `subschema #2` to the response body `oneOf` list for the response status `500`
- **2026-05-28** `c11fcf5d44dc`: 2 breaking, 3 info
  - added `subschema #1, subschema #2, subschema #3, subschema #4` to the response body `oneOf` list for the response status `400`
  - added `subschema #1, subschema #2, subschema #3, subschema #4` to the response body `oneOf` list for the response status `500`
  - removed `subschema #1, subschema #2, subschema #3` from the response body `oneOf` list for the response status `400`
  - removed `subschema #1, subschema #2, subschema #3` from the response body `oneOf` list for the response status `500`
  - …1 more

[Operation history](https://skmtc.dev/rhinestonewtf/apis/rhinestone-orchestrator-api/changes/accounts/:accountAddress/portfolio/get.md)

---

[API](https://skmtc.dev/rhinestonewtf/apis/rhinestone-orchestrator-api.md) - [All operations](https://skmtc.dev/rhinestonewtf/apis/rhinestone-orchestrator-api/llms.txt) - [OpenAPI document](https://skmtc.dev/rhinestonewtf/apis/rhinestone-orchestrator-api/revisions/3656a04f8c42?raw)
