Skip to main content

debug_traceBlock RPC Method

Returns a full stack trace of all invoked opcodes of all transactions that were included in a block.

Updated on
Nov 2, 2023

debug_traceBlock RPC Method

Please note that this RPC method is available by default for all Build & Scale plans. If you are using the Discover plan, you will need to upgrade to a paid plan to utilize this method. See our pricing for more information.

Parameters

block
string
REQUIRED
The RLP encoded block
object
array
REQUIRED
The tracer object with the following fields:
tracer
string
The type of tracer. It could be callTracer or prestateTracer
callTracer
The calltracer keeps track of all call frames, including depth 0 calls, that are made during a transaction
prestateTracer
The prestateTracer replays the transaction and tracks every part of state that occured during the transaction
tracerConfig
object
The object to specify the configurations of the tracer
onlyTopCall
boolean
When set to true, this will only trace the primary (top-level) call and not any sub-calls. It eliminates the additional processing for each call frame

Returns

result
A result array with the following fields:
type
The type of the call
from
The address the transaction is sent from
to
The address the transaction is directed to
value
The integer of the value sent with this transaction
gas
The integer of the gas provided for the transaction execution
gasUsed
The integer of the gas used
input
The data given at the time of input
output
The data which is returned as an output
calls
A list of sub-calls
Request
1
curl https://docs-demo.quiknode.pro/ \
2
-X POST \
3
-H "Content-Type: application/json" \
4
--data '{"method":"debug_traceBlock","params":["RLP_ENCODED_BLOCK", {"tracer": "callTracer"}],"id":1,"jsonrpc":"2.0"}'
5
Don't have an account yet?
Create your QuickNode endpoint in seconds and start building
Get started for free