---
title: "Get Portfolio History"
method: POST
path: "/portfolio/history"
tags: ["Portfolio"]
---

# Get Portfolio History

`POST /portfolio/history`

Get the historical state of all or filtered accounts portfolio with pagination and interval sampling.

The interval parameter allows you to control data granularity:
- 5m: Raw data (default, collected every 5 minutes)
- 15m: One data point every 15 minutes
- 30m: One data point every 30 minutes
- 1h: One data point every hour
- 4h: One data point every 4 hours
- 12h: One data point every 12 hours
- 1d: One data point every day

Using larger intervals significantly reduces response size and improves performance.

Args:
    filter_request: JSON payload with filtering criteria (account_names, connector_names,
                   start_time, end_time, limit, cursor, interval)

Returns:
    Paginated response with historical portfolio data sampled at the requested interval

## Request body

- PortfolioHistoryFilterRequest — Request model for filtering portfolio history
  - `limit` integer — Number of items per page
  - `start_time` integer, nullable — Start time as Unix timestamp in milliseconds
  - `end_time` integer, nullable — End time as Unix timestamp in milliseconds
  - `cursor` string, nullable — Cursor for next page
  - `account_names` string[], nullable — List of account names to filter by
  - `connector_names` string[], nullable — List of connector names to filter by
  - `interval` string, nullable — Data sampling interval: 5m, 15m, 30m, 1h, 4h, 12h, 1d. Default is 5m (raw data)

## Response `200`

Successful Response

- PaginatedResponse — Generic paginated response.
  - `data` object[], required
  - `pagination` object, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/hummingbot/apis/hummingbot-api.md) · [All operations](https://skmtc.net/hummingbot/apis/hummingbot-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hummingbot/hummingbot-api/revisions/5347fe79537f/schema)
