APIs used:
In blockchain applications, knowing the number of transactions in a specific block can be critical for analysis, auditing, or monitoring network activity. This guide will show you how to use the GoldRush API to fetch this information, providing a practical example with the Ethereum mainnet. The endpoint we will be using is this one:
Get all transactions in a block (v3)
/v1/{chainName}/block/{blockHeight}/transactions_v3/
Commonly used to fetch all transactions including their decoded log events in a block and further flag interesting wallets or transactions.
Understanding the Number of Transactions in a Block
The number of transactions in a block is a direct measure of blockchain activity for a given period. Each blockchain has its block time (the time it takes to mine or validate a new block), and the capacity of each block is influenced by the blockchain's architecture and consensus mechanism. For instance, the Ethereum network has a different block capacity and time compared to Bitcoin.
This number is not just a metric of how many transactions occurred but also an indicator of the network's health, efficiency, and scalability. High transaction counts in a block might indicate a vibrant ecosystem with lots of user activities, but they can also lead to network congestion and higher fees during peak times. Conversely, a low number of transactions could imply underutilization or off-peak operation periods.
Let’s dive into fetching this information!
Prerequisites
Before you begin, you'll need:
Node.js installed on your system.
A GoldRush API key, which you can obtain by signing up on the GoldRush website.
Tutorial: Fetching the Number of Transactions in a Block
Installation
To interact with the GoldRush API, first install the GoldRush client SDK. Open your terminal and run:
This command installs the necessary package to facilitate communication with the GoldRush API from your application.
npm install @covalenthq/client-sdk
Understand the Endpoint
The GoldRush API provides an endpoint to fetch all transactions within a specific block, which is structured as follows:
/v1/{chainName}/block/{blockHeight}/transactions_v3/
Parameters:
chainName (required): The name of the blockchain network, e.g.,
eth-mainnet
.blockHeight (required): The height of the block whose transactions you want to fetch.
Query Params:
quote-currency: Convert values to a specified currency (e.g., USD, EUR).
no-logs: Set to
true
to omit log events from the response.with-safe: Include details about the safety of transactions when set to
true
.
Fetching Transactions from a Block
To retrieve the number of transactions in a given block, use the following JavaScript code snippet:
In this example, we're querying block 19484423 on the Ethereum mainnet. Remember to replace "Your_Covalent_API_Key" with your actual GoldRush API key and adjust the blockHeight
to the specific block number you're interested in.
import { CovalentClient } from "@covalenthq/client-sdk"; const getBlockTransactions = async () => { const client = new CovalentClient("Your_Covalent_API_Key"); // Replace 'eth-mainnet' with your target blockchain and 'blockHeight' with the specific block number const resp = await client.TransactionService.getTransactionsForBlock("eth-mainnet", "19484423"); console.log("Number of transactions in the block:", resp.data.items.length); }; getBlockTransactions().catch(console.error);
Conclusion
This guide demonstrates a straightforward method to obtain the number of transactions in a specific block using the GoldRush API. By integrating this functionality, you can enhance your application's ability to provide users with precise blockchain transaction metrics, fostering a deeper understanding of network activity and trends.