Get Wallet Positions (Zerion)
Retrieve fungible token positions for any wallet address via Zerion API. Returns detailed position data including DeFi deposits, loans, staking rewards, and wallet balances with real-time valuations. Supports filtering by chain, position type, and DApp. Ideal for: token balance tracking, DeFi position monitoring, portfolio analytics, wallet auditing.
Catalog action Blockchain Data
Retrieve fungible token positions for any wallet address via Zerion API. Returns detailed position data including DeFi deposits, loans, staking rewards, and wallet balances with real-time valuations. Supports filtering by chain, position type, and DApp. Ideal for: token balance tracking, DeFi position monitoring, portfolio analytics, wallet auditing.
At a Glance
| Field | Value |
|---|---|
| Action ID | zerion-get-wallet-positions |
| Category | Blockchain Data |
| Connector | Not required |
| Requires gas | No |
| Funds movement | None declared |
| Tags | zerion, blockchain, wallet, positions, tokens, defi, multi-chain, read |
Payload Schema
| Field | Type | Required | Description |
|---|---|---|---|
address | string | Yes | The wallet address to query positions for. Must be a valid 42-character hex address starting with 0x. |
positions | string | No | Filter by position type. Default: only_simple |
positionTypes | array | No | Filter by specific position types (deposit, loan, locked, staked, reward, wallet, investment) |
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. |
sort | string | No | Sort order by position value. Verified against the API: 'value' returns highest first and '-value' returns lowest first — the sign convention is inverted from the usual reading, so pass 'value' when you want the largest positions first. |
currency | string | No | Currency to denominate values in. Default: usd |
trash | string | No | Spam filter applied by Zerion. Defaults to 'only_non_trash' (spam/airdrop tokens excluded) — pass 'no_filter' to include everything. |
filterSpamTokens | boolean | No | Post-process results through the B3OS token filter service to remove spam and low-liquidity tokens. Default: true |
Result Schema
| Field | Type | Required | Description |
|---|---|---|---|
address | string | Yes | The wallet address that was queried |
positions | array | Yes | Array of fungible positions |
nextCursor | string | No | Cursor for next page of results |
Examples
json{ "type": "zerion-get-wallet-positions", "payload": { "address": "0x0000000000000000000000000000000000000000" }, "children": []}
bashcurl -X POST "https://api.b3os.org/v1/actions/zerion-get-wallet-positions/test" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "inputs": { "address": "0x0000000000000000000000000000000000000000" }}'
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.
