---
title: "List ERC transfers"
method: GET
path: "/v1/chains/{chainId}/tokens/{address}/transfers"
tags: ["EVM Transactions"]
---

# List ERC transfers

`GET /v1/chains/{chainId}/tokens/{address}/transfers`

Lists ERC transfers for an ERC-20, ERC-721, or ERC-1155 contract address.

## Path parameters

- `chainId` string, required
- `address` string, required

## Query parameters

- `startBlock` number
- `endBlock` number
- `pageToken` string
- `pageSize` integer

## Response `200`

Successful response

- ListTransfersResponse
  - `nextPageToken` string — A token, which can be sent as `pageToken` to retrieve the next page. If this field is omitted or empty, there are no subsequent pages.
  - `transfers` union[], required
    - union
      - Erc20Transfer
        - `blockNumber` string, required — The block number on the chain.
        - `blockTimestamp` number, required — The block creation (proposal) timestamp in seconds
        - `blockTimestampMilliseconds` number — The block creation (proposal) timestamp in milliseconds. Available only after Granite upgrade.
        - `blockHash` string, required — The block hash identifier.
        - `txHash` string, required — The transaction hash identifier.
        - `from` RichAddress, required
          - `name` string — The contract name.
          - `symbol` string — The contract symbol.
          - `decimals` number — The number of decimals the token uses. For example `6`, means to divide the token amount by `1000000` to get its user representation.
          - `logoUri` string — The logo uri for the address.
          - `address` string, required — A wallet or contract address in mixed-case checksum encoding.
        - `to` RichAddress, required
          - `name` string — The contract name.
          - `symbol` string — The contract symbol.
          - `decimals` number — The number of decimals the token uses. For example `6`, means to divide the token amount by `1000000` to get its user representation.
          - `logoUri` string — The logo uri for the address.
          - `address` string, required — A wallet or contract address in mixed-case checksum encoding.
        - `logIndex` number, required
        - `value` string, required
        - `erc20Token` Erc20Token, required
          - `address` string, required — A wallet or contract address in mixed-case checksum encoding.
          - `name` string, required — The contract name.
          - `symbol` string, required — The contract symbol.
          - `decimals` number, required — The number of decimals the token uses. For example `6`, means to divide the token amount by `1000000` to get its user representation.
          - `logoUri` string — The logo uri for the address.
          - `ercType` 'ERC-20', required
          - `price` Money
            - `currencyCode` 'usd' | 'eur' | 'aud' | 'cad' | 'chf' | 'clp' | 'cny' | 'czk' | 'dkk' | 'gbp' | 'hkd' | 'huf' | 'jpy' | 'nzd', required — ISO 4217 currency code.
            - `value` number, required — Monetary value in base 10 decimals.
      - Erc721Transfer
        - `blockNumber` string, required — The block number on the chain.
        - `blockTimestamp` number, required — The block creation (proposal) timestamp in seconds
        - `blockTimestampMilliseconds` number — The block creation (proposal) timestamp in milliseconds. Available only after Granite upgrade.
        - `blockHash` string, required — The block hash identifier.
        - `txHash` string, required — The transaction hash identifier.
        - `from` RichAddress, required
          - `name` string — The contract name.
          - `symbol` string — The contract symbol.
          - `decimals` number — The number of decimals the token uses. For example `6`, means to divide the token amount by `1000000` to get its user representation.
          - `logoUri` string — The logo uri for the address.
          - `address` string, required — A wallet or contract address in mixed-case checksum encoding.
        - `to` RichAddress, required
          - `name` string — The contract name.
          - `symbol` string — The contract symbol.
          - `decimals` number — The number of decimals the token uses. For example `6`, means to divide the token amount by `1000000` to get its user representation.
          - `logoUri` string — The logo uri for the address.
          - `address` string, required — A wallet or contract address in mixed-case checksum encoding.
        - `logIndex` number, required
        - `erc721Token` Erc721Token, required
          - `address` string, required — A wallet or contract address in mixed-case checksum encoding.
          - `name` string, required — The contract name.
          - `symbol` string, required — The contract symbol.
          - `ercType` 'ERC-721', required
          - `tokenId` string, required
          - `tokenUri` string, required
          - `metadata` Erc721TokenMetadata, required
            - `indexStatus` 'UNKNOWN' | 'MISSING_TOKEN' | 'INVALID_TOKEN_URI' | 'INVALID_TOKEN_URI_SCHEME' | 'UNREACHABLE_TOKEN_URI' | 'THROTTLED_TOKEN_URI' | 'METADATA_CONTENT_TOO_LARGE' | 'INVALID_METADATA' | 'INVALID_METADATA_JSON' | 'INDEXED' | 'UNINDEXED', required — The metadata indexing status of the nft.
            - `metadataLastUpdatedTimestamp` number
            - `name` string
            - `symbol` string
            - `imageUri` string
            - `description` string
            - `animationUri` string
            - `externalUrl` string
            - `background` string
            - `attributes` string
          - `ownerAddress` string — A wallet or contract address in mixed-case checksum encoding.
      - Erc1155Transfer
        - `blockNumber` string, required — The block number on the chain.
        - `blockTimestamp` number, required — The block creation (proposal) timestamp in seconds
        - `blockTimestampMilliseconds` number — The block creation (proposal) timestamp in milliseconds. Available only after Granite upgrade.
        - `blockHash` string, required — The block hash identifier.
        - `txHash` string, required — The transaction hash identifier.
        - `from` RichAddress, required
          - `name` string — The contract name.
          - `symbol` string — The contract symbol.
          - `decimals` number — The number of decimals the token uses. For example `6`, means to divide the token amount by `1000000` to get its user representation.
          - `logoUri` string — The logo uri for the address.
          - `address` string, required — A wallet or contract address in mixed-case checksum encoding.
        - `to` RichAddress, required
          - `name` string — The contract name.
          - `symbol` string — The contract symbol.
          - `decimals` number — The number of decimals the token uses. For example `6`, means to divide the token amount by `1000000` to get its user representation.
          - `logoUri` string — The logo uri for the address.
          - `address` string, required — A wallet or contract address in mixed-case checksum encoding.
        - `logIndex` number, required
        - `value` string, required
        - `erc1155Token` Erc1155Token, required
          - `address` string, required — A wallet or contract address in mixed-case checksum encoding.
          - `ercType` 'ERC-1155', required
          - `tokenId` string, required
          - `tokenUri` string, required
          - `metadata` Erc1155TokenMetadata, required
            - `indexStatus` 'UNKNOWN' | 'MISSING_TOKEN' | 'INVALID_TOKEN_URI' | 'INVALID_TOKEN_URI_SCHEME' | 'UNREACHABLE_TOKEN_URI' | 'THROTTLED_TOKEN_URI' | 'METADATA_CONTENT_TOO_LARGE' | 'INVALID_METADATA' | 'INVALID_METADATA_JSON' | 'INDEXED' | 'UNINDEXED', required — The metadata indexing status of the nft.
            - `metadataLastUpdatedTimestamp` number
            - `name` string
            - `symbol` string
            - `imageUri` string
            - `description` string
            - `animationUri` string
            - `externalUrl` string
            - `background` string
            - `decimals` number
            - `properties` string

## Other responses

- `400` — Bad requests generally mean the client has passed invalid or malformed parameters. Error messages in the response could help in evaluating the error.
- `401` — When a client attempts to access resources that require authorization credentials but the client lacks proper authentication in the request, the server responds with 401.
- `403` — When a client attempts to access resources with valid credentials but doesn't have the privilege to perform that action, the server responds with 403.
- `404` — The error is mostly returned when the client requests with either mistyped URL, or the passed resource is moved or deleted, or the resource doesn't exist.
- `429` — This error is returned when the client has sent too many, and has hit the rate limit.
- `500` — The error is a generic server side error that is returned for any uncaught and unexpected issues on the server side. This should be very rare, and you may reach out to us if the problem persists for a longer duration.
- `502` — This is an internal error indicating invalid response received by the client-facing proxy or gateway from the upstream server.
- `503` — The error is returned for certain routes on a particular Subnet. This indicates an internal problem with our Subnet node, and may not necessarily mean the Subnet is down or affected.

---

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