---
title: "Get a wallet portfolio"
method: GET
path: "/portfolio/{address}"
tags: ["Utilities"]
---

# Get a wallet portfolio

`GET /portfolio/{address}`

Returns a normalised token portfolio for the given address. If the address is a Solana base58 public key, the Solana portfolio is returned; otherwise the EVM portfolio is aggregated from the orchestrator's `/accounts/:address/portfolio` endpoint and priced via the price service.

## Path parameters

- `address` string, required — EVM address or Solana base58 public key

## Query parameters

- `chainIds` string — Comma-separated chain IDs to filter the portfolio

## Headers

- `x-api-key` string, required — API key for authentication
- `x-api-version` string — API version identifier (e.g. "2026-04.amazon"). Optional today, will become required in a future release.

## Response `200`

Wallet portfolio

- PortfolioResponse
  - `tokens` object[], required
    - `chainId` union, required
      - number
      - string
    - `address` string
    - `symbol` string, required
    - `name` string, required
    - `decimals` number, required
    - `balance` string, required
    - `balanceUsd` number, required
  - `totalUsd` number, required
  - `truncated` boolean

## Other responses

- `400` — Invalid request or unauthorized
- `502` — Invalid upstream response

---

[API](https://skmtc.net/rhinestonewtf/apis/deposit-service-api.md) · [All operations](https://skmtc.net/rhinestonewtf/apis/deposit-service-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/rhinestonewtf/deposit-service-api/versions/ce4e0abfe33a/schema)
