Skip to main content
POST
/
evm
debug_traceBlockByNumber
curl --request POST \
  --url https://hyperliquid-mainnet.core.chainstack.com/4f8d8f4040bdacd1577bff8058438274/evm \
  --header 'Content-Type: application/json' \
  --data '
{
  "jsonrpc": "2.0",
  "method": "debug_traceBlockByNumber",
  "params": [
    "0x1",
    {
      "tracer": "callTracer"
    }
  ],
  "id": 1
}
'
{
  "jsonrpc": "<string>",
  "id": 123,
  "result": "<array>"
}
This method is available on Chainstack. Not all Hyperliquid methods are available on Chainstack, as the open-source node implementation does not support them yet — see Hyperliquid methods for the full availability breakdown.
The debug_traceBlockByNumber method returns detailed trace information for all transactions in a specific block identified by block number. This method provides comprehensive debugging information including call traces, gas usage, and execution details for each transaction.
Get your own node endpoint todayStart for free and get your app to production levels immediately. No credit card required.You can sign up with your GitHub, X, Google, or Microsoft account.

Parameters

  • blockNumber (string, required) — The block number in hexadecimal format (e.g., "0x1"), or one of the tags: "latest", "earliest", "pending".
  • tracerConfig (object, optional) — Tracer configuration:
    • tracer (string) — Tracer type ("callTracer" or "prestateTracer").

Response

The response is an array of trace objects, one per transaction in the block. With callTracer, each trace contains:
  • type (string) — Call type (e.g., "CALL", "DELEGATECALL").
  • from (string) — Sender address.
  • to (string) — Recipient address.
  • value (string) — Value transferred in wei (hex).
  • gas (string) — Gas provided (hex).
  • gasUsed (string) — Gas used (hex).
  • input (string) — Call input data.
  • output (string) — Call output data.

Example request

Shell
curl -X POST \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc": "2.0", "method": "debug_traceBlockByNumber", "params": ["0x1", {"tracer": "callTracer"}], "id": 1}' \
  https://hyperliquid-mainnet.core.chainstack.com/4f8d8f4040bdacd1577bff8058438274/evm

Example response

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": []
}

Use case

The debug_traceBlockByNumber method is useful for:
  • Debugging all transactions in a specific block by number
  • Analyzing gas usage patterns across block transactions
  • Tracing internal calls and value transfers within a block
  • Building block explorers with detailed execution traces

Body

application/json
jsonrpc
enum<string>
default:2.0
required

JSON-RPC version

Available options:
2.0
method
enum<string>
default:debug_traceBlockByNumber
required

The RPC method name

Available options:
debug_traceBlockByNumber
params
array
required

Method parameters

id
integer
default:1
required

Request identifier

Response

200 - application/json

Successful response

jsonrpc
string
id
integer
result
array

Trace results

Last modified on February 17, 2026