Migrating Fungible Token Data from SimpleHash to Alchemy
SimpleHash is sunsetting its services on March 27, 2025, and this guide provides a straightforward path for you to migrate Fungible Token Data from SimpleHash to Alchemy.
Please reach out to [email protected] with any questions!
Use Case 1: Token Balances & Metadata
Our token APIs are a perfect replacement for SimpleHash’s fungible token endpoints.
Our fungible token APIs provide:
✅ Real-time balances for ERC-20 and other tokens
✅ Token metadata (name, symbol, decimals, contract address)
✅ Multi-chain support for all major blockchains
Docs: https://docs.alchemy.com/reference/alchemy-gettokenbalances
📌 Example Wallet: 0x89205A3A3b2A69De6Dbf7f01ED13B2108B2c43e7
Fetching Token Balances
SimpleHash Request (Old)
curl -X GET "<https://api.simplehash.com/api/v0/fungibles/balances?wallet_address=0x...&chain=ethereum>" \\
-H "Authorization: Bearer YOUR_SIMPLEHASH_KEY"
Alchemy Request (New)
Try it out here!
curl --request POST \\
--url <https://eth-mainnet.g.alchemy.com/v2/{apiKey}> \\
--header 'accept: application/json' \\
--header 'content-type: application/json' \\
--data '
{
"id": 1,
"jsonrpc": "2.0",
"method": "alchemy_getTokenBalances",
"params": [
"0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"
]
}
'
Example Response:
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"address": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
"tokenBalances": [
{
"contractAddress": "0x000000000000e63d2c9c29d3edf6efb99071f92c",
"tokenBalance": "0x00000000000000000000000000000000000000000000001b1ae4d6e2ef500000"
},
{
"contractAddress": "0x00000000002514bf58ae82408e1e217f16a1dfa0",
"tokenBalance": "0x000000000000000000000000000000000000000000002a5a058fc295ed000000"
},
...
]
}
}
Fetching Token Metadata
Docs: https://docs.alchemy.com/reference/alchemy-gettokenmetadata
SimpleHash Request (Old)
curl -X GET "<https://api.simplehash.com/api/v0/token/metadata?contract_address=0x...&chain=ethereum>" \\
-H "Authorization: Bearer YOUR_SIMPLEHASH_KEY"
Alchemy Request (New - JSON-RPC)
Try it out here!
curl --request POST \\
--url <https://eth-mainnet.g.alchemy.com/v2/docs-demo> \\
--header 'accept: application/json' \\
--header 'content-type: application/json' \\
--data '
{
"id": 1,
"jsonrpc": "2.0",
"method": "alchemy_getTokenMetadata",
"params": [
"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"
]
}
Example Response:
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"decimals": 6,
"logo": "<https://static.alchemyapi.io/images/assets/3408.png>",
"name": "USDC",
"symbol": "USDC"
}
}
Use Case 2: Token Prices (Prices API)
Our Prices API enables seamless migration from SimpleHash’s DEX price endpoint.
Understand the Differences

📌 Key Update: Alchemy aggregates data from various reputable sources, providing a holistic view of token prices. If you specifically need DEX-sourced prices, reach out! We’re actively exploring how to support this and would love your feedback.
Fetching Real-Time Prices for Multiple Tokens
SimpleHash Request (Old)
curl -X GET "<https://api.simplehash.com/api/v0/prices/fungible?token_ids=ethereum:0x>...,ethereum:0x..." \\
-H "Authorization: Bearer YOUR_SIMPLEHASH_KEY"
Alchemy Request (New)
curl --request GET \\
--url '<https://api.g.alchemy.com/prices/v1/{api-key}/tokens/by-symbol?symbols=ETH&symbols=BTC>' \\
--header 'accept: application/json'
Example Response:
{
"data": [
{
"symbol": "ETH",
"prices": [
{
"currency": "usd",
"value": "2304.5082988224",
"lastUpdatedAt": "2025-02-26T19:16:14Z"
}
]
},
{
"symbol": "BTC",
"prices": [
{
"currency": "usd",
"value": "84614.0666993729",
"lastUpdatedAt": "2025-02-26T19:16:21Z"
}
]
}
]
}
Fetching Historical Prices (🚀 New in Alchemy!)
Docs: https://docs.alchemy.com/reference/get-historical-token-prices
📌 Alchemy supports historical price data (not available in SimpleHash).
Alchemy Request:
curl --request POST \\
--url <https://api.g.alchemy.com/prices/v1/{api-key}/tokens/historical> \\
--header 'accept: application/json' \\
--header 'content-type: application/json' \\
--data '
{
"symbol": "ETH",
"startTime": "2024-01-01T00:00:00Z",
"endTime": "2024-01-31T23:59:59Z",
"interval": "1d"
}
'
Example Response:
{
"symbol": "ETH",
"currency": "usd",
"data": [
{
"value": "2279.941008569",
"timestamp": "2024-01-01T00:00:00Z"
},
{
"value": "2350.0262860085",
"timestamp": "2024-01-02T00:00:00Z"
},
{
"value": "2360.7821195891",
"timestamp": "2024-01-03T00:00:00Z"
},
...
]
}
Start Your Migration To Alchemy
We understand migrating services can be complex, but we are here to make it easy with dedicated support, feature parity, and expanded capabilities.
👋 If there’s a feature you need, let us know! Contact via this email or dm us on telegram @mihiralchemy.
Related articles

Migrating NFT Data from SimpleHash to Alchemy
This guide provides step-by-step examples for you to migrate NFT Data from SimpleHash to Alchemy.

Preparing for the Agave 2.0 Upgrade

ERC-1271 Signature Replay Vulnerability
On October 27th 2023, Alchemy discovered a ERC1271 contract signature replay vulnerability that affected a large number of smart contract accounts (SCA), and led to risks when interacting with several applications.
