debug_traceCallMany - Arc

debug_traceCallMany. Executes and traces multiple call bundles in sequence.

debug_traceCallMany - arc [Value: 20CU]
Runs and traces multiple call bundles in sequence against the state of a given block, without broadcasting anything
Use cases

Use cases

  • Debug a bundle of transactions intended for private submission
  • Preview how several draft transactions would interact against current state
Constraints

Constraints

  • Bundles are executed in order, each seeing the state left by the previous one
  • Large bundles or many bundles at once can be slow to trace
Get started
Unlock Access to 100+ chains
Boost your app's speed and reliability with dRPC - get your access API key

Language

Request
Examples
curl https://arc-testnet.drpc.org \
-X POST \
-H "Content-Type: application/json" \
-d '{"method":"debug_traceCallMany",
    "params":[[{"transactions": [{"from": "0xcdd37ada79f589c15bd4f8fd2083dc88e34a2af2", "to": "0xdac17f958d2ee523a2206206994597c13d831ec7", "gas": "0xb59b", "value": "0x0", "data": "0xa9059cbb000000000000000000000000b29d1cef6da3262df35fdee71a176c62687e747d000000000000000000000000000000000000000000000000000000001e3f0ccc"}]}, {"transactions": [{"from": "0xe088776deabb472ffd2843e330e79c880a5f979e", "to": "0x70526cc7a6d6320b44122ea9d2d07670accc85a1", "value": "0x0", "data": "0x"}]}], {"blockNumber": "0x154bd82", "transactionIndex": -1}, {"tracer": "callTracer"}],
    "id":1,
    "jsonrpc":"2.0"}'
Copy
Response
200
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": [
    [
      {
        "type": "CALL",
        "from": "0xcdd37ada79f589c15bd4f8fd2083dc88e34a2af2",
        "to": "0xdac17f958d2ee523a2206206994597c13d831ec7",
        "value": "0x0",
        "gas": "0xb59b",
        "gasUsed": "0x5d5a",
        "input": "0xa9059cbb000000000000000000000000b29d1cef6da3262df35fdee71a176c62687e747d000000000000000000000000000000000000000000000000000000001e3f0ccc",
        "output": "0x"
      }
    ],
    [
      {
        "type": "CALL",
        "from": "0xe088776deabb472ffd2843e330e79c880a5f979e",
        "to": "0x70526cc7a6d6320b44122ea9d2d07670accc85a1",
        "value": "0x0",
        "gas": "0x7fffffffffffadf7",
        "gasUsed": "0x0",
        "input": "0x",
        "output": "0x"
      }
    ]
  ]
}
Copy

Request params

idinteger
jsonrpcstring
methodstring
Parametersarray
array
bundlesarray_of_objects
An array of call bundles, each executed in order against the state left by the previous bundle.
array
transactionsarray_of_objects
The transaction call objects to execute in this bundle.
blockOverrideobject
(optional) Block header fields to override for this bundle.
simulationContextobject
The block and position to simulate against.
array
blockNumberstring
The block to use as the base state, in hex.
transactionIndexinteger
The transaction position within that block to start from. Use -1 for the end of the block.
optionsobject
(optional) Tracer and state override options.
array
tracerstring
The tracer to use, such as callTracer or prestateTracer.
tracerConfigobject
Configuration options for the selected tracer.
stateOverridesobject
Per-address balance, nonce, code, or storage overrides.

Response

200
A nested array of call traces: the outer array is one entry per bundle, the inner array one entry per transaction in that bundle

Response params

object
idinteger
jsonrpcstring
resultarray_of_objects
The outer array has one entry per bundle; each inner array has one call trace per transaction in that bundle.