Are you searching for a straightforward technique to get pockets transactions utilizing RPC nodes? If that’s the case, you’re in the best place. In at the moment’s tutorial, we’ll discover Moralis’ Prolonged RPC Strategies and our eth_getTransactions endpoint, which lets you fetch any pockets’s native transaction historical past with only one name. Wanting to be taught the way it works? Take a look at the tactic in motion right here:
import fetch from ‘node-fetch’;
const choices = {
technique: ‘POST’,
headers: {
settle for: ‘software/json’,
‘content-type’: ‘software/json’
},
physique: JSON.stringify({
“jsonrpc”: “2.0”,
“id”: 1,
“technique”: “eth_getTransactions”,
“params”: [
{
“address”: “0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045”,
“limit”: 100,
}
]
})
};
fetch(‘YOUR_NODE_URL’, choices)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
By operating the script above, you’ll obtain the native transaction historical past of the desired pockets, enriched with timestamps, gasoline costs, deal with labels, and extra. Right here’s a pattern response:
{
//…
outcome: [
{
hash: ‘0xd89b02f289a08ae7b2feead06031fec20777bad8b73fc8d853f9040bc423a6c7’,
nonce: ‘0’,
transaction_index: ‘142’,
from_address: ‘0xda74ac6b69ff4f1b6796cddf61fbdd4a5f68525f’,
from_address_label: ”,
to_address: ‘0xdac17f958d2ee523a2206206994597c13d831ec7’,
to_address_label: ‘Tether USD (USDT)’,
value: ‘0’,
gas: ‘207128’,
gas_price: ‘17020913648’,
input: ‘0xa9059cbb00000000000000000000000028c6c06298d514db089934071355e5743bf21d6000000000000000000000000000000000000000000000000000000017a1df1700’,
receipt_cumulative_gas_used: ‘8270587’,
receipt_gas_used: ‘41309’,
receipt_contract_address: null,
receipt_root: null,
receipt_status: ‘1’,
block_timestamp: ‘2023-01-22T15:00:11.000Z’,
block_number: ‘16463098’,
block_hash: ‘0x2439330d0a282f9a6464b0aceb9f766ac4d7b050c048b4a1322b48544c61e01d’,
transaction_fee: ‘0.000703116921885232’
},
//…
]
}
}
That’s it! It’s simple to retrieve pockets transactions utilizing RPC nodes when working with Moralis. Nonetheless, for a extra detailed tutorial, be a part of us on this article or take a look at the Moralis YouTube video under:
Wish to get pockets transactions utilizing RPC nodes your self? Join free with Moralis to right away entry all our Prolonged RPC Strategies!
Overview
For those who’re seeking to construct decentralized purposes (dapps), whether or not it’s a cryptocurrency pockets, portfolio tracker, tax platform, or comparable initiatives, you’ll doubtless want entry to your customers’ native transaction historical past. Nonetheless, if you happen to’re planning on getting this data utilizing RPC nodes, it’s simpler mentioned than finished, because it requires a number of requests and in depth guide knowledge aggregation. Happily, there’s now a greater method: Moralis’ Prolonged RPC Strategies.
With our Prolonged RPC Strategies, you possibly can question the identical decoded knowledge that our APIs present, however by way of RPC-style requests. A single name lets you retrieve a pockets’s native transaction historical past, token costs, token balances, and far more.
However how does this work? For those who’d wish to be taught extra about our Prolonged RPC Strategies, be a part of us on this tutorial. Let’s dive straight in!
Introducing Moralis’ Subsequent-Technology RPC Nodes – The Best Method to Get Pockets Transactions
Moralis is the business’s main supplier of next-generation RPC nodes. With our intuitive consumer interface, you possibly can entry nodes for all main chains with only a click on. As such, it doesn’t matter what community you’re constructing on, we’ve bought you lined.
However what makes our nodes distinctive?
Velocity: Our RPC nodes set the benchmark for velocity, with response instances as little as 70 ms.
Reliability: With 99.9% uptime, you possibly can belief our node infrastructure.
Prolonged RPC Strategies: Moralis’ Prolonged RPC Strategies improve our node providing, permitting you to question decoded, human-readable knowledge by way of RPC-style requests.
Now, let’s dive a bit deeper into our Prolonged RPC Strategies, which allow you to seamlessly get pockets transactions utilizing RPC nodes!
Prolonged RPC Strategies
Moralis’ Prolonged RPC Strategies make fetching decoded, human-readable knowledge with RPC nodes a breeze. With only one name, you possibly can effortlessly get pockets transactions, NFTs, token costs, metadata, and far more. As such, when utilizing Moralis and our Prolonged RPC Strategies, you possibly can considerably streamline your developer expertise.
What knowledge are you able to fetch with our Prolonged RPC Strategies?
eth_getTransactions: Get the native transactions of a pockets.
eth_getDecodedTransactions: Question the total transaction historical past of a pockets.
eth_getTokenBalances: Retrieve the ERC-20 balances of a pockets.
eth_getTokenMetadata: Get the metadata of any ERC-20 token.
eth_getTokenPrice: Entry the worth of any ERC-20 token.
eth_getNFTBalances: Get the NFT balances of any pockets.
eth_getNFTCollections: Fetch the NFT collections held by a pockets.
In abstract, with our Prolonged RPC Strategies, you possibly can seamlessly fetch the identical decoded, human-readable knowledge our APIs present, however by way of RPC-style requests.
eth_getTransactions – Get Pockets Transactions Utilizing RPC Nodes with One Request
With the eth_getTransactions technique, now you can seamlessly get any pockets’s native transaction historical past with only one single RPC request. Every transaction can be totally enriched with extra knowledge, together with time stamps, gasoline costs, deal with labels, and far more. As such, when utilizing the eth_getTransactions endpoint, you get decoded knowledge out of the field with only one name.
However how does this work? And what does an precise response appear to be? For those who’re searching for the solutions to those questions, be a part of us within the subsequent part, the place we present you precisely how one can get pockets transactions utilizing RPC nodes in three easy steps.
Tutorial: Tips on how to Get Pockets Transactions Utilizing RPC Nodes
With our Prolonged RPC Strategies and the eth_getTransactions endpoint, you may get pockets transactions utilizing RPC nodes in three easy steps:
Join with Moralis & get a node URL.
Write a script calling eth_getTransactions.
Run the code.
However earlier than we will dive into the tutorial, that you must take care of just a few stipulations.
Conditions
Be sure to have the next prepared earlier than persevering with:
Step 1: Signal Up with Moralis & Get a Node URL
Click on the ”Begin for Free” button on the prime proper and enroll with Moralis:
Log in, navigate to the ”Nodes” tab, and click on ”+ Create Node”:
Select ”Ethereum,” then ”Mainnet,” and click on ”Create Node”:
Copy and save one in every of your node URLs, as you’ll want it within the subsequent step:
Step 2: Write a Script Calling eth_getTransactions
Launch your IDE, arrange a folder, open a brand new terminal, and initialize a mission with this command:
npm init
Set up the required dependencies with the next command:
npm set up node-fetch –save
npm set up moralis @moralisweb3/common-evm-utils
Open your ”bundle.json” file and add ”kind”: ”module” to the listing:
Create an ”index.js” file and add the code under:
import fetch from ‘node-fetch’;
const choices = {
technique: ‘POST’,
headers: {
settle for: ‘software/json’,
‘content-type’: ‘software/json’
},
physique: JSON.stringify({
“jsonrpc”: “2.0”,
“id”: 1,
“technique”: “eth_getTransactions”,
“params”: [
{
“address”: “0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045”,
“limit”: 100,
}
]
})
};
fetch(‘YOUR_NODE_URL’, choices)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
Subsequent, that you must alter the code barely. Exchange YOUR_NODE_URL with the node URL you copied throughout step one. Additionally, configure the deal with parameter in order that it matches your request:
Step 3: Run the Code
Open a brand new terminal and run this command in your mission’s root folder:
node index.js
In return, you’ll get a listing of the pockets’s previous native transactions, enriched with timestamps, gasoline costs, deal with labels, and far more knowledge for every occasion. Right here’s a pattern response:
{
//…
outcome: [
{
hash: ‘0xd89b02f289a08ae7b2feead06031fec20777bad8b73fc8d853f9040bc423a6c7’,
nonce: ‘0’,
transaction_index: ‘142’,
from_address: ‘0xda74ac6b69ff4f1b6796cddf61fbdd4a5f68525f’,
from_address_label: ”,
to_address: ‘0xdac17f958d2ee523a2206206994597c13d831ec7’,
to_address_label: ‘Tether USD (USDT)’,
value: ‘0’,
gas: ‘207128’,
gas_price: ‘17020913648’,
input: ‘0xa9059cbb00000000000000000000000028c6c06298d514db089934071355e5743bf21d6000000000000000000000000000000000000000000000000000000017a1df1700’,
receipt_cumulative_gas_used: ‘8270587’,
receipt_gas_used: ‘41309’,
receipt_contract_address: null,
receipt_root: null,
receipt_status: ‘1’,
block_timestamp: ‘2023-01-22T15:00:11.000Z’,
block_number: ‘16463098’,
block_hash: ‘0x2439330d0a282f9a6464b0aceb9f766ac4d7b050c048b4a1322b48544c61e01d’,
transaction_fee: ‘0.000703116921885232’
},
//…
]
}
}
That’s it; it’s simple to get pockets transactions utilizing RPC nodes when working with Moralis!
To be taught extra about this, take a look at the official eth_getTransactions documentation web page.
Use Circumstances for Pockets Transaction Information
Now that you know the way to seamlessly get pockets transactions utilizing RPC nodes, let’s discover some outstanding use instances for this knowledge. Listed below are three key examples:
Cryptocurrency Wallets: Wallets require entry to transactions to show previous transfers, offering customers with a transparent overview of their historic exercise.
Portfolio Trackers: Portfolio trackers should entry previous transfers to precisely monitor the efficiency of customers’ property.
Tax Platforms: Tax platforms want a complete overview of customers’ previous buying and selling actions to generate correct tax stories.
Be aware that these are just some examples – pockets transaction knowledge is essential for many dapps!
Past Tips on how to Get Pockets Transactions Utilizing RPC Nodes – Diving Deeper Into Moralis’ Prolonged RPC Strategies
Now that you know the way to get pockets transactions utilizing RPC nodes, we’ll dive a bit deeper into our different Prolonged RPC Strategies. Extra particularly, we’ll discover the next three:
eth_getTokenBalances
eth_getDecodedTransactions
eth_getTokenPrice
So, let’s kick issues off with eth_getTokenBalances!
eth_getTokenBalances
With our eth_getTokenBalances technique, you possibly can seamlessly get ERC-20 token balances utilizing RPC nodes. As an alternative of getting to make a number of RPC requests and stitching collectively knowledge by yourself, you solely want a single name. Right here’s the tactic in motion:
import fetch from ‘node-fetch’;
const choices = {
technique: ‘POST’,
headers: {
settle for: ‘software/json’,
‘content-type’: ‘software/json’
},
physique: JSON.stringify({
“jsonrpc”: “2.0”,
“id”: 1,
“technique”: “eth_getTokenBalances”,
“params”: [
{
“address”: “0xcB1C1FdE09f811B294172696404e88E658659905”,
}
]
})
};
fetch(‘YOUR_NODE_URL’, choices)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
In response to calling the eth_getTokenBalances technique, you’ll obtain the ERC-20 token balances of the desired pockets. What’s extra, all tokens are enriched with logos, decimals, thumbnails, spam indicators, and far more. Right here’s a pattern response:
{
//…
outcome: [
{
token_address: ‘0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2’,
name: ‘Wrapped Ether’,
symbol: ‘WETH’,
decimals: 18,
logo: ‘https://logo.developers.moralis.com/0x1_0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2_a578c5277503e547a072ae32517254ca’,
thumbnail: ‘https://logo.developers.moralis.com/0x1_0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2_a578c5277503e547a072ae32517254ca’,
balance: ‘10000000000000000’,
possible_spam: false,
verified_contract: true,
total_supply: ‘2746607222348759943423350’,
total_supply_formatted: ‘2746607.22234875994342335’,
percentage_relative_to_total_supply: 3.64085549569e-7
},
//…
]
}
eth_getDecodedTransactions
With the eth_getDecodedTransactions technique, you possibly can effortlessly get decoded pockets historical past utilizing an RPC node. No must make a number of requests, mixture knowledge your self, or decode data. When utilizing Moralis, you get all the info you want with only one name. Right here’s an instance of how one can name the eth_getDecodedTransactions endpoint:
import fetch from ‘node-fetch’;
const choices = {
technique: ‘POST’,
headers: {
settle for: ‘software/json’,
‘content-type’: ‘software/json’
},
physique: JSON.stringify({
“jsonrpc”: “2.0”,
“id”: 1,
“technique”: “eth_getDecodedTransactions”,
“params”: [
{
“address”: “0xda74Ac6b69Ff4f1B6796cdDf61fBDd4A5f68525f”,
}
]
})
};
fetch(‘YOUR_NODE_URL’, choices)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
In response to calling eth_getDecodedTransactions, you’ll obtain the desired pockets’s full historical past, enriched with computerized class tags, occasion summaries, deal with labels, and extra. Right here’s an instance of what the response may appear to be:
{
//…
“outcome”: [
{
“block_hash”: “0x660274d577cd20b0b82c1bff5f3c5641ba6027544e005f9256d5add9c7447920”,
“block_number”: “19868695”,
“block_timestamp”: “2024-05-14T14:00:23.000Z”,
“from_address”: “0xda74ac6b69ff4f1b6796cddf61fbdd4a5f68525f”,
“from_address_label”: null,
“from_address_entity”: null,
“from_address_entity_logo”: null,
“to_address”: “0xdac17f958d2ee523a2206206994597c13d831ec7”,
“to_address_label”: “Tether USD (USDT)”,
“to_address_entity”: null,
“to_address_entity_logo”: null,
“gas”: “55331”,
“gas_price”: “13623172301”,
“hash”: “0xc565260238f59fc3f35b74f3011375c7d637db9b075f77d342c30d19f946272e”,
“nonce”: “14”,
“receipt_cumulative_gas_used”: “13917979”,
“receipt_gas_used”: “41309”,
“receipt_status”: “1”,
“transaction_fee”: “0.000562759624582009”,
“transaction_index”: “75”,
“value”: “0”,
“receipt_contract_address”: null,
“nft_transfers”: [],
“erc20_transfers”: [
{
“token_name”: “Tether USD”,
“token_symbol”: “USDT”,
“token_logo”: “https://logo.developers.moralis.com/0x1_0xdac17f958d2ee523a2206206994597c13d831ec7_3282f332c2ac2948929f01fe7d921c51”,
“token_decimals”: “6”,
“from_address”: “0xda74ac6b69ff4f1b6796cddf61fbdd4a5f68525f”,
“from_address_entity”: null,
“from_address_entity_logo”: null,
“from_address_label”: null,
“to_address”: “0x28c6c06298d514db089934071355e5743bf21d60”,
“to_address_label”: “Binance 14”,
“to_address_entity”: “Binance”,
“to_address_entity_logo”: “https://entities-logos.s3.us-east-1.amazonaws.com/binance.png”,
“address”: “0xdac17f958d2ee523a2206206994597c13d831ec7”,
“log_index”: 338,
“value”: “50000000000”,
“possible_spam”: false,
“verified_contract”: true,
“direction”: “send”,
“value_formatted”: “50000”
}
],
“method_label”: “switch”,
“native_transfers”: [],
“abstract”: “Despatched 50,000 USDT to Binance 14”,
“possible_spam”: false,
“class”: “token ship”
},
//…
}
]
}
eth_getTokenPrice
The eth_getTokenPrice technique lets you seamlessly retrieve the worth of any token utilizing RPC-style requests. This eliminates the necessity to contain third-party API suppliers when integrating worth knowledge into your dapps. Right here’s the eth_getTokenPrice technique in motion:
import fetch from ‘node-fetch’;
const choices = {
technique: ‘POST’,
headers: {
settle for: ‘software/json’,
‘content-type’: ‘software/json’
},
physique: JSON.stringify({
“jsonrpc”: “2.0”,
“id”: 1,
“technique”: “eth_getTokenPrice”,
“params”: [
{
“address”: “0xdAC17F958D2ee523a2206206994597C13D831ec7”,
“include”: “percent_change”
}
]
})
};
fetch(‘YOUR_NODE_URL’, choices)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
In response to operating the script above, you’ll obtain the USD and native worth of the desired token. Moreover, the response is enriched with token logos, worth adjustments over time, spam indicators, and extra. Right here’s what it’d appear to be:
{
//…
outcome: {
tokenName: ‘Tether USD’,
tokenSymbol: ‘USDT’,
tokenLogo: ‘https://emblem.builders.moralis.com/0x1_0xdac17f958d2ee523a2206206994597c13d831ec7_3282f332c2ac2948929f01fe7d921c51’,
tokenDecimals: ‘6’,
nativePrice: {
worth: ‘375760131462618’,
decimals: 18,
identify: ‘Ether’,
image: ‘ETH’,
deal with: ‘0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2’
},
usdPrice: 1.0000402502911871,
usdPriceFormatted: ‘1.000040250291187229’,
’24hrPercentChange’: ‘-0.04543241491797881’,
exchangeName: ‘Uniswap v3’,
exchangeAddress: ‘0x1F98431c8aD98523631AE4a59f267346ea31F984’,
tokenAddress: ‘0xdac17f958d2ee523a2206206994597c13d831ec7’,
priceLastChangedAtBlock: ‘20534105’,
possibleSpam: false,
verifiedContract: true,
pairAddress: ‘0xc7bbec68d12a0d1830360f8ec58fa599ba1b0e9b’,
pairTotalLiquidityUsd: ‘7148031.13’
}
}
For those who’d wish to be taught extra about our different strategies, please take a look at the official Prolonged RPC Strategies documentation web page.
Exploring Moralis’ Web3 APIs
Moralis is Web3’s main knowledge supplier, and along with next-generation RPC nodes, we additionally supply a complete suite of Web3 APIs. Some outstanding examples right here included the Pockets API, Token API, Streams API, and plenty of extra. As such, when leveraging Moralis, you get all crypto knowledge in a single place.
What makes our APIs particular?
Complete: Our APIs present the business’s most complete responses, supplying you with extra knowledge with fewer calls. Get token balances, any pockets’s transaction historical past, NFT costs, and far more with single requests.
Cross-Chain: Moralis’ Web3 APIs are cross-chain appropriate, offering full function parity throughout all main chains, together with Ethereum, BSC, Optimism, Base, and plenty of extra.
Safe: Moralis holds a SOC 2 Kind 2 certification, demonstrating our dedication to safety and reliability.
Now, let’s dive a bit deeper into our Web3 API suite by exploring a few of our outstanding interfaces!
Moralis’ Web3 API Suite
In our suite of Web3 APIs, you’ll discover a number of interfaces tailor-made for varied use instances. Listed below are 5 outstanding examples:
Pockets API: Get any pockets’s full historical past, token balances with costs, internet value, profitability, and far more with single requests. That is the right instrument for anybody seeking to construct Web3 wallets or combine pockets performance into dapps.
Token API: Fetch token balances with costs, metadata, transactions, and far more with ease. That is your go-to answer for ERC-20 knowledge, serving to you construct every little thing from portfolio trackers to DEXs.
NFT API: Question NFT balances, costs, up-to-date metadata, transactions, and far more utilizing single strains of code. This instrument is great for anybody seeking to construct NFT marketplaces, Web3 video games, or different comparable platforms.
Value API: Get real-time and historic costs for each NFTs and ERC-20 tokens. The Value API is the last word instrument if you happen to’re seeking to combine worth knowledge into your dapps.
Streams API: The Streams API is Moralis’ real-time knowledge answer, permitting you to arrange Web3 knowledge pipelines on the click on of a button. That is the most effective API for organising real-time alerts, populating databases with latest on-chain occasions, or just integrating present knowledge into dapps.
Please take a look at the official Web3 API web page to be taught extra about our interfaces!
Abstract: Tips on how to Get Pockets Transactions Utilizing RPC Nodes
Suppose you need to construct Web3 initiatives like portfolio trackers, tax platforms, wallets, or different comparable dapps. In that case, chances are high that you just’ll want entry to your customers’ native transaction historical past. Nonetheless, fetching this knowledge utilizing RPC nodes and standard strategies like eth_getTransactionByHash is sort of difficult, because it requires a number of requests and a whole lot of guide knowledge aggregation. Happily, now you can get this knowledge with only one name when utilizing Moralis’ Prolonged RPC Strategies.
With our Prolonged RPC Strategies, you may get decoded, human-readable knowledge by way of RPC-style requests. Get pockets transactions, decoded pockets historical past, token balances, costs, and far more with single calls.
As an illustration, that is how simple it’s to get pockets transactions utilizing RPC nodes when constructing with Moralis:
import fetch from ‘node-fetch’;
const choices = {
technique: ‘POST’,
headers: {
settle for: ‘software/json’,
‘content-type’: ‘software/json’
},
physique: JSON.stringify({
“jsonrpc”: “2.0”,
“id”: 1,
“technique”: “eth_getTransactions”,
“params”: [
{
“address”: “0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045”,
“limit”: 100,
}
]
})
};
fetch(‘YOUR_NODE_URL’, choices)
.then(response => response.json())
.then(response => console.log(response))
.catch(err => console.error(err));
In return for calling the script above, you get the native transaction historical past of the desired pockets, enriched with timestamps, gasoline costs, deal with labels, and extra. Right here’s a pattern response:
{
//…
outcome: [
{
hash: ‘0xd89b02f289a08ae7b2feead06031fec20777bad8b73fc8d853f9040bc423a6c7’,
nonce: ‘0’,
transaction_index: ‘142’,
from_address: ‘0xda74ac6b69ff4f1b6796cddf61fbdd4a5f68525f’,
from_address_label: ”,
to_address: ‘0xdac17f958d2ee523a2206206994597c13d831ec7’,
to_address_label: ‘Tether USD (USDT)’,
value: ‘0’,
gas: ‘207128’,
gas_price: ‘17020913648’,
input: ‘0xa9059cbb00000000000000000000000028c6c06298d514db089934071355e5743bf21d6000000000000000000000000000000000000000000000000000000017a1df1700’,
receipt_cumulative_gas_used: ‘8270587’,
receipt_gas_used: ‘41309’,
receipt_contract_address: null,
receipt_root: null,
receipt_status: ‘1’,
block_timestamp: ‘2023-01-22T15:00:11.000Z’,
block_number: ‘16463098’,
block_hash: ‘0x2439330d0a282f9a6464b0aceb9f766ac4d7b050c048b4a1322b48544c61e01d’,
transaction_fee: ‘0.000703116921885232’
},
//…
]
}
}
That’s it! You now know how one can get pockets transactions utilizing RPC nodes!
For those who discovered this tutorial attention-grabbing, take into account trying out extra content material on the weblog. As an illustration, you possibly can learn to get DeFi protocol knowledge or discover the ins and outs of QuickNode Streams.
Moreover, if you wish to use the Prolonged RPC Strategies your self, don’t neglect to join an account with Moralis. You’ll be able to create your account free of charge, and also you’ll get instantaneous entry to all our premier improvement instruments!