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.

ReadMe