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
array
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

array
An array of log objects, or an empty array if nothing has changed since last poll:
address
An address from which this log originated
topics
An array of zero to four 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 declare the event with the anonymous specifier
data
It contains one or more 32 Bytes non-indexed arguments of the log
blockNumber
The block number where this log was in. null when it's a pending log
transactionHash
The hash of the transactions this log was created from. null when its a pending log
transactionIndex
The integer of the transaction's index position that the log was created from. null when it's a pending log
blockHash
The hash of the block where this log was in. null when it's a pending log
logIndex
The integer of the log index position in the block. null when it's a pending log
removed
It is true when the log was removed due to a chain reorganization, and false if it's a valid log
Request
1
curl https://docs-demo.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