EVM

On-chain Data Sources for EVM chains

Balance

Name: Balance

Type: integer

Gets the ETH balance of an address.

Call

Name: Call

Type: varies

Calls a function and gets the return value.

The type of this source and it's parameters are determined by the signature provided. See the Example tab for more info

Events

Name: Events

Type: list<tuple<varies>>

Get the parameters of all events with a specific signature emitted by a contract in the evaluated block.

The type of this source depends on the signature of the event. See the Example tab for more information.

Calls

Name: Calls

Type: list<tuple<varies>>

Get the arguments of all function calls with a specific signature to a contract in the evaluated block

The type of this source depends on the signature of the event. See the Example tab for more information.

Historical Events

Name: HistoricalEvents

Type: list<tuple<varies>>

Get the parameters of all events with a specific signature emitted by a contract since genesis.

The type of this source depends on the signature of the event. See the Example tab for more information.

Historical Calls

Name: HistoricalCalls

Type: list<tuple<varies>>

Get the arguments of all function calls with a specific signature to a contract since genesis.

The type of this source depends on the signature of the event. See the Example tab for more information.

Storage Access

Name: StorageAccess

Type: varies

Fetches storage data from a contract, starting at a specific slot, and decode the data according to a given signature.

Storage Map Access

Name: StorageMapAccess

Type: varies

Fetches a value from a mapping in storage, given a key, starting at a specific slot, and decode the data according to a given signature.

Filter Addresses In Trace

Name: FilterAddressesInTrace

Type: list<address>

Given a list of addresses, only return the addresses that are active in this block (appear somewhere in the trace of a transaction)

This is useful when trying to run invariants on a large number of addresses.

The given addresses must come from a "historical" source (some deterministic manipulation over HistoricalEvents or HistoricalCalls)

State Root

Name: StateRoot

Type: bytes

Get the hash of the state root in a given block.

Storage hash

Name: StorageHash

Type: bytes

Get the the storage hash of a given contract on a given block. StorageHash is the SHA3 of the Merkle-tree root of a contact's storage.

Block Hash

Name: BlockHash

Type: bytes

Get the hash of a specified block.

Last updated