quantity or tag — the block hash, block number encoded as hexadecimal, or the string with:
latest — the most recent block in the blockchain and the current state of the blockchain at the most recent blockearliest — the earliest available or genesis blockpending — the pending state and transactions block. The current state of transactions that have been broadcast to the network but have not yet been included in a block.result — an array of objects with the following fields:
Transaction receipt — the object with:
blockHash — the block hash. Identifies the block in which the transaction was included. This field is null for transactions that have not yet been included in a block.blockNumber — the number of the block in which the transaction was included. This field is null for transactions that have not yet been included in a block.contractAddress — the address of the contract created by the transaction if it was a contract creation transaction. Otherwise, the value is null.cumulativeGasUsed — the total amount of gas used in the block until this transaction was executed.effectiveGasPrice — the actual value deducted from the sender’s account for this transaction.from — the address of the sender who initiated the transaction.gasUsed — the amount of gas used by this specific transaction alone.logs — an array of log objects generated by this transaction, if any. Logs are generated by smart contracts.logsBloom — the bloom filter used by light clients to quickly retrieve logs related to the transaction.status — the success status of the transaction, represented as 1 for success or 0 for failure.to — the address of the recipient of the transaction if it was a transaction to an address. For contract creation transactions, this field is null.transactionHash — the hash that uniquely identifies the transaction.transactionIndex — the index of the transaction within the block.type — the type of the transaction. 0 indicates a regular transfer; 2 indicates a contract creation or smart contract function call.eth_getBlockReceipts code exampleseth_getBlockReceipts allows you to retrieve the receipts for all transactions in a specific block. A practical use case can be to retrieve all of the logs emitted from the transactions in a block. The method returns an array of transaction receipts, where each contains information about the transaction and any logs generated as a result of the transaction execution, so the logs can be isolated.
Here is an example of how to use eth_getBlockReceipts in ethers.js to extract all of the logs in a specific block and return them in an array:
retrieveTransactionLogs function takes a block identifier as an input and returns an array of logs. The function first calls the eth_getBlockReceipts method using the provider.send method and passes in the block identifier as an argument. The result is an array of receipts, then flattened into a single array of logs using the flatMap function.