How to get the top ERC20 tokens by market cap
Prerequisites​
Before getting started, make sure you have the following ready:
- Node v.14+ or Python
- NPM/Yarn or Pip
Step 1: Setup Moralis​
First register your Moralis account and get your Moralis API Key.
Once you have your Moralis API Key, install the Moralis SDK in your project.
- npm
- yarn
- pnpm
- pip
npm install moralis @moralisweb3/common-evm-utils
yarn add moralis @moralisweb3/common-evm-utils
pnpm add moralis @moralisweb3/common-evm-utils
pip install moralis
Step 2: Get The Top ERC20 Tokens By Market Cap​
In order to get the top ERC20 tokens by market cap, Moralis provides you with a getTopERC20TokensByMarketCap endpoint to do so. To use the API, you can copy the following code:
- index.js (JavaScript)
- index.ts (TypeScript)
- index.py (Python)
const Moralis = require("moralis").default;
const { EvmChain } = require("@moralisweb3/common-evm-utils");
const runApp = async () => {
await Moralis.start({
apiKey: "YOUR_API_KEY",
// ...and any other configuration
});
const response =
await Moralis.EvmApi.marketData.getTopERC20TokensByMarketCap();
console.log(response.raw);
};
runApp();
import Moralis from "moralis";
import { EvmChain } from "@moralisweb3/common-evm-utils";
const runApp = async () => {
await Moralis.start({
apiKey: "YOUR_API_KEY",
// ...and any other configuration
});
const response =
await Moralis.EvmApi.marketData.getTopERC20TokensByMarketCap();
console.log(response.raw);
};
runApp();
from moralis import evm_api
import json
api_key = "YOUR_API_KEY"
result = evm_api.market_data.get_top_erc20_tokens_by_market_cap(
api_key=api_key,
)
print(result)
Step 3: Run the script​
To run the script, enter the following command:
- Shell (JavaScript)
- Shell (TypeScript)
- Shell (Python)
node index.js
ts-node index.ts
python index.py
In your terminal, you should see the following JSON response:
[
{
"rank": 1,
"token_name": "Wrapped Ether",
"token_symbol": "WETH",
"token_logo": "https://cdn.moralis.io/eth/0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2.png",
"token_decimals": "18",
"contract_address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"price_usd": "1803.89",
"price_24h_percent_change": "1.43",
"price_7d_percent_change": "0.01",
"market_cap_usd": "214188093967"
},
{
"rank": 2,
"token_name": "Tether USD",
"token_symbol": "USDT",
"token_logo": "https://cdn.moralis.io/eth/0xdac17f958d2ee523a2206206994597c13d831ec7.png",
"token_decimals": "6",
"contract_address": "0xdac17f958d2ee523a2206206994597c13d831ec7",
"price_usd": "1",
"price_24h_percent_change": "0",
"price_7d_percent_change": "0.01",
"market_cap_usd": "83063097247"
},
{
"rank": 3,
"token_name": "BNB",
"token_symbol": "BNB",
"token_logo": "https://market-data-images.s3.us-east-1.amazonaws.com/tokenImages/0xe9950d9ad217dbd35c1f5790eb0d21bd461729c754928e550c1f497c3182bc75.png",
"token_decimals": "18",
"contract_address": "0xb8c77482e45f1f44de1745f52c74426c631bdd52",
"price_usd": "302.06",
"price_24h_percent_change": "-0.73",
"price_7d_percent_change": "-2.35",
"market_cap_usd": "48009547905"
},
{
"rank": 4,
"token_name": "USD Coin",
"token_symbol": "USDC",
"token_logo": "https://cdn.moralis.io/eth/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48.png",
"token_decimals": "6",
"contract_address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"price_usd": "1",
"price_24h_percent_change": "0.02",
"price_7d_percent_change": "-0.1",
"market_cap_usd": "29140112792"
},
{
"rank": 5,
"token_name": "iearn USDC v2",
"token_symbol": "yUSDCv2",
"token_logo": "https://cdn.moralis.io/eth/0xd6ad7a6750a7593e092a9b218d66c0a814a3436e.png",
"token_decimals": "6",
"contract_address": "0xd6ad7a6750a7593e092a9b218d66c0a814a3436e",
"price_usd": "0.999891",
"price_24h_percent_change": "0.01",
"price_7d_percent_change": "-0.11",
"market_cap_usd": "29140112792"
}
]
Congratulations 🥳 you just got the top ERC20 tokens by market cap using Market Data API!
API Reference​
If you want to know more details on the endpoint and optional parameters, check out:
Support​
If you face any trouble following the tutorial, feel free to reach out to our community engineers in our Discord or Forum to get 24/7 developer support.