> ## 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.

# Get ERC721 Token Transfers by Address

> Retrieves the list of ERC-721 token transfers made by a specified address, with optional filtering by token contract.

export const chain = '1';

<Warning>
  **Effective July 1, 2026**, the maximum records returned per request will be reduced from 10,000 to 1,000 for Free tier API users. See the full list of [affected endpoints](https://docs.etherscan.io/changelog#upcoming-change-reduced-maximum-records-per-request-on-the-free-api-tier).
</Warning>

### Query Parameters

<ParamField query="apikey" default="YourApiKeyToken" type="string">
  Your Etherscan API key.
</ParamField>

<ParamField query="chainid" default="1" type="string">
  Chain ID to query, eg `1` for Ethereum, `8453` for Base from our [supported chains](/supported-chains).
</ParamField>

<ParamField query="module" default="account" type="string">
  Set to `account` for this endpoint.
</ParamField>

<ParamField query="action" default="tokennfttx" type="string">
  Set to `tokennfttx` for this endpoint.
</ParamField>

<ParamField query="contractaddress" default="0x06012c8cf97bead5deae237070f9587f8e7a266d" type="string">
  The ERC721 token contract address to filter transfers by, eg `0xbd3531da5cf5857e7cfaa92426877b022e612cf8` for [Pudgy Penguins](https://etherscan.io/token/0xbd3531da5cf5857e7cfaa92426877b022e612cf8).
</ParamField>

<ParamField query="address" default="0x6975be450864c02b4613023c2152ee0743572325" type="string">
  Address to filter token transfers by.
</ParamField>

<ParamField query="page" default="1" type="integer">
  Page number for pagination.
</ParamField>

<ParamField query="offset" default="100" type="integer">
  Number of records per page. Use the `page` parameter for subsequent records.
</ParamField>

<ParamField query="startblock" default="0" type="integer">
  Starting block number to search from.
</ParamField>

<ParamField query="endblock" default="999999999" type="integer">
  Ending block number to search to.
</ParamField>

<ParamField query="sort" default="asc" type="string">
  Sort order either `desc` for the latest transactions first or `asc` for the oldest transactions first.
</ParamField>

<ResponseExample>
  ```json Response theme={null}
  {
    "status": "1",
    "message": "OK",
    "result": [
      {
        "blockNumber": "4708120",
        "timeStamp": "1512907118",
        "hash": "0x031e6968a8de362e4328d60dcc7f72f0d6fc84284c452f63176632177146de66",
        "nonce": "0",
        "blockHash": "0x4be19c278bfaead5cb0bc9476fa632e2447f6e6259e0303af210302d22779a24",
        "from": "0xb1690c08e213a35ed9bab7b318de14420fb57d8c",
        "contractAddress": "0x06012c8cf97bead5deae237070f9587f8e7a266d",
        "to": "0x6975be450864c02b4613023c2152ee0743572325",
        "tokenID": "202106",
        "tokenName": "CryptoKitties",
        "tokenSymbol": "CK",
        "tokenDecimal": "0",
        "transactionIndex": "81",
        "gas": "158820",
        "gasPrice": "40000000000",
        "gasUsed": "60508",
        "cumulativeGasUsed": "4880352",
        "input": "deprecated",
        "methodId": "0x454a2ab3",
        "functionName": "bid(uint256 _tokenId)",
        "confirmations": "18759540"
      }
    ]
  }
  ```
</ResponseExample>
