Do you need an easy way to identify blockchain address owners? If so, you’ll want to check out Moralis’ Blockchain Address Labeling API. This API enriches all our transaction and transfer endpoints with address and entity labels, giving you fully decoded data straight out of the box. Eager to learn how it works? Check out the entity-enriched sample response below:
{
“hash”: “0x70c30285a9a4cc1c147cc94e5d0cefebe693fffd5fd5cbf727e2f86b6829d71b”,
“nonce”: “6810858”,
“transaction_index”: “72”,
“from_address”: “Oxa9d1e08c7793af67e9d92fe308d5697fb81d3e43”,
“from_address_label”: “Coinbase: Hot Wallet”,
“from_address_entity”: “Coinbase”,
“from_address_entity_logo”: “https://entities-logos.s3.us-east-1.amazonaws.com/coinbase.png”,
“to_address”: “Oxa9d1e08c7793af67e9d92fe308d5697fb81d3e43”,
“to_address_label”: “Blackrock Wallet”,
“to_address_entity”: “Blackrock, Inc”,
“to_address_entity_logo”: “https://entities-logos.s3.us-east-1.amazonaws.com/blackrock.png”,
“value”: “0”,
“gas”: “207128”,
“gas_price”: “32393720336”,
“input”: “0xa9059cbb000000000000000000000000c476723407b737c173bdfd87c7abc80f6856e6320000000000000000000000000000000000000000000000008533e3870aec3000”,
“receipt_cumulative_gas_used”: “8535588”,
“receipt_gas_used”: “52089”,
“receipt_contract_address”: null,
“receipt_root”: null,
“receipt_status”: “1”,
“block_timestamp”: “2023-06-26T16:48:23.000Z”,
“block_number”: “17564884”,
“block_hash”: “0x4e61fbb792a84c419a22ffcc590cbcb2f5a1b88d8e864d608e3544a3594c0e69”,
“transfer_index”: [17564884, 72]
}
As you can see, our API responses feature address and entity labels, logos, and much more, allowing you to automatically identify blockchain address owners when querying transaction data. To learn more about how this works, join us in this guide as we lay it all out.
Want to start using our powerful APIs yourself? Sign up for a free Moralis account immediately and start leveraging the industry’s leading development tools today!
Overview
Blockchain addresses aren’t inherently user-friendly, consisting of long, complex alphanumeric strings. Without proper labeling, users risk sending assets to incorrect addresses, struggle to identify address owners, and face increased chances of human error during blockchain interactions. Therefore, labels are crucial for the overall user experience in Web3. However, we understand the challenges of identifying blockchain address owners, which is why we introduced Moralis’ Blockchain Address Labeling API.
Our API enriches all transaction and transfer endpoints with labels for known addresses and entities, making it easier for developers and users to fully understand on-chain activity. But how does this work? And how can you leverage Moralis to identify blockchain address owners? If you’re looking for answers to these questions, join us in this tutorial. Let’s dive in!
Introducing Moralis’ Blockchain Address Labeling API – The Easiest Way to Identify Blockchain Address Owners
The Moralis Blockchain Address Labeling API automatically turns raw transaction input into decoded, human-readable data by enriching on-chain events with comprehensive address and entity labels representing companies, organizations, and known individuals. Some prominent examples include OpenSea, Uniswap, BlackRock, and Elon Musk. This makes it easier than ever before to identify blockchain address owners when querying transaction data.
Here’s an example of an entity-enriched response, highlighting the benefits of this feature:
{
“hash”: “0x70c30285a9a4cc1c147cc94e5d0cefebe693fffd5fd5cbf727e2f86b6829d71b”,
“nonce”: “6810858”,
“transaction_index”: “72”,
“from_address”: “Oxa9d1e08c7793af67e9d92fe308d5697fb81d3e43”,
“from_address_label”: “Coinbase: Hot Wallet”,
“from_address_entity”: “Coinbase”,
“from_address_entity_logo”: “https://entities-logos.s3.us-east-1.amazonaws.com/coinbase.png”,
“to_address”: “Oxa9d1e08c7793af67e9d92fe308d5697fb81d3e43”,
“to_address_label”: “Blackrock Wallet”,
“to_address_entity”: “Blackrock, Inc”,
“to_address_entity_logo”: “https://entities-logos.s3.us-east-1.amazonaws.com/blackrock.png”,
“value”: “0”,
“gas”: “207128”,
“gas_price”: “32393720336”,
“input”: “0xa9059cbb000000000000000000000000c476723407b737c173bdfd87c7abc80f6856e6320000000000000000000000000000000000000000000000008533e3870aec3000”,
“receipt_cumulative_gas_used”: “8535588”,
“receipt_gas_used”: “52089”,
“receipt_contract_address”: null,
“receipt_root”: null,
“receipt_status”: “1”,
“block_timestamp”: “2023-06-26T16:48:23.000Z”,
“block_number”: “17564884”,
“block_hash”: “0x4e61fbb792a84c419a22ffcc590cbcb2f5a1b88d8e864d608e3544a3594c0e69”,
“transfer_index”: [17564884, 72]
}
As shown, the output includes address labels, entity names, and logos for both the to_address and from_address, simplifying the process of decoding and understanding each transaction.
All in all, when querying transaction data using Moralis’ APIs, you’ll autonomously get address and entity labels, making it easy to identify blockchain address owners and understand exactly what’s happening on-chain!
How Many Entities Does the Blockchain Address Labeling API Support?
Our Blockchain Address Labeling API currently supports over 500 entities and about 6,000 address labels, with the highest coverage across chains such as Ethereum, BNB Smart Chain (BSC), Polygon, Base, Optimism, and Arbitrum. Here are some of the supported categories:
NFT Marketplaces
Influencers
DEXs
CEXs
Gaming
Meme
DeFi
Lending
L2s
DAOs
…and many more!
What Endpoints Are Covered?
All of our transfer and transaction endpoints feature address and entity labels. Here are five key examples:
getWalletHistory()
getWalletTransactions()
getTransactions()
getWalletNFTTransfers()
…and many more!
When calling any of these Moralis endpoints, you’ll be able to identify blockchain address owners without breaking a sweat!
Why Do You Need Address & Entity Labels?
Without address labels, it’s challenging to fully understand on-chain transactions and transfers. While you might be aware of what’s being traded, you can’t easily tell who is interacting with whom. Fortunately, labels for known addresses partly solve this problem, giving you decoded data out of the box.
However, while address labels are a good start, this approach lacks depth, as users can’t access detailed information about the entities behind the addresses. This is why we also introduced entity labels to give developers and users a broader perspective, helping them identify blockchain address owners more seamlessly.
Blockchain Address Labeling API Benefits
Moralis’ Blockchain Address Labeling API offers many benefits. Below are three prominent examples:
In-depth Insight: Each entity is enriched with metadata, including logos, names, and more, providing a deeper understanding of blockchain transactions.
Advanced Querying: Seamlessly discover and search for entities and their associated addresses, unlocking innovative ways to analyze and interact with crypto data.
Contextualized Data: By linking multiple addresses to an entity, our API provides a complete overview of how entities operate across various blockchain networks.
Now that we’ve given you an overview of our Blockchain Address Labeling API, let’s show you how it works in practice!
Full Tutorial: How to Identify Blockchain Address Owners in 3 Steps
To demonstrate how to identify blockchain address owners, we’ll now show you our address and entity labels in action. To do so, we’ll walk you through a tutorial on how to get the native transactions of a wallet in three straightforward steps:
Get a Moralis API Key
Write a Script
Run the Code
But before we can begin, you need to take care of a few prerequisites.
Prerequisites
Before you proceed to the first step, make sure you have the following ready:
Step 1: Get a Moralis API Key
Sign up for an account with Moralis by clicking the ”Start for Free” button at the top right:
Once you log in, you’ll find your API key under the ”Home” tab:
Copy and keep it for now, as you’ll need it in the next step.
Step 2: Write a Script
Set up a new folder in your preferred IDE and initialize a project with this terminal command:
npm init
Install the required dependencies using the terminal command below:
npm install node-fetch –save
npm install moralis @moralisweb3/common-evm-utils
Add “type”: “module” to your ”package.json” file: