[ad_1]
The dynamic Web3 growth area is house to quite a few Web3 API suppliers, which deliver their distinctive strengths and weaknesses to the desk. With this abundance of API choices, you may discover it difficult to find out which APIs greatest fit your growth wants. And whereas it would seem to be most suppliers provide related merchandise, evaluating completely different Web3 APIs can usually be like evaluating apples to oranges.
So, out of all Web3 API suppliers, which is the most suitable choice? To seek out out, observe alongside on this information as we conduct a comparative evaluation of the Web3 trade’s main API suppliers: Moralis, Alchemy, and QuickNode. As we transfer ahead, we’ll fastidiously analyze these three suppliers from an accessibility, efficiency, and value perspective.
All through this information, you’ll shortly uncover that Moralis offers the trade’s most complete Web3 APIs. Consequently, Moralis facilitates the trade’s most accessible and easy developer expertise. So, if you happen to instantly need to begin utilizing Moralis’ top-tier Web3 APIs, click on the button beneath!
To study extra about why Moralis outperforms the competitors, be part of us beneath as we dive straight into our comparability of Web3 API suppliers!
Evaluating Web3 APIs: Moralis vs. Alchemy vs. QuickNode
To focus on the similarities and, extra importantly, variations between Moralis, Alchemy, and QuickNode, we used every supplier’s respective Web3 APIs to question the mandatory knowledge for constructing a portfolio view of Vitalik Buterin’s ERC-20 tokens. On this case, a portfolio view consists of the identify, brand, stability, and value of all belongings within the pockets.
We opted for Vitalik’s pockets resulting from its measurement and the intensive quantity of tokens it holds. This makes it the proper candidate for testing the supply of spam classifications and metadata for giant token units. This strategy additionally allowed us to systematically assess and evaluate the accessibility, effectivity, and cost-effectiveness of Moralis, Alchemy, and QuickNode when fetching the identical on-chain sources.
You’ll discover the outcomes of our exams summarized within the two charts beneath:
![Chart showing the number of calls required to build a portfolio view of Vitalik Buterin's ERC20 tokens using Moralis, Alchemy, and QuickNode's Web3 APIs.](https://moralis.io/wp-content/uploads/2024/02/Blog-Comparing-Web3-APIs-Calls-1024x575.png)
![Price chart - comparing Moralis, Alchemy, and QuickNode and how much it cost to render a portfolio view of Vitalik's ERC20 tokens](https://moralis.io/wp-content/uploads/2024/02/Blog-Comparing-Web3-APIs-Cost-1024x574.png)
By analyzing the charts above, you’ll discover that constructing a portfolio view of Vitalik’s ERC-20 tokens with Moralis calls for considerably fewer API calls and is extra cost-efficient than using each Alchemy and QuickNode.
With solely 18 calls at a complete value of $0.000882, we had been in a position to fetch the stability, metadata, and value of Vitalik’s ERC-20 tokens. Compared, the identical activity required 4963 calls at a complete value of $0.0049189 with Alchemy. And 4760 calls at a complete value of $0.0163091 with QuickNode.
Right here’s the information damaged down right into a desk:
Why Does Moralis Outperform the Competitors?
All Web3 APIs from Moralis are outcome-oriented and designed to attenuate the variety of calls that you must question blockchain knowledge. We enrich all our API responses with transaction decodings, metadata, tackle labels, market knowledge, and far more from a number of sources.
To exemplify, when utilizing Moralis’ Token API and the token stability endpoint, you get the ERC-20 balances of a pockets – together with metadata and costs for every token – in a single response. This implies you solely should name one endpoint and use one supplier, simplifying your growth endeavors considerably.
![Moralis - the best Web3 API provider in Web3](https://moralis.io/wp-content/uploads/2024/02/Blog-Comparing-Web3-APIs-Moralis-Logo.png)
Compared, when utilizing suppliers like Alchemy and QuickNode, you should first fetch the token balances from the pockets. From there, that you must make particular person calls to question the metadata for every token individually. Furthermore, Alchemy and QuickNode’s API responses don’t embody token costs, that means you should additionally contain a third-party supplier like CoinGecko or CoinMarketCap to get this knowledge.
This is the reason we solely wanted 18 calls to construct a portfolio view of Vitalik’s ERC-20s when working with Moralis. In the meantime, the identical activity demanded 1000’s of calls and a number of suppliers when utilizing Alchemy or QuickNode.
To interrupt this down and make clear it additional, let’s study intimately the endpoints and responses from every supplier we utilized to render the portfolio view of Vitalik’s ERC-20 tokens.
Moralis – Endpoint Overview
With Moralis’ complete APIs, we solely want the Token Steadiness endpoint to fetch the token balances – together with metadata and costs – of any tackle:
GET https://deep-index.moralis.io/api/v2.2/wallets/0xd8da6bf26964af9d7eed9e03e53415d37aa96045/tokens?chain=eth
Right here’s an instance of what the response would appear to be:
{
“cursor”: null,
“web page”: 0,
“page_size”: 100,
“consequence”: [
{
“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”: “517438540”,
“possible_spam”: false,
“verified_contract”: true,
“balance_formatted”: “517.43854”,
“usd_price”: 1.0006571224951815,
“usd_price_24hr_percent_change”: 0.08795941027880547,
“usd_price_24hr_usd_change”: 0.45543496836985303,
“usd_value”: 517.7785605045078,
“native_token”: false,
“portfolio_percentage”: 0
},
//…
]
}
This response is enriched with an abundance of helpful knowledge, together with the image, identify, brand, value, stability, value adjustments over time, and extra of every token. As such, when working with Moralis, you solely want a single endpoint to fetch all of the required knowledge for constructing a full ERC-20 portfolio view!
Alchemy – Endpoints Overview
When utilizing Alchemy, we initially have to name their getTokenBalances() endpoint, which is used to fetch a pockets’s token balances:
alchemy.core.getTokenBalances(“0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045”)
In return, you’ll get a easy response containing an array of token balances, that includes solely the contract tackle and token stability in hexadecimal:
“jsonrpc”: “2.0”,
“id”: 1,
“consequence”: {
“tackle”: “0x95222290dd7278aa3ddd389cc1e1d165cc4bafe5”,
“tokenBalances”: [
{
“contractAddress”: “0x0183736842388dcc6d41674082937684056a3904”,
“tokenBalance”: “0x00000000000000000000000000000000000000001581113dffdc72c05ad16068”
},
//…
]
}
}
What’s extra, aside from offering a fairly restricted response, Alchemy moreover consists of some tokens with a stability equal to zero:
{
“contractAddress”: “0x007f252591528d326b2a73b366e5c6a0aa5128cc”,
“tokenBalance”: “0x0000000000000000000000000000000000000000000000000000000000000000”
}
Together with tokens with a zero stability is sort of pointless, and it additional slows down the time it takes to fetch the entire tokens utilizing Alchemy’s API.
As soon as we’ve got the stability, we now additionally have to name Alchemy’s getTokenMetadata() endpoint individually for every particular person token. This can lead to 1000’s and 1000’s of extra calls. Right here’s an instance of what the endpoint appears like:
const contract = “0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48”;
alchemy.core.getTokenMetadata(contract).then(console.log);
In return, you’ll get a response containing a single token’s decimals, brand, identify, and image:
{
“jsonrpc”: “2.0”,
“id”: 1,
“consequence”: {
“decimals”: 6,
“brand”: “https://static.alchemyapi.io/photographs/belongings/3408.png”,
“identify”: “USDC”,
“image”: “USDC”
}
}
Lastly, that you must leverage a third-party supplier, corresponding to CoinGecko or CoinMarketCap, to get the value of every token. That is one other bothersome step, leading to extra calls and a extra advanced workflow for you and your growth crew!
QuickNode – Endpoints Overview
When utilizing QuickNode, we even have to begin by calling their getWalletTokenBalance endpoint to fetch the ERC-20 token balances of the pockets:
curl https://docs-demo.quiknode.professional/
-X POST
-H “Content material-Sort: software/json”
–data ‘{
“id”:67,
“jsonrpc”:”2.0″,
“technique”:”qn_getWalletTokenBalance”,
“params”: [{
“wallet”: “0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045”
}]
}’
This returns an array of tokens that appears like this:
{
“jsonrpc”: “2.0”,
“id”: 67,
“consequence”: {
“consequence”: [
{
“name”: “Namefi Service Credit”,
“symbol”: “NFSC”,
“decimals”: “18”,
“address”: “0x0000000000c39a0f674c12a5e63eb8031b550b6f”,
“quantityIn”: “100000000000000000000”,
“quantityOut”: “20000000000000000000”,
“totalBalance”: “80000000000000000000”
},
//…
]
}
}
QuickNode’s response accommodates extra data than Alchemy’s, but it surely’s inadequate for constructing a complete portfolio view. As such, we then have to name their getTokenMetadataByContractAddress endpoint for every particular person token to get extra data, which ends up in 1000’s of additional calls:
curl https://docs-demo.quiknode.professional/
-X POST
-H “Content material-Sort: software/json”
–data ‘{
“id”:67,
“jsonrpc”:”2.0″,
“technique”:”qn_getTokenMetadataByContractAddress”,
“params”: [{
“contract”: “0x4d224452801ACEd8B2F0aebE155379bb5D594381”
}]
}’
That is what the response appears like:
{
“jsonrpc”: “2.0”,
“id”: 67,
“consequence”: {
“identify”: “Tether USD”,
“image”: “USDT”,
“contractAddress”: “0xdac17f958d2ee523a2206206994597c13d831ec7”,
“decimals”: “6”,
“genesisBlock”: null,
“genesisTransaction”: null
}
}
What’s extra, you’ll discover that QuickNode’s metadata response doesn’t even embody the token brand. That is one other essential part for constructing an ERC-20 token portfolio view.
Lastly, very similar to when utilizing Alchemy, you additionally have to leverage a third-party supplier like CoinGecko or CoinMarketCap to get token costs when working with QuickNode. As such, that is one other integration that complicates issues for you and your growth crew.
Abstract: Full Comparability – Moralis vs. Alchemy vs. QuickNode
With Moralis’ outcome-oriented and use-case-specific Web3 APIs, we’re in a position to present a considerably extra accessible and easy developer expertise in comparison with Alchemy and QuickNode!
Due to Moralis’ absolutely enriched API responses, you solely want a single endpoint and 18 API calls to get the token balances, metadata, costs, and far more from Vitalik’s pockets. This considerably improves the efficiency and cost-effectiveness of Moralis’ Web3 APIs. You require fewer calls to question the information you want.
![Moralis Logo](https://moralis.io/wp-content/uploads/2024/02/Blog-Comparing-APIs-Moralis-Logo-1024x904.png)
Compared, with Alchemy and QuickNode, the identical activity requires 1000’s of calls and third-party involvement. Suppliers like CoinGecko or CoinMarketCap are vital, turning this straightforward activity right into a bothersome and time-consuming endeavor.
Whereas this comparability makes use of Moralis’ Token API for instance, it’s value noting that every one our APIs, together with the NFT API, Pockets API, and so on., are equally as complete and straightforward to make use of. As such, it doesn’t matter if you happen to’re constructing a portfolio view of ERC-20 tokens, an NFT-based platform, a crypto value tracker, or every other Web3 challenge; Moralis repeatedly outshines the competitors.
So, if you wish to begin constructing Web3 initiatives sooner and extra effectively, ensure to enroll with Moralis!
[ad_2]
Source link