APIs introduction
Ethereum node API
- Getting started | Ethereum
- Enable Debug & Trace APIs for your Ethereum Node
- Ethereum API Postman Collection
- Blocks info | Ethereum
- Transactions info | Ethereum
- Executing transactions | Ethereum
- Debug and Trace | Ethereum
- Chain info | Ethereum
- Gas data | Ethereum
- Accounts info | Ethereum
- Logs & events | Ethereum
- Client information | Ethereum
- Filter handling | Ethereum
- Subscriptions | Ethereum
Ethereum Beacon Chain API
- Getting tarted | Beacon Chain
- Beacon Chain configuration info
- Beacon Chain events
- Beacon Chain validators info
- Beacon Chain state
Polygon node API
- Getting started | Polygon
- Blocks Info | Polygon
- Transactions info | Polygon
- Executing transactions | Polygon
- Debug & Trace | Polygon
- Chain info | Polygon
- Gas data | Polygon
- Accounts info | Polygon
- Logs & events | Polygon
- Filter handling | Polygon
- Client information | Polygon
- Subscriptions | Polygon
BNB node API
- Getting started | BNB Chain
- Endpoints
Base node API
- Getting started | Base
- Endpoints
Avalanche node API
- Getting started | Avalanche
- Blocks Info | Avalanche
- Transactions info | Avalanche
- Executing transactions | Avalanche
- Debug & Trace | Avalanche
- Chain info | Avalanche
- Gas data | Avalanche
- Accounts info | Avalanche
- Logs & events | Avalanche
- Filter handling | Avalanche
- Client information | Avalanche
- Subscriptions | Avalanche
TON node API
- Getting started | TON
- Getting started | TON
- GETgetAddressInformation | TON v2
- GETgetExtendedAddressInformation | TON v2
- GETgetWalletInformation | TON v2
- GETgetTransactions | TON v2
- GETgetAddressBalance | TON v2
- GETgetAddressState | TON v2
- GETpackAddress | TON v2
- GETunpackAddress | TON v2
- GETgetTokenData | TON v2
- GETdetectAddress | TON v2
- GETgetMasterchainInfo | TON v2
- GETgetMasterchainBlockSignatures | TON v2
- GETgetShardBlockProof | TON v2
- GETgetConsensusBlock | TON v2
- GETlookupBlock | TON v2
- GETshards | TON v2
- GETgetBlockTransactions | TON v2
- GETgetBlockTransactionsExt | TON v2
- GETgetBlockHeader | TON v2
- GETtryLocateTx | TON v2
- GETtryLocateResultTx | TON v2
- GETtryLocateSourceTx | TON v2
- GETgetConfigParam | TON v2
- POSTrunGetMethod | TON v2
- GETmasterchainInfo | TON v3
- GETblocks | TON v3
- GETmasterchainBlockShardState | TON v3
- GETaddressBook | TON v3
- GETmasterchainBlockShards | TON v3
- GETtransactions | TON v3
- GETtransactionsByMasterchainBlock | TON v3
- GETtransactionsByMessage | TON v3
- GETadjacentTransactions | TON v3
- GETmessages | TON v3
- GETnft/collections | TON v3
- GETnft/items | TON v3
- GETnft/transfers | TON v3
- GETjetton/masters | TON v3
- GETjetton/wallets | TON v3
- GETjetton/transfers | TON v3
- GETjetton/burns | TON v3
- POSTrunGetMethod | TON v3
- POSTestimateFee | TON v3
- GETaccount | TON v3
- GETwallet | TON v3
Arbitrum node API
- Getting Started | Arbitrum
- Blocks info | Arbitrum
- Transactions info | Arbitrum
- Executing transactions | Arbitrum
- Debug & Trace | Arbitrum
- Chain info | Arbitrum
- Gas data | Arbitrum
- Accounts info | Arbitrum
- Logs & events | Arbitrum
- Filter handling | Arbitrum
- Client information | Arbitrum
- Subscriptions | Arbitrum
Zksync node API
- Getting started | ZKsync
- Getting started | ZKsync
- POSTzks_L1ChainId | zkSync Era
- POSTzks_estimateFee | zkSync Era
- POSTzks_estimateGasL1ToL2 | zkSync Era
- POSTzks_getAllAccountBalances | zkSync Era
- POSTzks_getBlockDetails | zkSync Era
- POSTzks_getBridgeContracts | zkSync Era
- POSTzks_getBytecodeByHash | zkSync Era
- POSTzks_getL1BatchBlockRange | zkSync Era
- POSTzks_getL1BatchDetails | zkSync Era
- POSTzks_getL2ToL1LogProof | zkSync Era
- POSTzks_getMainContract | zkSync Era
- POSTzks_getRawBlockTransactions | zkSync Era
- POSTzks_getTestnetPaymaster | zkSync Era
- POSTzks_getTransactionDetails | zkSync Era
- POSTzks_L1BatchNumber | zkSync Era
Polygon zkEVM node API
- Getting started
- zkEVM methods | Polygon zkEVM
- POSTeth_blockNumber | zkEVM
- POSTeth_getBlockByNumber | zkEVM
- POSTeth_getBlockByHash | zkEVM
- POSTeth_getBlockTransactionCountByNumber | zkEVM
- POSTeth_getBlockTransactionCountByHash | zkEVM
- POSTeth_newBlockFilter | zkEVM
- POSTeth_getTransactionByHash | zkEVM
- POSTeth_getTransactionReceipt | zkEVM
- POSTeth_getTransactionByBlockNumberAndIndex | zkEVM
- POSTeth_getTransactionByBlockHashAndIndex | zkEVM
- POSTeth_newPendingTransactionFilter | zkEVM
- POSTeth_call | zkEVM
- POSTeth_sendRawTransaction | zkEVM
- POSTeth_getBalance | zkEVM
- POSTeth_getCode | zkEVM
- POSTeth_getStorageAt | zkEVM
- POSTeth_getTransactionCount | zkEVM
- POSTeth_chainId | zkEVM
- POSTeth_syncing | zkEVM
- POSTweb3_clientVersion | zkEVM
- POSTeth_estimateGas | zkEVM
- POSTeth_gasPrice | zkEVM
- POSTeth_getLogs | zkEVM
- POSTeth_newFilter | zkEVM
- POSTeth_getFilterChanges | zkEVM
- POSTeth_uninstallFilter | zkEVM
Optimism node API
- Getting started | Optimism
- POSTeth_blockNumber | Optimism
- POSTeth_getBlockByHash | Optimism
- POSTeth_getBlockByNumber | Optimism
- POSTeth_getBlockTransactionCountByHash | Optimism
- POSTeth_getBlockTransactionCountByNumber | Optimism
- POSTeth_getUncleCountByBlockHash | Optimism
- POSTeth_getUncleCountByBlockNumber | Optimism
- POSTeth_getBlockReceipts | Optimism
- POSTeth_chainId | Optimism
- POSTeth_syncing | Optimism
- POSTeth_call | Optimism
- POSTeth_estimateGas | Optimism
- POSTeth_createAccessList | Optimism
- POSTeth_gasPrice | Optimism
- POSTeth_feeHistory | Optimism
- POSTeth_newFilter | Optimism
- POSTeth_newBlockFilter | Optimism
- POSTeth_uninstallFilter | Optimism
- POSTeth_getFilterChanges | Optimism
- POSTeth_getFilterLogs | Optimism
- POSTeth_getLogs | Optimism
- POSTeth_getBalance | Optimism
- POSTeth_getStorageAt | Optimism
- POSTeth_getTransactionCount | Optimism
- POSTeth_getCode | Optimism
- POSTeth_getProof | Optimism
- POSTeth_getTransactionByHash | Optimism
- POSTeth_getRawTransactionByHash | Optimism
- POSTeth_getTransactionByBlockHashAndIndex | Optimism
- POSTeth_getRawTransactionByBlockHashAndIndex | Optimism
- POSTeth_getTransactionByBlockNumberAndIndex | Optimism
- POSTeth_getRawTransactionByBlockNumberAndIndex | Optimism
- POSTeth_getTransactionReceipt | Optimism
- eth_subscribe newHeads | Optimism
- eth_subscribe logs | Optimism
- eth_unsubscribe | Optimism
- POSTeth_maxPriorityFeePerGas | Optimism
- POSTeth_sendRawTransaction | Optimism
- POSTweb3_clientVersion | Optimism
- POSTweb3_sha3 | Optimism
- POSTnet_listening | Optimism
- POSTeth_callMany | Optimism
- POSTdebug_getModifiedAccountsByNumber | Optimism
- POSTdebug_getModifiedAccountsByHash | Optimism
- POSTdebug_storageRangeAt | Optimism
- POSTdebug_traceBlockByHash | Optimism
- POSTdebug_traceBlockByNumber | Optimism
- POSTdebug_traceTransaction | Optimism
- POSTdebug_traceCall | Optimism
- POSTdebug_traceCallMany | Optimism
Aurora node API
- Getting started | Aurora
- POSTeth_blockNumber | Aurora
- POSTeth_getBlockByNumber | Aurora
- POSTeth_getBlockByHash | Aurora
- POSTeth_getBlockTransactionCountByNumber | Aurora
- POSTeth_getBlockTransactionCountByHash | Aurora
- POSTeth_newBlockFilter | Aurora
- POSTeth_getTransactionByHash | Aurora
- POSTeth_getTransactionReceipt | Aurora
- POSTeth_getTransactionByBlockNumberAndIndex | Aurora
- POSTeth_getTransactionByBlockHashAndIndex | Aurora
- POSTeth_newPendingTransactionFilter | Aurora
- POSTeth_call | Aurora
- POSTeth_sendRawTransaction | Aurora
- POSTeth_getBalance | Aurora
- POSTeth_getCode | Aurora
- POSTeth_getStorageAt | Aurora
- POSTeth_getTransactionCount | Aurora
- POSTeth_chainId | Aurora
- POSTeth_syncing | Aurora
- POSTweb3_clientVersion | Aurora
- POSTnet_listening | Aurora
- POSTnet_peerCount | Aurora
- POSTeth_estimateGas | Aurora
- POSTeth_gasPrice | Aurora
- POSTeth_getLogs | Aurora
- POSTeth_newFilter | Aurora
- POSTeth_getFilterChanges | Aurora
- POSTeth_uninstallFilter | Aurora
Solana node API
- Getting started | Solana
- POSTgetAccountInfo | Solana
- POSTgetBalance | Solana
- POSTgetBlockHeight | Solana
- POSTgetBlock | Solana
- POSTgetBlockProduction | Solana
- POSTgetBlockCommitment | Solana
- POSTgetBlocks | Solana
- POSTgetBlocksWithLimit | Solana
- POSTgetBlockTime | Solana
- POSTgetClusterNodes | Solana
- POSTgetEpochInfo | Solana
- POSTgetEpochSchedule | Solana
- POSTgetFeeForMessage | Solana
- POSTgetFirstAvailableBlock | Solana
- POSTgetGenesisHash | Solana
- POSTgetHighestSnapshotSlot | Solana
- POSTgetIdentity | Solana
- POSTgetInflationGovernor | Solana
- POSTgetInflationRate | Solana
- POSTgetInflationReward | Solana
- POSTgetLatestBlockhash | Solana
- POSTgetLeaderSchedule | Solana
- POSTgetMaxRetransmitSlot | Solana
- POSTgetMaxShredInsertSlot | Solana
- POSTgetMinimumBalanceForRentExemption | Solana
- POSTgetMultipleAccounts | Solana
- POSTgetProgramAccounts | Solana
- POSTgetRecentBlockhash | Solana
- POSTgetRecentPerformanceSamples | Solana
- POSTgetRecentPrioritizationFees | Solana
- POSTgetSignaturesForAddress | Solana
- POSTgetSignatureStatuses | Solana
- POSTgetSlot | Solana
- POSTgetSlotLeader | Solana
- POSTgetStakeActivation | Solana
- POSTgetStakeMinimumDelegation | Solana
- POSTgetSupply | Solana
- POSTgetTokenAccountBalance | Solana
- POSTgetTokenAccountsByOwner | Solana
- POSTgetTokenLargestAccounts | Solana
- POSTgetLargestAccounts | Solana
- POSTgetTransaction | Solana
- POSTisBlockhashValid | Solana
- POSTsimulateTransaction | Solana
- logsSubscribe | Solana
- logsUnsubscribe | Solana
- blockSubscribe | Solana
- blockUnsubscribe | Solana
- accountSubscribe | Solana
- accountUnsubscribe | Solana
- programSubscribe | Solana
- programUnsubscribe | Solana
- rootSubscribe | Solana
- rootUnsubscribe | Solana
- signatureSubscribe | Solana
- signatureUnsubscribe | Solana
- slotSubscribe | Solana
- slotUnsubscribe | Solana
- slotsUpdatesSubscribe | Solana
- slotsUpdatesUnsubscribe | Solana
Ronin node API
- Getting started | Ronin
- POSTeth_blockNumber | Ronin
- POSTeth_getBlockByHash | Ronin
- POSTeth_getBlockByNumber | Ronin
- POSTeth_getBlockTransactionCountByHash | Ronin
- POSTeth_getBlockTransactionCountByNumber | Ronin
- POSTeth_newBlockFilter | Ronin
- POSTeth_getTransactionByHash | Ronin
- POSTeth_getTransactionReceipt | Ronin
- POSTeth_getTransactionByBlockHashAndIndex | Ronin
- POSTeth_getTransactionByBlockNumberAndIndex | Ronin
- POSTeth_getFilterChanges | Ronin
- POSTeth_call | Ronin
- POSTeth_sendRawTransaction | Ronin
- POSTdebug_traceBlockByHash | Ronin
- POSTdebug_traceBlockByNumber | Ronin
- POSTdebug_traceTransaction | Ronin
- POSTdebug_traceCall | Ronin
- POSTeth_chainId | Ronin
- POSTeth_syncing | Ronin
- POSTeth_estimateGas | Ronin
- POSTeth_gasPrice | Ronin
- POSTeth_maxPriorityFeePerGas | Ronin
- POSTeth_getTransactionCount | Ronin
- POSTeth_getBalance | Ronin
- POSTeth_getCode | Ronin
- POSTeth_getStorageAt | Ronin
- POSTeth_getLogs | Ronin
- POSTeth_newFilter | Ronin
- POSTweb3_clientVersion | Ronin
- POSTnet_listening | Ronin
- POSTnet_peerCount | Ronin
- POSTeth_getFilterChanges | Ronin
- POSTeth_uninstallFilter | Ronin
- eth_subscribe ("newHeads") | Ronin
- eth_subscribe("newPendingTransactions") | Ronin
- eth_subscribe ("logs") | Ronin
- eth_unsubscribe | Ronin
Gnosis Chain node API
- Getting started | Gnosis
- Beacon Chain | Gnosis
- Blocks info | Gnosis
- Transactions info | Gnosis
- Executing transactions | Gnosis
- Chain info | Gnosis
- Gas data | Gnosis
- Accounts info | Gnosis
- Logs & events | Gnosis
- Filter handling | Gnosis
- Client information | Gnosis
- Subscriptions | Gnosis
Cronos node API
- Getting started | Cronos
- POSTeth_blockNumber | Cronos
- POSTeth_getBlockByNumber | Cronos
- POSTeth_getBlockByHash | Cronos
- POSTeth_getBlockTransactionCountByNumber | Cronos
- POSTeth_getBlockTransactionCountByHash | Cronos
- POSTeth_newBlockFilter | Cronos
- POSTeth_getTransactionByHash | Cronos
- POSTeth_getTransactionReceipt | Cronos
- POSTeth_getTransactionByBlockNumberAndIndex | Cronos
- POSTeth_getTransactionByBlockHashAndIndex | Cronos
- POSTeth_newPendingTransactionFilter | Cronos
- POSTeth_call | Cronos
- POSTeth_sendRawTransaction | Cronos
- POSTeth_getBalance | Cronos
- POSTeth_getCode | Cronos
- POSTeth_getStorageAt | Cronos
- POSTeth_getProof | Cronos
- POSTeth_getTransactionCount | Cronos
- POSTeth_chainId | Cronos
- POSTeth_syncing | Cronos
- POSTweb3_clientVersion | Cronos
- POSTnet_listening | Cronos
- POSTnet_peerCount | Cronos
- POSTeth_estimateGas | Cronos
- POSTeth_gasPrice | Cronos
- POSTeth_maxPriorityFeePerGas | Cronos
- POSTeth_getLogs | Cronos
- POSTeth_newFilter | Cronos
- POSTeth_getFilterChanges | Cronos
- POSTeth_uninstallFilter | Cronos
Fantom node API
- Getting started | Fantom
- POSTeth_blockNumber | Fantom
- POSTeth_getBlockByNumber | Fantom
- POSTeth_getBlockByHash | Fantom
- POSTeth_getBlockTransactionCountByNumber | Fantom
- POSTeth_getBlockTransactionCountByHash | Fantom
- POSTeth_newBlockFilter | Fantom
- POSTeth_getTransactionByHash | Fantom
- POSTeth_getTransactionReceipt | Fantom
- POSTeth_getTransactionByBlockNumberAndIndex | Fantom
- POSTeth_getTransactionByBlockHashAndIndex | Fantom
- POSTeth_newPendingTransactionFilter | Fantom
- POSTeth_call | Fantom
- POSTeth_sendRawTransaction | Fantom
- POSTeth_getBalance | Fantom
- POSTeth_getCode | Fantom
- POSTeth_getStorageAt | Fantom
- POSTeth_getProof | Fantom
- POSTeth_getTransactionCount | Fantom
- POSTeth_chainId | Fantom
- POSTeth_syncing | Fantom
- POSTweb3_clientVersion | Fantom
- POSTnet_listening | Fantom
- POSTnet_peerCount | Fantom
- POSTeth_estimateGas | Fantom
- POSTeth_gasPrice | Fantom
- POSTeth_maxPriorityFeePerGas | Fantom
- POSTeth_getLogs | Fantom
- POSTeth_newFilter | Fantom
- POSTeth_getFilterChanges | Fantom
- POSTeth_uninstallFilter | Fantom
- Custom JS tracer | Fantom
- debug traceBlockByHash | Fantom Chain
- debug traceBlockByNumber | Fantom
- debug traceTransaction | Fantom
- trace block | Fantom
- trace transaction | Fantom
- trace filter | Fantom
- trace get | Fantom
Bitcoin node API
- Bitcoin API reference
- Bitcoin API Postman collection
- POSTgetbestblockhash | Bitcoin
- POSTgetblock | Bitcoin
- POSTgetblockchaininfo | Bitcoin
- POSTgetblockfilter | Bitcoin
- POSTgetblockhash | Bitcoin
- POSTgetblockheader | Bitcoin
- POSTgetblockstats | Bitcoin
- POSTgetchaintips | Bitcoin
- POSTgetchaintxstats | Bitcoin
- POSTgetdifficulty | Bitcoin
- POSTgetmempoolancestors | Bitcoin
- POSTgetmempooldescendants | Bitcoin
- POSTgetmempoolentry | Bitcoin
- POSTgetmempoolinfo | Bitcoin
- POSTgetrawmempool | Bitcoin
- POSTgettxoutsetinfo | Bitcoin
- POSTgettxout | Bitcoin
- POSTverifychain | Bitcoin
- POSTgettxoutproof | Bitcoin
- POSTpreciousblock | Bitcoin
- POSTverifytxoutproof | Bitcoin
- POSTuptime | Bitcoin
- POSTgetmemoryinfo | Bitcoin
- POSTgetrpcinfo | Bitcoin
- POSTgetblocktemplate | Bitcoin
- POSTgetmininginfo | Bitcoin
- POSTgetnetworkhashps | Bitcoin
- POSTprioritisetransaction | Bitcoin
- POSTgetpeerinfo | Bitcoin
- POSTgetnetworkinfo | Bitcoin
- POSTgetconnectioncount | Bitcoin
- POSTgetnettotals | Bitcoin
- POSTlistbanned | Bitcoin
- POSTping | Bitcoin
- POSTgetnodeaddresses | Bitcoin
- POSTdecodescript | Bitcoin
- POSTdecoderawtransaction | Bitcoin
- POSTgetrawtransaction | Bitcoin
- POSTestimatesmartfee | Bitcoin
- POSTvalidateaddress | Bitcoin
Starknet node API
- Getting started | Starknet
- POSTstarknet_call | Starknet
- POSTstarknet_estimateFee | Starknet
- POSTstarknet_estimateMessageFee | Starknet
- POSTstarknet_simulateTransactions | Starknet
- POSTstarknet_traceBlockTransactions | Starknet
- POSTstarknet_getClassHashAt | Starknet
- POSTstarknet_getNonce | Starknet
- POSTstarknet_getStorageAt | Starknet
- POSTstarknet_getTransactionByBlockIdAndIndex | Starknet
- POSTstarknet_getTransactionByHash | Starknet
- POSTstarknet_getClassAt | Starknet
Chainstack platform API
- Getting started
- Quick tutorial
- Organization
- Project
- Network
- Node
- Marketplace
- IPFS storage
- Faucet
eth_getBlockTransactionCountByHash | Arbitrum
curl --request POST \
--url https://nd-000-364-211.p2pify.com/5b8d22690a57f293b3a1ed8758014e35 \
--header 'Content-Type: application/json' \
--data '{
"id": 1,
"jsonrpc": "2.0",
"method": "eth_getBlockTransactionCountByHash",
"params": [
"0x7ccd0791880035667dfee8244ab96d9c091668859e9e72ded4890e6efde68b25"
]
}'
{
"jsonrpc": "<string>",
"id": 123,
"result": "<string>"
}
Arbitrum API method that returns the number of transactions in a block specified by block hash. This information can be useful for analytics purposes.
Get you own node endpoint today
Start for free and get your app to production levels immediately. No credit card required.
You can sign up with your GitHub, X, Google, or Microsoft account.
Parameters
hash
— the block hash of the requested block
Response
quantity
— an integer value representing how many transactions are included in the block.
eth_getBlockTransactionCountByHash
code examples
const Web3 = require("web3");
const NODE_URL = "CHAINSTACK_NODE_URL";
const web3 = new Web3(NODE_URL);
async function getTransactionsCount(blockHash) {
const count = await web3.eth.getBlockTransactionCount(blockHash)
console.log(count);
}
getTransactionsCount('0x0cf9ebbbc3ecf05ac1f79095ee5699602b9b010278628aa58ecf6e058a41562a')
Use case
eth_getBlockTransactionCountByHash
is a useful tool for analyzing transaction volume on the Arbitrum blockchain. On average, a new block is generated on the Arbitrum mainnet every 0.3 seconds, resulting in approximately 12,000 blocks per hour. Using the web3.js library, one can inspect the past 12,000 blocks starting from the latest block, retrieve the hash of each block, and use eth_getBlockTransactionCountByHash
to find the number of transactions in each block.
const Web3 = require("web3");
const NODE_URL = "CHAINSTACK_NODE_URL";
const web3 = new Web3(NODE_URL);
async function retrieveTransactionsCount() {
// Get the current block number
const currentBlockNumber = await web3.eth.getBlockNumber();
// Calculate the block number from one hour ago
const oneHourAgoBlockNumber = currentBlockNumber - 12000; // 12000 blocks/hr on average on the Arbitrum mainnet
// Initialize a variable to store the total number of transactions
let totalTransactionCount = 0;
// Loop through all blocks from the current block number to the block number from one hour ago
for (let block = currentBlockNumber; block > oneHourAgoBlockNumber; block--) {
// Get the hash of each block
const getBlockHash = await web3.eth.getBlock(block, false);
const blockHash = getBlockHash.hash
// Get the number of transactions in this block using each hash
const transactionCount = await web3.eth.getBlockTransactionCount(blockHash);
// Add the number of transactions in this block to the total
totalTransactionCount += transactionCount;
console.log(`Block #${block} has ${transactionCount} transactions.`);
}
console.log(`The total number of transactions in the previous hour is: ${totalTransactionCount}`);
}
retrieveTransactionsCount();
This example connects to an Arbitrum node using the web3.js library. The retrieveTransactionsCount
function gets the current block number, calculates the block number from one hour ago, and uses a for loop to iterate through all blocks in that range.
The function then retrieves the hash of each block and the number of transactions in each block and adds it to a total transaction count. The final result, the total number of transactions in the previous hour, is logged to the console.
This is a good example of how you can combine different methods.
Body
The block hash identifier.
curl --request POST \
--url https://nd-000-364-211.p2pify.com/5b8d22690a57f293b3a1ed8758014e35 \
--header 'Content-Type: application/json' \
--data '{
"id": 1,
"jsonrpc": "2.0",
"method": "eth_getBlockTransactionCountByHash",
"params": [
"0x7ccd0791880035667dfee8244ab96d9c091668859e9e72ded4890e6efde68b25"
]
}'
{
"jsonrpc": "<string>",
"id": 123,
"result": "<string>"
}