Arbitrum One
Ready to call this in production?
Free tier covers personal projects. Pay-as-you-go scales without a card.
Arbitrum One
Free tier covers personal projects. Pay-as-you-go scales without a card.
trace_replayBlockTransactions replays every transaction in one Arbitrum One block and returns, per transaction, whichever combination of OpenEthereum-style trace (call tree), vmTrace (opcode-level), and stateDiff (balance/nonce/code/storage changes) you ask for in traceTypes. It is the block-wide version of trace_replayTransaction and the richest read in the trace namespace. Arbitrum One is a Nitro Optimistic Rollup (chain ID 42161) settling to Ethereum L1 with gas in ETH, so a full stateDiff for a block captures every L2 ledger change at once. Send requests to https://arbitrum.therpc.io/YOUR_API_KEY.
| # | Name | Type | Required | Description |
|---|---|---|---|---|
| 1 | blockParameter | string | Yes | Block whose transactions to replay. |
| 2 | traceTypes | array | Yes | One or more of `"trace"`, `"vmTrace"`, `"stateDiff"`. At least one value is required. |
| Type | Description |
|---|---|
| array | Array of per-transaction replay results in block order. Each element has the same shape as trace_replayTransaction output, plus `transactionHash`. |
Try it live in the Arbitrum One playground.
| Code | Message | Cause |
|---|---|---|
-32601 | Method not found | trace namespace not enabled or not supported by this client. |
-32602 | Invalid params | blockParameter is malformed or traceTypes is empty or contains unknown values. |
-32000 | block not found | Block does not exist or archive trace data is unavailable for that block. |
traceTypes on a dense Arbitrum One block can return hundreds of MB — request only the trace types you actually consume.Parameters
hex block number or "latest" | "earliest" | "pending"
["trace"] | ["trace","vmTrace","stateDiff"]