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

# Wallet and Portfolio

> Show users their full onchain picture: balances, activity, NFTs, and real names, across every chain.

A wallet view is built from a few core data sources: balances, transaction history, token movements, and address metadata. This guide shows the endpoints behind each piece.

New to the API? Start with [Make your first call](/make-your-first-call).

<Tip>
  Every endpoint in this guide works on all 60+ supported chains, just switch the `chainid`. For example, set `chainid=42161` to read the same wallet on Arbitrum. See [Supported chains](/supported-chains) for the full list.
</Tip>

## Portfolio

Show what a wallet holds: native coins, ERC-20 tokens, and NFT assets.

<Steps>
  <Step title="Get the native balance">
    Retrieve the wallet's native coin balance. The value is returned in wei, so divide by 10^18 for display.

    ```bash theme={null}
    curl --request GET \
      --url 'https://api.etherscan.io/v2/api?chainid=1&module=account&action=balance&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&tag=latest&apikey=YourApiKey'
    ```
  </Step>

  <Step title="Get ERC-20 token holdings">
    ERC-20 token balances held by the address, for displaying the token portfolio. This is a PRO endpoint, available to the [Standard plan](/rate-limits) and above.

    ```bash theme={null}
    curl --request GET \
      --url 'https://api.etherscan.io/v2/api?chainid=1&module=account&action=addresstokenbalance&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&page=1&offset=100&apikey=YourApiKey'
    ```
  </Step>

  <Step title="Get ERC-721 (NFT) holdings">
    ERC-721 NFT holdings for displaying NFT assets owned by the address. This is a PRO endpoint, available to the [Standard plan](/rate-limits) and above.

    ```bash theme={null}
    curl --request GET \
      --url 'https://api.etherscan.io/v2/api?chainid=1&module=account&action=addresstokennftbalance&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&page=1&offset=100&apikey=YourApiKey'
    ```
  </Step>
</Steps>

## Activity

Build the wallet's activity history: transactions it sent, value moved by contracts, and token transfers.

<Steps>
  <Step title="Normal transactions">
    The regular transactions the address signed: sends, receives, and contract calls. The backbone of any activity feed.

    ```bash theme={null}
    curl --request GET \
      --url 'https://api.etherscan.io/v2/api?chainid=1&module=account&action=txlist&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&page=1&offset=25&sort=desc&apikey=YourApiKey'
    ```
  </Step>

  <Step title="Internal transactions">
    Internal transactions are value transfers triggered by contract execution. They are separate from normal transactions, so include them when tracking complete fund movements.

    ```bash theme={null}
    curl --request GET \
      --url 'https://api.etherscan.io/v2/api?chainid=1&module=account&action=txlistinternal&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&page=1&offset=25&sort=desc&apikey=YourApiKey'
    ```
  </Step>

  <Step title="ERC-20 transfers">
    Every ERC-20 token that moved in or out of the address, for a token activity feed.

    ```bash theme={null}
    curl --request GET \
      --url 'https://api.etherscan.io/v2/api?chainid=1&module=account&action=tokentx&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&page=1&offset=25&sort=desc&apikey=YourApiKey'
    ```
  </Step>

  <Step title="ERC-721 transfers">
    ERC-721 NFT transfers in and out of the address, showing when each NFT was acquired or sold.

    ```bash theme={null}
    curl --request GET \
      --url 'https://api.etherscan.io/v2/api?chainid=1&module=account&action=tokennfttx&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&page=1&offset=25&sort=desc&apikey=YourApiKey'
    ```
  </Step>
</Steps>

## Name Tags

Replace raw addresses with recognizable names and labels to make wallet activity easier to understand.

<Steps>
  <Step title="Look up an address name tag and labels">
    Returns the same name tag, labels, and reputation shown on etherscan.io, part of [Etherscan Metadata](/metadata/introduction). Use it to label the wallet and the counterparties in its activity feed. This is a PRO endpoint, available on the Pro Plus plan.

    ```bash theme={null}
    curl --request GET \
      --url 'https://api.etherscan.io/v2/api?chainid=1&module=nametag&action=getaddresstag&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&apikey=YourApiKey'
    ```
  </Step>
</Steps>

## Putting it together

Combine these endpoints to create a wallet experience:

* **Portfolio view:** `balance` + `addresstokenbalance` + `addresstokennftbalance`
* **Activity feed:** `txlist` + `txlistinternal` + `tokentx` + `tokennfttx`
* **Readable identities:** `getaddresstag`

Use the same approach across each supported chain by changing the `chainid`.
