If you wish to construct a block explorer – or implement related performance into your decentralized functions (dapps) – you’ll possible need to leverage a complete block explorer API. And, if so for you, you’ve come to the appropriate place!
In at the moment’s article, we’ll introduce you to Moralis’ industry-leading Web3 API suite – the final word software for constructing block explorers. With our premier interfaces, you may effortlessly get block knowledge, token costs, pockets balances, and far more. In case you’re wanting to get going, listed here are three distinguished Moralis API endpoints that may come in useful when constructing a block explorer:
getBlock() – Question the contents of a block by its block quantity or hash:const response = await Moralis.EvmApi.block.getBlock({
“chain”: “0x1”,
“blockNumberOrHash”: “18541416”
}); getWalletTransactions() – Fetch all transactions of any handle:const response = await Moralis.EvmApi.transaction.getWalletTransactions({
“chain”: “0x1”,
“handle”: “0x1f9090aaE28b8a3dCeaDf281B0F12828e676c326”
}); getWalletTokenBalances() – Get the token balances of any pockets: const response = await Moralis.EvmApi.token.getWalletTokenBalances({
“chain”: “0x1”,
“handle”: “0x1f9090aaE28b8a3dCeaDf281B0F12828e676c326”
});
For a extra detailed breakdown of the endpoints above and a tutorial on the best way to name them, be part of us on this article as we discover the intricacies of Moralis’ Web3 APIs. Moreover, should you choose watching movies to be taught, try the clip beneath, the place we cowl some distinguished endpoints wanted to construct your personal block explorer:
Additionally, if you wish to use our instruments and APIs to save lots of useful growth time and sources, don’t overlook to enroll with Moralis. You possibly can create your account freed from cost, and also you’ll have the ability to leverage blockchain know-how’s full energy instantly!
Overview
We’ll kickstart at the moment’s article by diving into the ins and outs of block explorers. From there, we’ll cowl the intricacies of block explorer APIs and clarify why you would possibly want one when constructing dapps. Subsequent, we’ll introduce you to the {industry}’s premier API supplier: Moralis. Moreover, we’ll cowl some distinguished endpoints that you just’ll want when constructing block explorers or implementing related performance into your initiatives. Lastly, to prime issues off, we’re going to provide you a block explorer API tutorial the place we present you the best way to get the token balances of any pockets in three steps:
Arrange MoralisWrite a Script Calling the getWalletTokenBalances() EndpointRun the Code
If this sounds intriguing, be part of us beneath as we kick issues off by what a block explorer is!
What’s a Block Explorer?
Block explorers – additionally generally known as blockchain explorers – are software program functions that let you extract, visualize, and evaluation blockchain knowledge. This contains important details about blocks, sensible contracts, occasions, transactions, pockets balances, and far more!
Most blockchain networks have their very own distinct block explorers. For instance, some distinguished examples embrace Ethereum’s Etherscan, Polygon’s PolygonScan, and BNB Good Chain’s (BSC) BscScan.
So, what precisely does a block explorer do? To reply this query, let’s have a look at some key options of block explorers. And let’s use Etherscan for example:
View Block Information: With Etherscan, you may seamlessly test the contents of any block on Ethereum. This contains info corresponding to timestamps, transactions, fuel used, fuel restrict, and far more:
Discover Token Information: Discover any token handle to get knowledge corresponding to the entire provide, variety of holders, transfers, costs, market caps, and details about underlying sensible contracts:
Examine Pockets Addresses: Examine any pockets handle and get info like native balances, token balances, transactions, inside transactions, switch histories, NFT transfers, and far more:
To have the ability to effortlessly fetch and show the data above, together with block knowledge, token costs, pockets transfers, and so forth., immediately from the blockchain, software program functions like Etherscan leverage block explorer APIs!
However what’s a block explorer API? Additionally, why must you use one?
What’s a Block Explorer API?
A block explorer API (utility programming interface) is a algorithm, protocols, and strategies that let you seamlessly work together with a blockchain to combine block explorer performance and knowledge into your initiatives. Consequently, a block explorer API basically offers a structured solution to entry knowledge about blocks, transactions, wallets, crypto addresses, and far more!
However why do you want a block explorer API?
Querying knowledge immediately from a blockchain community is a tedious and time-consuming job. And from a traditional perspective, it required builders to, as an illustration, run a full node themselves and construct their very own infrastructure for knowledge retrieval.
Thankfully, that is now not the case with subtle instruments like block explorer APIs, as they summary away lots of complexity related to blockchain know-how, providing you with a standardized solution to talk with the varied networks.
All in all, a block explorer API makes the method of querying knowledge from a blockchain a lot simpler. And with interfaces like these, you may leverage premade strategies and protocols, which means you don’t need to reinvent the wheel. Because of this, block explorer APIs let you save each lots of growth time and sources, underscoring the essential function these interfaces have inside the blockchain area!
So, which is the very best block explorer API supplier?
Introducing Moralis: The Final Block Explorer API Supplier
Moralis is an industry-leading API supplier, and our suite of premier interfaces makes Web3 growth as seamless as Web2. Consequently, when working with Moralis, it has by no means been simpler to construct every part from NFT marketplaces to your personal block explorer!
Moreover, in our suite of Web3 APIs, you’ll discover every part {that a} block explorer API has to supply and extra. As such, when working with Moralis, you may effortlessly fetch block knowledge, transactions, balances, token costs, NFTs, and so forth., with solely single traces of code.
However why must you be utilizing our Web3 APIs?
To reply the query above, let’s have a look at three distinguished advantages of Moralis:
Scalability: Our Web3 APIs are constructed to scale. Consequently, you don’t have to fret when your initiatives develop and see elevated adoption, as Moralis can have no bother dealing with the visitors.Excessive Efficiency: Our APIs are the {industry}’s premier interfaces. Select any metric – whether or not you need to measure by reliability, knowledge protection, pace, or anything – our Web3 APIs outperform the competitors day-after-day of the week.
Cross-Chain Compatability: With our Web3 APIs, you may seamlessly construct throughout the preferred blockchain networks, together with Ethereum, BNB Good Chain, Polygon, Avalanche, Gnosis, Chiliz, and plenty of others. As such, it has by no means been simpler to construct cross-chain suitable dapps!
So, what instruments can you discover in Moralis’ Web3 API suite?
Properly, right here’s a listing of a few of our most distinguished interfaces:
If you wish to discover all of them, try our Web3 API web page!
Learn how to Construct a Block Explorer with Moralis’ API Suite
Now, with an outline of Moralis’ Web3 API suite, you is perhaps questioning how one can leverage our instruments to construct a block explorer your self. Nonetheless, since block explorers are fairly intensive items of software program, we gained’t have the ability to cowl all performance on this tutorial. As an alternative, we’ll concentrate on a number of examples and dive into the important endpoints wanted to:
Get Block Information with the Blockchain APIFetch Token Costs with the Token API Question Token Balances with the Pockets API
So, with out additional ado, let’s kick issues off by displaying you the best way to get block knowledge utilizing Moralis’ Blockchain API!
Get Block Information with the Blockchain API
The primary central characteristic of any block explorer that we lined within the ”What’s a Block Explorer?” part was the power to view block knowledge, together with timestamps, transactions, fuel limits, and so forth:
The best solution to get this info is to leverage Moralis’ Blockchain API and the getBlock() endpoint. All you need to do is name this endpoint with two parameters: chain and blockNumberOrHash:
const response = await Moralis.EvmApi.block.getBlock({
“chain”: “0x1”,
“blockNumberOrHash”: “18541416”
});
Calling the endpoint above returns the contents of the block in query, together with a timestamp, hash, transactions, fuel used, fuel restrict, and far more. That is what it’d appear to be:
{
“timestamp”: “2023-11-10T12:02:11.000Z”,
“quantity”: “18541416”,
“hash”: “0xe9de65582d5a210f3f5703e0d7dc1daf9fbb5a0670937f5d92283a41ea1bcb2b”,
“parent_hash”: “0xb63af7df0e2639cc25c323f22359b784408a117b534dea09cfec14263ea8d4fb”,
“nonce”: “0x0000000000000000”,
“sha3_uncles”: “0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347”,
“logs_bloom”: “0x00200//…”,
“transactions_root”: “0x0b6895fbd7fdf9b8e0239e5be21a195c89ffae093c1c2bcdea9ad498d720003b”,
“state_root”: “0x787cc0fff225d2b6d8acef1cea33522293d134297c1f4b22819a90f157db183d”,
“receipts_root”: “0x6d7caa30f12937a232dcedda5f8bc2c973ba917a67062cedeb4ccb52c729058c”,
“miner”: “0x95222290DD7278Aa3Ddd389Cc1E1d165CC4BAfe5”,
“issue”: “0”,
“total_difficulty”: “58750003716598352816469”,
“measurement”: “7792”,
“extra_data”: “0x6265617665726275696c642e6f7267”,
“gas_limit”: “30000000”,
“gas_used”: “1372772”,
//…
}
If you wish to know extra about how this works, try our Blockchain API tutorial!
Fetch Token Costs with the Token API
One other vital characteristic of most block explorers is the power to discover token knowledge, together with transfers, holders, and so forth. And on this part, we’ll present you the best way to get the value of any token:
Probably the most easy solution to get this knowledge is to leverage Moralis’ Token API. With solely a single name to the getTokenPrice() endpoint, you may seamlessly get the value of any token, and all you need to do is specify two parameters: chain and handle:
const response = await Moralis.EvmApi.token.getTokenPrice({
“chain”: “0x1”,
“handle”: “0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0”
});
In return for calling the getTokenPrice() endpoint, you get the token’s worth denominated within the chain’s native forex and USD. Right here’s an instance of what it’d appear to be:
{
“tokenName”: “Matic Token”,
“tokenSymbol”: “MATIC”,
“tokenLogo”: “https://cdn.moralis.io/eth/0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0.png”,
“tokenDecimals”: “18”,
“nativePrice”: {
“worth”: “423085770833740”,
“decimals”: 18,
“title”: “Ether”,
“image”: “ETH”,
“handle”: “0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2”
},
“usdPrice”: 0.8771902804648514,
“usdPriceFormatted”: “0.877190280464851369”,
“exchangeName”: “Uniswap v3”,
“exchangeAddress”: “0x1F98431c8aD98523631AE4a59f267346ea31F984”,
“tokenAddress”: “0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0”
}
Question Token Balances with the Pockets API
Lastly, a ultimate core characteristic of most block explorers is the performance to test knowledge related to a pockets handle, together with transfers, balances, and so forth. And on this part, we’ll present you the best way to fetch all token holdings of a pockets:
The best solution to get this info is to leverage Moralis’ Pockets API. All you want is a single name to the getWalletTokenBalances() endpoint whereas passing alongside two parameters: chain and handle:
const response = await Moralis.EvmApi.token.getWalletTokenBalances({
“chain”: “0x1”,
“handle”: “0x1f9090aaE28b8a3dCeaDf281B0F12828e676c326”
});
In return for calling the endpoint above, you get a listing of all tokens held by the pockets in query. It’s going to look one thing like this:
[
{
“token_address”: “0x3c978fc9a42c80a127863d786d8883614b01b3cd”,
“symbol”: “USDT”,
“name”: “USDTOKEN”,
“logo”: null,
“thumbnail”: null,
“decimals”: 18,
“balance”: “10000000000000000000000”,
“possible_spam”: true
},
{
“token_address”: “0xdac17f958d2ee523a2206206994597c13d831ec7”,
“symbol”: “USDT”,
“name”: “Tether USD”,
“logo”: “https://cdn.moralis.io/eth/0xdac17f958d2ee523a2206206994597c13d831ec7.png”,
“thumbnail”: “https://cdn.moralis.io/eth/0xdac17f958d2ee523a2206206994597c13d831ec7_thumb.png”,
“decimals”: 6,
“balance”: “209355461”,
“possible_spam”: false
},
//…
]
If you wish to discover all different endpoints, try our official Web3 API documentation web page!
What’s extra, should you’re on the lookout for a tutorial on how one can combine this knowledge into your dapps, try the Moralis YouTube video beneath. This clip offers a complete breakdown of how one can construct an Etherscan clone in lower than twelve minutes:
Block Explorer API Tutorial: Learn how to Get the Token Balances of a Pockets in 3 Steps
On this a part of the article, we’ll current a whole tutorial on how one can name the varied endpoints of Moralis. To spotlight the accessibility of our premier interfaces, we’ll use the getWalletTokenBalances() endpoint for example and present you the best way to get the token balances of a pockets in three steps:
Arrange MoralisWrite a Script Calling the getWalletTokenBalances() EndpointRun the Code
Nonetheless, you need to cope with a number of stipulations earlier than we will proceed!
Conditions
This will probably be a JavaScript tutorial. As such, it’s essential have the next prepared:
Step 1: Set Up Moralis
For step one, it’s essential be part of Moralis to get your API key. As such, should you don’t have already got an account, click on on the ”Begin for Free” button on the prime proper to enroll:
From there, go to the ”Settings” tab, scroll down, and replica your API key:
Hold it for now, as you’ll want it within the subsequent part!
Step 2: Write a Script Calling the getWalletTokenBalances() Endpoint
For the second step, arrange a brand new undertaking in your IDE, open a brand new terminal, and run the next command within the root folder to put in the Moralis SDK:
npm set up moralis @moralisweb3/common-evm-utils
Subsequent, create an ”index.js” file and add the next code:
const Moralis = require(“moralis”).default;
const { EvmChain } = require(“@moralisweb3/common-evm-utils”);
const runApp = async () => {
await Moralis.begin({
apiKey: “YOUR_API_KEY”,
// …and another configuration
});
const handle = “0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d”;
const chain = EvmChain.ETHEREUM;
const response = await Moralis.EvmApi.token.getWalletTokenBalances({
handle,
chain,
});
console.log(response.toJSON());
};
runApp();
From there, add your Moralis API key by changing YOUR_API_KEY:
Subsequent, configure chain and handle to suit your question:
From right here, we then go alongside chain and handle as parameters when calling the endpoint:
And that’s it for the script!
Step 3: Run the Code
For the ultimate step, open a brand new terminal and run the command beneath within the undertaking’s root folder:
node index.js
In return, you’ll get an array of all tokens held by the pockets in query. And it’ll look one thing like this:
[
{
“token_address”: “0xefd6c64533602ac55ab64442307f6fe2c9307305”,
“name”: “APE”,
“symbol”: “APE”,
“logo”: null,
“thumbnail”: null,
“decimals”: 18,
“balance”: “101715701444169451516503179”
},
{
“token_address”: “0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2”,
“name”: “Wrapped Ether”,
“symbol”: “WETH”,
“logo”: “https://cdn.moralis.io/eth/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2.webp”,
“thumbnail”: “https://cdn.moralis.io/eth/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2_thumb.webp”,
“decimals”: 18,
“balance”: “85000000000000000”
}
]
Congratulations! You now know the best way to get the token balances of a pockets with Moralis!
If questions stay, try the official documentation web page demonstrating the best way to get all ERC-20 tokens owned by an handle. Additionally, you may comply with the steps above to name another Moralis endpoint. All you need to do is substitute the endpoint and configure the parameters in the course of the second step!
Abstract: Exploring the Trade’s Premier Block Explorer API
In at the moment’s article, we launched you to Moralis’ industry-leading suite of Web3 APIs. With our premier interfaces, you get every part it’s essential construct a block explorer or combine related performance into your initiatives, making it the final word Etherescan API different. And because of the accessibility of our APIs, you may get the information you want with single traces of code!
Along with introducing you to Moralis, we additionally confirmed you the best way to get the token balances of a pockets in three steps:
Arrange MoralisWrite a Script Calling the getWalletTokenBalances() EndpointRun the Code
Consequently, if in case you have adopted alongside this far, you now know the best way to get blockchain knowledge utilizing Moralis!
In case you favored this block explorer API tutorial, think about trying out extra content material on the Web3 weblog. As an example, try our Ropsten faucet information or find out about the very best blockchain API suppliers!
Additionally, if you wish to leverage our industry-leading Web3 APIs, don’t overlook to enroll with Moralis at the moment!