# Ethereum ERC-20 Token Transfer History

> Ethereum ERC-20 Token Transfer History is a paid API for AI agents from agent-data-tools.revmesh2074.workers.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-30).

Lists recent inbound and outbound ERC-20 token transfers for a wallet on Ethereum over a specified block range, newest first.

## Facts

- Endpoint: GET https://agent-data-tools.revmesh2074.workers.dev/eth/token-transfers?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/ethereum-erc-20-token-transfer-history-d12c9844
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_DukB46mOe16F5FiViRacW

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability ethereum-erc-20-token-transfer-history-d12c9844
```

Example prompt: Show me the last 500 blocks of USDC transfers in and out of wallet 0xAbC123...def for Ethereum — I want to see direction, counterparty, and amount for each one.

## When to prefer this

Use this endpoint when you need a historical list of ERC-20 token transfers (in or out) for a specific Ethereum wallet, particularly to confirm a payment arrived, audit outgoing sends, or trace counterparties. Prefer this over eth_token_balance when you need movement history rather than a current snapshot. Best suited for recent activity within the last ~2000 blocks (~6–7 hours on Ethereum); for older history, a different archive-node endpoint would be needed.

## Known failure modes

- Malformed or invalid wallet address returns HTTP 400, no charge applied
- Invalid or non-ERC-20 token contract address may return empty transfer list or error
- Block range outside 1–2000 may be clamped or rejected
- No transfers found in range returns empty transfers array with count 0
- Network congestion or RPC timeout may cause delayed or failed response

## How this service works

List a wallet's recent transfers of one ERC-20 token (default USDC) on Ethereum, in and out, over the last N blocks (1-2,000, default 1,000): direction, counterparty, amount and transaction, newest first, up to 50. Use to confirm a payment arrived or see what was sent; for the current balance use eth_token_balance. Malformed addresses are rejected with 400, uncharged.

## Output

Returns a JSON object with the wallet address, chain name and ID, the scanned block range (fromBlock, toBlock), a count of transfers found, and an array of up to 50 transfers each containing: direction (in/out), counterparty address, token amount, token symbol, token contract address, block number, and transaction hash. Also includes a truncated flag if more than 50 results exist.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "address"
 ],
 "properties": {
  "token": {
   "type": "string",
   "description": "Token: a ticker such as USDT or WETH, or the 0x ERC-20 contract (default: USDC on this network)"
  },
  "blocks": {
   "type": "integer",
   "description": "How many recent blocks to scan (1-2000, default 1000; 2,000 blocks is about 6.7 hours on Ethereum)"
  },
  "address": {
   "type": "string",
   "description": "0x wallet address"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "chain": {
   "type": "string"
  },
  "count": {
   "type": "number"
  },
  "address": {
   "type": "string"
  },
  "chainId": {
   "type": "number"
  },
  "toBlock": {
   "type": "number"
  },
  "fromBlock": {
   "type": "number"
  },
  "transfers": {
   "type": "array",
   "items": {
    "type": "object",
    "properties": {
     "tx": {
      "type": "string"
     },
     "raw": {
      "type": "string"
     },
     "block": {
      "type": "number"
     },
     "token": {
      "type": "string"
     },
     "amount": {
      "type": "string"
     },
     "symbol": {
      "type": "string"
     },
     "direction": {
      "type": "string"
     },
     "counterparty": {
      "type": "string"
     }
    }
   }
  },
  "truncated": {
   "type": "boolean"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/ethereum-erc-20-token-transfer-history-d12c9844/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agent-data-tools.revmesh2074.workers.dev](https://www.zero.xyz/host/agent-data-tools.revmesh2074.workers.dev/llms.txt)
