APIs used:
  • Get all transactions in a block (v3)  

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 Covalent 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)

GET/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 Covalent API key, which you can obtain by signing up on the Covalent website.

Tutorial: Fetching the Number of Transactions in a Block

1

Installation

To interact with the Covalent API, first install the Covalent client SDK. Open your terminal and run:

This command installs the necessary package to facilitate communication with the Covalent API from your application.

npm install @covalenthq/client-sdk
2

Understand the Endpoint

The Covalent API provides an endpoint to fetch all transactions within a specific block, which is structured as follows:

Bash
/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.

3

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 Covalent 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 Covalent 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.