---
title: "Get All Portfolios"
method: GET
path: "/v1/portfolios"
tags: ["Portfolios"]
---

# Get All Portfolios

`GET /v1/portfolios`

## Request

- Base URL: `https://api.gm.ondo.finance`
- URL: `https://api.gm.ondo.finance/v1/portfolios`
- Auth: API key in header `x-api-key`

This endpoint returns all active Ondo Intelligent Portfolios. Each portfolio contains its product metadata, net assets, dividend yields, service fee, rebalance data, and constituents.

The response sorts the portfolios by symbol, and it sorts the constituents of each portfolio by symbol. Each entry in the array has the same fields as the response of [Get a Portfolio](https://docs.ondo.finance/api-reference/portfolios/get-a-portfolio).

Rates, weights, and yields are decimal fractions. For example, `"0.0009"` is 0.09% and `"0.1143"` is 11.43%. Dates are RFC 3339 timestamps in UTC.

This endpoint does not return prices. To get the price of a portfolio token, use [Get Current Price for an Asset](https://docs.ondo.finance/api-reference/assets/get-current-price-for-an-asset), [Get OHLC Data for an Asset](https://docs.ondo.finance/api-reference/assets/get-ohlc-open-high-low-close-data-for-an-asset), or [Get Market Data for an Asset](https://docs.ondo.finance/api-reference/assets/get-market-data-for-an-asset) with the portfolio symbol.

For caching details on this endpoint, please see: [Endpoint Caching](https://docs.ondo.finance/api-reference/endpoint-caching).

## Response `200`

OK

- Portfolio[]: The active portfolios, sorted by symbol.
  - `symbol` string, required: The portfolio token symbol.
  - `name` string, required: The name of the portfolio.
  - `description` string: A description of the portfolio strategy. The response omits this field if no description is available.
  - `category` string: The category of the portfolio, for example `thematic`, `income`, or `allocation`. The value is free text, not a fixed list. The response omits this field if no category is available.
  - `modelProvider` string: The [model provider](https://docs.ondo.finance/intelligent-portfolios/model-providers) that develops the portfolio strategy, for example `ondo` or `blackrock`. The value is free text, not a fixed list. The response omits this field if no model provider is available.
  - `inceptionDate` string, date-time: The inception date of the portfolio, as an RFC 3339 timestamp in UTC. The response omits this field if no inception date is available.
  - `netAssetsUsd` string, required: The USD value of the constituents that the portfolio holds, represented as a string-encoded decimal with up to 6 digits after the decimal point. The value is the sum of each constituent `quantity` multiplied by its token price. It does not include cash from mints and redemptions that are not yet settled. For this reason, it can be slightly different from the token price multiplied by the total supply. If the portfolio has no supply, the value is `"0"`.
  - `dividendYield` string, required: The dividend yield of the portfolio, represented as a string-encoded decimal with up to 8 digits after the decimal point. ("0.05" is the equivalent of 5%) The value is the average of the constituent dividend yields, weighted by `currentWeight`. The dividend yield of a constituent is the sum of its cash dividends paid in the last 365 days, divided by the current stock price. A constituent without dividends adds zero.
  - `afterWithholdingDividendYield` string, required: The dividend yield of the portfolio after estimated withholding tax, represented as a string-encoded decimal with up to 8 digits after the decimal point. This value uses the same calculation as `dividendYield`, but it first subtracts the withholding tax from each dividend. For more information, see [Fees & Taxes](https://docs.ondo.finance/intelligent-portfolios/fees-taxes).
  - `fees` object, nullable, required: The annual service fee of the portfolio. The value is `null` if no fee data is available. For more information, see [Fees & Taxes](https://docs.ondo.finance/intelligent-portfolios/fees-taxes).
    - `serviceFeeRateBeforeWaiver` string, required: The annual service fee rate before the fee waiver, represented as a string-encoded decimal with up to 8 digits after the decimal point. ("0.0009" is the equivalent of 0.09%)
    - `waiverFraction` string, required: The fee waiver as a fraction of the service fee, from 0 to 1, represented as a string-encoded decimal with up to 8 digits after the decimal point. A value of `"1"` waives the full fee. A value of `"0"` waives no fee.
    - `serviceFeeRateAfterWaiver` string, required: The annual service fee rate after the fee waiver, represented as a string-encoded decimal with up to 8 digits after the decimal point. The value is `serviceFeeRateBeforeWaiver` multiplied by (1 - `waiverFraction`).
  - `rebalance` object, nullable, required: The rebalance data of the portfolio. The value is `null` if no rebalance data is available. For more information, see [Rebalancing & Reconstitution](https://docs.ondo.finance/intelligent-portfolios/rebalancing-reconstitution).
    - `frequency` string, required: The rebalance frequency of the portfolio, for example `Quarterly`. The value is free text, not a fixed list. Empty string if no frequency is available.
    - `reconstitutionType` string, required: The reconstitution approach of the portfolio, for example `Fixed`. The value is free text, not a fixed list. Empty string if no reconstitution type is available.
    - `lastRebalanceDate` string, date-time: The date of the most recent rebalance, as an RFC 3339 timestamp in UTC. The response omits this field if no rebalance date is available.
  - `constituentCount` integer, required: The number of constituents in `constituents`.
  - `constituents` PortfolioConstituent[], required: The constituents of the portfolio, sorted by symbol.
    - `symbol` string, required: The GM token symbol of the constituent.
    - `name` string, required: The name of the underlying asset. Empty string if no name is available.
    - `quantity` string, required: The number of constituent tokens that the portfolio holds on all chains, represented as a string-encoded decimal with up to 18 digits after the decimal point.
    - `targetWeight` string, required: The target weight of the constituent in the portfolio model, represented as a string-encoded decimal with up to 8 digits after the decimal point. ("0.1143" is the equivalent of 11.43%)
    - `currentWeight` string, required: The current weight of the constituent, represented as a string-encoded decimal with up to 8 digits after the decimal point. The value is the constituent `quantity` multiplied by its token price, divided by `netAssetsUsd`. The sum of the current weights of a portfolio is 1, before rounding. If the portfolio has no supply, the value is equal to `targetWeight`.
    - `assetClass` string, required: High-level category of the asset. Empty string if not available.
    - `instrumentType` string, required: Instrument type within the asset class. Empty string if not available.
    - `sectorIndustry` string[], required: Sector and industry classifications for the asset. Empty array if not available.
    - `addresses` AssetAddress[], required: The contract addresses of the constituent token, sorted by `networkChainId`.
      - `networkChainId` 'ethereum-1' | 'bsc-56' | 'solana-900', required: The chain's identifier including the chain name and chain id.
      - `address` string, required: The contract address on the specified chain.
      - `decimals` integer, required: The number of decimals places for the asset.
  - `timestamp` number, required: The Unix timestamp in milliseconds when the API last refreshed the data of this portfolio. Each portfolio has its own timestamp.

## Other responses

- `401`: Missing or invalid API key.
- `429`: The account has exceeded its rate limits. Please see the returned message and documentation for details.
- `500`: An internal server error occurred. Please see the returned message and documentation for details.
- `503`: Portfolio data is temporarily unavailable. Retry the request after a short time.

## Changes

- **2026-11-03** `684c3201c022`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/ondo/apis/gm-backend-api/changes/v1/portfolios/get.md)

---

[API](https://skmtc.dev/ondo/apis/gm-backend-api.md) - [All operations](https://skmtc.dev/ondo/apis/gm-backend-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ondo/apis/gm-backend-api/revisions/684c3201c022?raw)
