Skip to main content

eth_getLogs RPC Method

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

Updated on
Dec 29, 2023

eth_getLogs RPC Method

Please be aware that the block range limit for this RPC method is 5 blocks for users on free Discover plans and 10,000 blocks for those on paid plans. Consider dividing your queries into smaller segments to enhance response times and manage errors more effectively. For further details on the block range limit and strategies for mitigating it, please consult the FAQ
With Endpoint Armor, you can define specific restrictions on this method when called. Learn more about Endpoint Armor here

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
string
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
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
1
curl https://docs-demo.base-mainnet.quiknode.pro/ \
2
-X POST \
3
-H "Content-Type: application/json" \
4
--data '{"method":"eth_getLogs","params":[{"address": "0xdAC17F958D2ee523a2206206994597C13D831ec7"}],"id":1,"jsonrpc":"2.0"}'
5
Don't have an account yet?
Create your QuickNode endpoint in seconds and start building
Get started for free