trace
trace_callMany
Simulates multiple calls in sequence and returns their traces.
Simulates multiple calls in sequence at a given block and returns traces for each. Each call can see the state changes from previous calls in the batch.
Parameters
| # | Type | Description |
|---|---|---|
| 1 | array | Array of [callObject, traceTypes] pairs. Each callObject has to, from (optional), data, value (optional). traceTypes is an array like ["trace"], ["vmTrace"], or ["stateDiff"]. |
| 2 | string | Block number (hex) or block tag ("latest", "earliest", "pending"). |
Returns
An array of trace results, one per call in the batch.
Example
curl -s -X POST https://rpc.pulsechain.box \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "trace_callMany",
"params": [
[
[{"to": "0xA1077a294dDE1B09bB078844df40758a5D0f9a27", "data": "0x18160ddd"}, ["trace"]],
[{"to": "0xA1077a294dDE1B09bB078844df40758a5D0f9a27", "data": "0x70a08231000000000000000000000000d8da6bf26964af9d7eed9e03e53415d37aa96045"}, ["trace"]]
],
"latest"
],
"id": 1
}'
TRY IT
Notes
- Calls execute sequentially — later calls see state changes from earlier calls in the batch.
- Useful for simulating multi-step interactions (approve + swap, etc.) with full trace output.
- No state changes are persisted — this is a pure simulation.
