# EVM State Batch — Multi-Chain Wallet Snapshot

> EVM State Batch — Multi-Chain Wallet Snapshot is a paid API for AI agents from evmstate.com, paid per call via x402, $0.1/call, status unknown (last checked 2026-10-17).

Executes a batch of read-only EVM checks (wallet balances, token holdings, allowances, contract state, block data) across Ethereum, Base, Arbitrum, Optimism, and Polygon in a single call.

## Facts

- Endpoint: POST https://evmstate.com/v1/state-batch/50?utm_source=zero.xyz
- Price: $0.1/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-17
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/evm-state-batch-multi-chain-wallet-snapshot-dc071458
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_70pFCFP08_4dixinYYqsK

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 evm-state-batch-multi-chain-wallet-snapshot-dc071458 -d '<json body>'
```

Example prompt: Can you snapshot the full on-chain state for wallet 0xABC...123 — ETH balance, USDC and WETH token balances, and any open allowances — across Ethereum, Base, Arbitrum, Optimism, and Polygon all at once?

## When to prefer this

Choose this endpoint when you need to read multiple types of on-chain state (balances, allowances, contract data, block info) across several EVM-compatible chains in a single atomic snapshot. It is ideal for DeFi portfolio audits, pre-transaction state checks, and multi-chain liquidity verification where minimizing round-trips and ensuring a consistent block-anchored snapshot matters. Prefer it over making individual per-chain RPC calls when you need correlated multi-chain data with a guaranteed recovery URL.

## Known failure modes

- Invalid or malformed wallet/contract addresses return per-item errors within the results array
- Unsupported chain identifiers cause individual checks to fail without rejecting the whole batch
- Expired results (past expiresAt) are no longer available at the primary endpoint but may be recoverable via recoveryUrl
- Payment failure (x402) if insufficient USDC balance causes the entire request to be rejected
- Network congestion on a specific chain may cause individual RPC calls to time out and return null values
- Requesting more than 50 items in a single batch exceeds the endpoint's capacity

## How this service works

Batch read-only wallet, token, allowance, contract, and block checks across Ethereum, Base, Arbitrum, Optimism, and Polygon. Fixed Base USDC prices from $0.05.

## Output

A JSON object containing an array of results where each entry corresponds to one batched check — including chain, type (e.g. block_number, balance, allowance), and the returned value — plus an expiry timestamp, a unique requestId, a recoveryUrl to re-fetch results, a verification note, and a snapshotBlocks map showing the block at which each chain's state was captured.

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "results": [
   {
    "id": "ethereum-native-balance",
    "type": "native_balance",
    "chain": "ethereum",
    "value": "0x0",
    "blockNumber": "0x18e456e"
   },
   {
    "id": "base-native-balance",
    "type": "native_balance",
    "chain": "base",
    "value": "0x0",
    "blockNumber": "0x31a5006"
   },
   {
    "id": "arbitrum-native-balance",
    "type": "native_balance",
    "chain": "arbitrum",
    "value": "0x0",
    "blockNumber": "0x1e729abb"
   },
   {
    "id": "optimism-native-balance",
    "type": "native_balance",
    "chain": "optimism",
    "value": "0x0",
    "blockNumber": "0x965919b"
   },
   {
    "id": "polygon-native-balance",
    "type": "native_balance",
    "chain": "polygon",
    "value": "0x0",
    "blockNumber": "0x5a67efe"
   }
  ],
  "expiresAt": "2026-11-01T00:00:00.000Z",
  "requestId": "12345678-1234-4234-9234-123456789abc",
  "recoveryUrl": "https://evmstate.com/v1/results/12345678-1234-4234-9234-123456789abc",
  "verification": "each result is a successful JSON-RPC response",
  "snapshotBlocks": {
   "base": "0x31a5006",
   "polygon": "0x5a67efe",
   "arbitrum": "0x1e729abb",
   "ethereum": "0x18e456e",
   "optimism": "0x965919b"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/evm-state-batch-multi-chain-wallet-snapshot-dc071458/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from evmstate.com](https://www.zero.xyz/host/evmstate.com/llms.txt)
