Skip to main content

eth_getLogs RPC Method

Returns an array of all logs matching a given filter object.

Updated on
Oct 09, 2026
Please note that the eth_getLogs method supports up to 4 topics and is most reliable when used with block ranges of 50 blocks or fewer. Keeping queries within this range helps maintain optimal performance and reduces the risk of timeouts or incomplete results.

For historical HyperEVM logs, send eth_getLogs requests to the /nanoreth archive route. The /evm route retains recent data only. Split a longer history into smaller block ranges and query each range separately.

Parameters

object
object

The transaction call object which contains the following fields

fromBlock
string

The block number as a string in hexadecimal format or tags. The supported tag values include earliest for the earliest/genesis block, latest for the latest mined block, pending for the pending state/transactions, safe for the most recent secure block, and finalized for the most recent secure block accepted by more than 2/3 of validators. safe and finalized are only supported on Ethereum, Gnosis, Arbitrum, Arbitrum Nova, and Avalanche C-chain

toBlock
string

The block number as a string in hexadecimal format or tags. The supported tag values include earliest for the earliest/genesis block, latest for the latest mined block, pending for the pending state/transactions, safe for the most recent secure block, and finalized for the most recent secure block accepted by more than 2/3 of validators. safe and finalized are only supported on Ethereum, Gnosis, Arbitrum, Arbitrum Nova, and Avalanche C-chain

address
string

The contract address or a list of addresses from which logs should originate

topics
array

An array of DATA topics and also, the topics are order-dependent. Visit this official page to learn more about topics

blockHash
string

With the addition of EIP-234, blockHash is a new filter option that restricts the logs returned to the block number referenced in the blockHash. Using the blockHash field is equivalent to setting the fromBlock and toBlock to the block number the blockHash references. If blockHash is present in the filter criteria, neither fromBlock nor toBlock is allowed

Returns

result
array

An array of log objects, or an empty array if nothing has changed since last poll

address
string

The address from which this log originated

topics
array

An array of (0 to 4) 32 Bytes DATA of indexed log arguments. (In solidity: The first topic is the hash of the signature of the event (e.g. Deposit(address,bytes32,uint256)), except you declared the event with the anonymous specifier)

data
string

It contains one or more 32 Bytes non-indexed arguments of the log

blockNumber
string

The block number where this log was in. null when its pending. Null when it's a pending log

transactionHash
string

The hash of the transaction from which this log was created from. null if the log is pending

transactionIndex
string

The integer of the transaction's index position that the log was created from. Null when it's a pending log

blockHash
string

The hash of the block where this log was in. Null when it's a pending log

logIndex
string

The integer of the log index position in the block. Null when it's a pending log

removed
boolean

It is true if log was removed, due to a chain reorganization and false if it's a valid log

Request
Don't have an account yet?
Create your Quicknode endpoint in seconds and start building
Get started for free