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

# GET /balances

> Fetch all cross-chain token holdings for a wallet address across all supported networks simultaneously.

`GET https://api.trustware.io/api/v1/data/balances/:address`

Returns all token holdings for a wallet address across every supported chain simultaneously. Use this to populate an asset selector — the response includes token symbol, balance, decimals, USD price, and logo URI for each holding.

The response may arrive while balance data is still streaming in from some chains. Check the `partial` flag: if `true`, some chains have not yet responded and you may want to poll again or handle the incomplete state in your UI.

## Path parameters

| Parameter | Description                                                     |
| --------- | --------------------------------------------------------------- |
| `address` | The wallet address to fetch balances for. EVM format (`0x...`). |

## Response

```json theme={null}
{
  "address": "0xeb212fe20f26243ec4d4df2dd49c8aa9fa75a201",
  "partial": true,
  "results": [
    {
      "chain_id": "1329",
      "source": "alchemy",
      "balances": [
        {
          "chain_key": "1329",
          "category": "native",
          "symbol": "SEI",
          "decimals": 18,
          "balance": "0"
        }
      ],
      "count": 1,
      "error": null
    },
    {
      "chain_id": "25",
      "source": "fallback",
      "balances": [
        {
          "chain_key": "25",
          "category": "native",
          "symbol": "CRO",
          "decimals": 18,
          "balance": "0"
        }
      ],
      "count": 1,
      "error": null
    }
  ]
}
```

## Response fields

| Field                | Description                                                                |
| -------------------- | -------------------------------------------------------------------------- |
| `address`            | The queried wallet address.                                                |
| `partial`            | `true` if the response is incomplete — some chains have not yet responded. |
| `results`            | Array of per-chain balance objects.                                        |
| `results[].chain_id` | Chain ID for this result set.                                              |
| `results[].source`   | Data source used for this chain (`alchemy`, `fallback`, etc.).             |
| `results[].balances` | Array of token balances on this chain.                                     |
| `results[].count`    | Number of tokens returned for this chain.                                  |
| `results[].error`    | Error message if balance fetching failed for this chain, otherwise `null`. |

## Balance object fields

| Field       | Description                                                                            |
| ----------- | -------------------------------------------------------------------------------------- |
| `chain_key` | Chain identifier (matches `chain_id` for EVM chains; may be a string key for non-EVM). |
| `category`  | Token category: `native`, `erc20`, `spl`, or `btc`.                                    |
| `contract`  | Token contract address (for ERC-20 and SPL tokens).                                    |
| `symbol`    | Token ticker symbol.                                                                   |
| `decimals`  | Token decimal places. Divide `balance` by `10^decimals` for a human-readable amount.   |
| `balance`   | Raw balance in the smallest unit of the token.                                         |
| `name`      | Full token name.                                                                       |
| `logoURI`   | Token logo image URL.                                                                  |
| `usdPrice`  | Current USD price per token.                                                           |

## Partial responses

When `partial: true`, some chains responded with an error or have not yet returned data. The `results[].error` field on each chain entry indicates if that chain encountered an issue. Chains with `error: null` returned successfully.
