> ## Documentation Index
> Fetch the complete documentation index at: https://goldrush.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# debug_traceBlockByNumber on Ethereum

> debug_traceBlockByNumber traces every transaction in a block, identified by number on Ethereum, via GoldRush JSON-RPC.

> [card] 0.015 credits per call

`debug_traceBlockByNumber` on **Ethereum**: Traces every transaction in a block, identified by number.

> [!NOTE]
>
> `debug_traceBlockByNumber` requires archive depth. See the [debug & trace matrix](https://goldrush.dev/docs/goldrush-json-rpc/debug-trace.md) for Ethereum archive coverage.

## Endpoint

```
https://rpc.goldrushdata.com/v1/eth-mainnet
```

Authenticate with `Authorization: Bearer <GOLDRUSH_API_KEY>`. See [authentication](https://goldrush.dev/docs/goldrush-json-rpc/authentication.md).

## Parameters

| Name | Type | Required | Description | Example |
| - | - | - | - | - |
| `blockTag` | `QUANTITY \| TAG` | yes | Block number (hex) or block tag. | `"latest"` |
| `options` | `Object` | no | Tracer config. | `{"tracer":"callTracer"}` |

## Returns

`Array<Object>`: Array of per-transaction tracer outputs.

```json theme={null}
[{"result":{"type":"CALL","from":"0x..."}}]
```

## Examples

```bash curl theme={null}
curl https://rpc.goldrushdata.com/v1/eth-mainnet \
  -H "Authorization: Bearer $GOLDRUSH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "debug_traceBlockByNumber",
    "params": ["latest", {"tracer":"callTracer"}]
  }'
```

```typescript ethers v6 theme={null}
import { ethers } from "ethers";

const url = "https://rpc.goldrushdata.com/v1/eth-mainnet";
const fetchReq = new ethers.FetchRequest(url);
fetchReq.setHeader("Authorization", `Bearer ${process.env.GOLDRUSH_API_KEY}`);

const provider = new ethers.JsonRpcProvider(fetchReq);
const result = await provider.send("debug_traceBlockByNumber", ["latest", {"tracer":"callTracer"}]);
console.log(result);
```

```typescript viem theme={null}
import { createPublicClient, http } from "viem";

const client = createPublicClient({
  transport: http("https://rpc.goldrushdata.com/v1/eth-mainnet", {
    fetchOptions: {
      headers: {
        Authorization: `Bearer ${process.env.GOLDRUSH_API_KEY}`,
      },
    },
  }),
});

const result = await client.request({
  method: "debug_traceBlockByNumber",
  params: ["latest", {"tracer":"callTracer"}],
});
console.log(result);
```

```javascript web3.js theme={null}
import { Web3 } from "web3";

const provider = new Web3.providers.HttpProvider(
  "https://rpc.goldrushdata.com/v1/eth-mainnet",
  {
    headers: [
      { name: "Authorization", value: `Bearer ${process.env.GOLDRUSH_API_KEY}` },
    ],
  }
);
const web3 = new Web3(provider);

const result = await web3.currentProvider.request({
  method: "debug_traceBlockByNumber",
  params: ["latest", {"tracer":"callTracer"}],
});
console.log(result);
```

```python web3.py theme={null}
from os import environ
from web3 import Web3

w3 = Web3(Web3.HTTPProvider(
    "https://rpc.goldrushdata.com/v1/eth-mainnet",
    request_kwargs={
        "headers": {
            "Authorization": f"Bearer {environ['GOLDRUSH_API_KEY']}",
        },
    },
))
result = w3.manager.request_blocking("debug_traceBlockByNumber", ["latest", {"tracer":"callTracer"}])
print(result)
```

## Errors

Standard JSON-RPC errors: `-32600` invalid request, `-32601` method not found, `-32602` invalid params.

## Related Debug and trace methods on Ethereum

* [`debug_traceTransaction` on Ethereum](https://goldrush.dev/docs/api-reference/json-rpc/ethereum/debug-tracetransaction)
* [`debug_traceCall` on Ethereum](https://goldrush.dev/docs/api-reference/json-rpc/ethereum/debug-tracecall)
* [`debug_traceBlockByHash` on Ethereum](https://goldrush.dev/docs/api-reference/json-rpc/ethereum/debug-traceblockbyhash)
* [`trace_transaction` on Ethereum](https://goldrush.dev/docs/api-reference/json-rpc/ethereum/trace-transaction)
* [`trace_block` on Ethereum](https://goldrush.dev/docs/api-reference/json-rpc/ethereum/trace-block)

## Also available on

* [`debug_traceBlockByNumber` on Polygon](https://goldrush.dev/docs/api-reference/json-rpc/polygon/debug-traceblockbynumber)
* [`debug_traceBlockByNumber` on BNB Smart Chain (BSC)](https://goldrush.dev/docs/api-reference/json-rpc/bsc/debug-traceblockbynumber)
* [`debug_traceBlockByNumber` on Arbitrum](https://goldrush.dev/docs/api-reference/json-rpc/arbitrum/debug-traceblockbynumber)
* [`debug_traceBlockByNumber` on Base](https://goldrush.dev/docs/api-reference/json-rpc/base/debug-traceblockbynumber)
* [`debug_traceBlockByNumber` on HyperEVM](https://goldrush.dev/docs/api-reference/json-rpc/hyperevm/debug-traceblockbynumber)
* [`debug_traceBlockByNumber` on MegaETH](https://goldrush.dev/docs/api-reference/json-rpc/megaeth/debug-traceblockbynumber)
* [`debug_traceBlockByNumber` on Monad](https://goldrush.dev/docs/api-reference/json-rpc/monad/debug-traceblockbynumber)
* [`debug_traceBlockByNumber` on Tempo](https://goldrush.dev/docs/api-reference/json-rpc/tempo/debug-traceblockbynumber)
* [`debug_traceBlockByNumber` on Robinhood Chain](https://goldrush.dev/docs/api-reference/json-rpc/robinhood/debug-traceblockbynumber)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.