> ## Documentation Index
> Fetch the complete documentation index at: https://docs.b3os.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Wallet Balance Chart (Zerion)

Retrieve a historical balance chart for any wallet address via Zerion API. Returns time-series data points [timestamp, value] for the specified period (hour to max). Supports filtering by chain and fungible IDs. Ideal for: portfolio performance visualization, historical balance tracking, PnL charting, trend analysis.

![Get Wallet Balance Chart (Zerion) logo](https://ai-icon.b3.fun/logo/zerion)
Catalog action Blockchain Data

Retrieve a historical balance chart for any wallet address via Zerion API. Returns time-series data points [timestamp, value] for the specified period (hour to max). Supports filtering by chain and fungible IDs. Ideal for: portfolio performance visualization, historical balance tracking, PnL charting, trend analysis.


## At a Glance

| Field | Value |
| --- | --- |
| Action ID | `zerion-get-wallet-chart` |
| Category | Blockchain Data |
| Connector | Not required |
| Requires gas | No |
| Funds movement | None declared |
| Tags | `zerion`, `blockchain`, `wallet`, `chart`, `balance`, `history`, `pnl`, `read` |

## Payload Schema

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `address` | `string` | Yes | The wallet address to query the balance chart for. |
| `period` | `string` | Yes | Chart time period. Options: hour, day, week, month, 3months, 6months, year, 5years, max |
| `chainIds` | `array` | No | Filter by chains. Accepts numeric EVM chain IDs \(e.g. 1, 56, 8453\) or Zerion slugs \(e.g. 'ethereum', 'polygon'\). Chains B3 supports but Zerion does not are rejected with INVALID_INPUT. Max 25. |
| `currency` | `string` | No | Currency to denominate values in. Default: usd |

## Result Schema

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `address` | `string` | Yes | - |
| `period` | `string` | Yes | Chart period |
| `beginAt` | `string` | Yes | Chart start timestamp \(ISO\) |
| `endAt` | `string` | Yes | Chart end timestamp \(ISO\) |
| `points` | `array` | Yes | Sorted chart data points as \[timestamp, value\] tuples |

## Examples

**Workflow node**

```json
{
  "type": "zerion-get-wallet-chart",
  "payload": {
    "address": "0x0000000000000000000000000000000000000000",
    "period": "hour"
  },
  "children": []
}
```
  **Test with API**

```bash
curl -X POST "https://api.b3os.org/v1/actions/zerion-get-wallet-chart/test" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "inputs": {
    "address": "0x0000000000000000000000000000000000000000",
    "period": "hour"
  }
}'
```

**Use expressions for dynamic values**

Payload fields can use workflow expressions such as `{{$trigger.body.amount}}`, `{{$nodes.fetch.result.price}}`, and `{{$props.asset}}` when the value should come from a trigger, prior node, or reusable workflow prop.