Traces
addTrace(options) {#add-trace}
Subscribe to execution traces. This allows for tracking internal calls. The options object has the following structure:
type: get traces of types from this set. Allowed types are'create' | 'call' | 'suicide' | 'reward'.callTo: getcalltraces to the addresses in this set.callFrom: getcalltraces from the addresses in this set.callSighash: getcalltraces with signature hashes in this set.createFrom: getcreatetraces from the addresses in this set.rewardAuthor: getrewardtraces where block authors are in this set.suicideRefundAddress: getsuicidetraces where refund addresses in this set.range: get traces from transactions from this range of blocks.
transaction = truewill cause the processor to retrieve transactions that the traces belong to.transactionLogs = truewill cause the processor to retrieve all logs emitted by transactions that the traces belong to.subtraces = truewill cause the processor to retrieve downstream traces in addition to those that matched the data requests.parents = truewill cause the processor to retrieve upstream traces in addition to those that matched the data requests.
addTransaction() and addLog() method as related data.
Selection of the exact data to be retrieved for each trace item is done with the setFields() method documented on the Field selection page. Be aware that field selectors for traces do not share their names with the fields of trace data items, unlike field selectors for other data item types. This is due to traces varying their structure depending on the value of the type field.
Examples
Exploring internal calls of a given transaction
For amint call to Uniswap V3 Positions NFT.

