---
title: "Migrando dados de tokens fungíveis do SimpleHash para Alchemy"
description: "Este guia traz exemplos passo a passo para você migrar Fungible Token Data do SimpleHash para Alchemy."
---

# Migrando dados de tokens fungíveis do SimpleHash para Alchemy

<CalloutBlock>

A SimpleHash vai encerrar seus serviços em 27 de março de 2025, e este guia apresenta um caminho direto para migrar dados de Fungible Token da SimpleHash para a Alchemy.

Entre em contato com [data-services-product@alchemy.com](mailto:data-services-product@alchemy.com) caso tenha alguma dúvida!

</CalloutBlock>

## Caso de uso 1: saldos e metadados de tokens
Nossas token APIs são um substituto perfeito para os endpoints de fungible tokens da SimpleHash.

Nossas fungible token APIs fornecem:
✅ **Saldos em tempo real** para ERC-20 e outros tokens

✅ **Metadados de tokens** \(name, symbol, decimals, contract address\)

✅ **Suporte multi-chain** para todas as principais blockchains

Docs: [https://www.alchemy.com/docs/data/token-api/token-api-endpoints/alchemy-get-token-balances](https://www.alchemy.com/docs/data/token-api/token-api-endpoints/alchemy-get-token-balances)

📌 **Exemplo de Wallet:** `0x89205A3A3b2A69De6Dbf7f01ED13B2108B2c43e7`

### Buscando saldos de tokens
### Requisição SimpleHash \(antiga\)
<CodeSnippet
  language="bash"
  code={`curl -X GET "<https://api.simplehash.com/api/v0/fungibles/balances?wallet_address=0x...&chain=ethereum>" \\\\
  -H "Authorization: Bearer YOUR_SIMPLEHASH_KEY"`}
/>
### Requisição Alchemy \(nova\)
_Experimente _[aqui](https://sandbox.alchemy.com/?network=ETH_MAINNET&method=alchemy_getTokenBalances&body.id=1&body.jsonrpc=2.0&body.method=alchemy_getTokenBalances&body.params%5B0%5D=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&body.params%5B1%5D=erc20&body.params%5B2%5D.pageKey=&body.params%5B2%5D.maxCount=100)_!_

<CodeSnippet
  language="bash"
  code={`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"
  ]
}
'`}
/>
### Exemplo de resposta:
<CodeSnippet
  language="json"
  code={`{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "address": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045",
    "tokenBalances": [
      {
        "contractAddress": "0x000000000000e63d2c9c29d3edf6efb99071f92c",
        "tokenBalance": "0x00000000000000000000000000000000000000000000001b1ae4d6e2ef500000"
      },
      {
        "contractAddress": "0x00000000002514bf58ae82408e1e217f16a1dfa0",
        "tokenBalance": "0x000000000000000000000000000000000000000000002a5a058fc295ed000000"
      },
      ...
    ]
  }
}`}
/>
### Buscando metadados de tokens
Docs: [https://www.alchemy.com/docs/data/token-api/token-api-endpoints/alchemy-get-token-metadata](https://www.alchemy.com/docs/data/token-api/token-api-endpoints/alchemy-get-token-metadata)

### Requisição SimpleHash \(antiga\)
<CodeSnippet
  language="bash"
  code={`curl -X GET "<https://api.simplehash.com/api/v0/token/metadata?contract_address=0x...&chain=ethereum>" \\\\
  -H "Authorization: Bearer YOUR_SIMPLEHASH_KEY"`}
/>
### Requisição Alchemy \(nova - JSON-rpc\)
_Experimente _[aqui](https://sandbox.alchemy.com/?network=ETH_MAINNET&method=alchemy_getTokenMetadata&body.id=1&body.jsonrpc=2.0&body.method=alchemy_getTokenMetadata&body.params%5B0%5D=0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48)_!_

<CodeSnippet
  language="bash"
  code={`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"
  ]
}`}
/>
### Exemplo de resposta:
<CodeSnippet
  language="json"
  code={`{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "decimals": 6,
    "logo": "<https://static.alchemyapi.io/images/assets/3408.png>",
    "name": "USDC",
    "symbol": "USDC"
  }
}`}
/>
## Caso de uso 2: preços de tokens \(prices api\)
Nossa [**Prices API**](https://www.alchemy.com/docs/reference/prices-api-quickstart) permite uma migração tranquila a partir do endpoint de **DEX price** da SimpleHash.

## Entenda as diferenças
<EmbeddedTable
  table={{
    columns: [
      { key: "1", width: 200, title: "Feature", dataType: "object" },
      { key: "2", width: 200, title: "SimpleHash", dataType: "object" },
      { key: "3", width: 200, title: "Alchemy Prices API", dataType: "object" },
    ],
    data: [
      {
        "1": { title: "<p>Real-time token prices</p>", tooltip: "", icon: "" },
        "2": { title: true, tooltip: "", icon: "" },
        "3": { title: true, tooltip: "", icon: "" },
        id: 0,
      },
      {
        "1": { title: "<p>Historical prices</p>", tooltip: "", icon: "" },
        "2": { title: false, tooltip: "", icon: "" },
        "3": { title: true, tooltip: "", icon: "" },
        id: 1,
      },
      {
        "1": { title: "<p>Batch requests (multiple tokens at once)</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Up to 50 tokens per call</p>", tooltip: "", icon: "" },
        "3": { title: "<p>Supported</p>", tooltip: "", icon: "" },
        id: 2,
      },
      {
        "1": { title: "<p>DEX-specific prices</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Yes (from Uniswap, etc.)</p>", tooltip: "", icon: "" },
        "3": { title: "<p>Coming Soon! Reach out if this is critical.</p>", tooltip: "", icon: "" },
        id: 3,
      },
      {
        "1": { title: "<p>Supported Chains</p>", tooltip: "", icon: "" },
        "2": { title: "<p>Multiple chains</p>", tooltip: "", icon: "" },
        "3": { title: "<p>Multiple chains (including all top chains)</p>", tooltip: "", icon: "" },
        id: 4,
      },
    ],
  }}
/>

📌 **Atualização importante:** A Alchemy agrega dados de diversas fontes confiáveis, fornecendo uma visão holística dos preços de tokens. Se você precisa especificamente de **preços de origem DEX**, entre em contato! Estamos explorando ativamente como oferecer suporte a isso e gostaríamos do seu feedback.

### Buscando preços em tempo real para múltiplos tokens
### Requisição SimpleHash \(antiga\)
<CodeSnippet
  language="bash"
  code={`curl -X GET "<https://api.simplehash.com/api/v0/prices/fungible?token_ids=ethereum:0x>...,ethereum:0x..." \\\\
  -H "Authorization: Bearer YOUR_SIMPLEHASH_KEY"`}
/>
### Requisição Alchemy \(nova\)
<CodeSnippet
  language="bash"
  code={`curl --request GET \\\\
     --url '<https://api.g.alchemy.com/prices/v1/{api-key}/tokens/by-symbol?symbols=ETH&symbols=BTC>' \\\\
     --header 'accept: application/json'`}
/>
### Exemplo de resposta:
<CodeSnippet
  language="json"
  code={`{
  "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"
        }
      ]
    }
  ]
}`}
/>
### **Buscando preços históricos** \(🚀 **novidade na Alchemy!**\)

Docs: [https://www.alchemy.com/docs/data/prices-api/prices-api-endpoints/prices-api-endpoints/get-historical-token-prices](https://www.alchemy.com/docs/data/prices-api/prices-api-endpoints/prices-api-endpoints/get-historical-token-prices)

📌 **A Alchemy oferece suporte a dados de preços históricos \(não disponível na SimpleHash\).**

### Requisição Alchemy:
<CodeSnippet
  language="bash"
  code={`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"
}
'`}
/>
### Exemplo de resposta:
<CodeSnippet
  language="json"
  code={`{
  "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"
    },
    ...
  ]
}`}
/>
## Comece sua migração para a Alchemy
Sabemos que migrar serviços pode ser complexo, mas **estamos aqui para facilitar** com suporte dedicado, paridade de recursos e capacidades ampliadas.

**👋 Se houver um recurso que você precisa, avise-nos!** Entre em contato por [este email](mailto: data-services-product@alchemy.com) ou envie uma mensagem no telegram @mihiralchemy.

## Perguntas frequentes

### Por que a migração da SimpleHash é necessária?

A SimpleHash vai encerrar seus serviços em 27 de março de 2025, exigindo que os usuários migrem dados de fungible tokens para outros provedores.

### Quais capacidades de fungible tokens oferecemos?

Oferecemos saldos em tempo real para ERC-20 e outros tokens, metadados de tokens (name, symbol, decimals, contract address) e suporte multi-chain para todas as principais blockchains.

### Como faço para buscar saldos de tokens?

Use uma requisição POST para `https://eth-mainnet.g.alchemy.com/v2/{apiKey}` com o método `alchemy_getTokenBalances`, passando o endereço da wallet nos params.

### Como obtenho metadados de tokens?

Use uma chamada POST JSON-RPC para `alchemy_getTokenMetadata` com o contract address, que retorna informações de decimals, name, symbol e logo.

### Vocês oferecem suporte a preços de tokens como a SimpleHash oferecia?

Sim, nossa Prices API fornece preços de tokens em tempo real por meio de requisições GET para `https://api.g.alchemy.com/prices/v1/{api-key}/tokens/by-symbol` com os símbolos dos tokens como parâmetros.

### Qual é a diferença entre a SimpleHash e nossas fontes de dados de preços?

Nós agregamos dados de diversas fontes confiáveis para uma visão holística, enquanto a SimpleHash focava especificamente em preços de origem DEX.

### Posso acessar preços históricos de tokens?

Sim, oferecemos suporte a dados de preços históricos por meio de requisições POST para `/tokens/historical` com parâmetros de symbol, start/end times e interval, um recurso não disponível na SimpleHash.

### Onde posso obter ajuda com minha migração?

Entre em contato com data-services-product@alchemy.com para qualquer dúvida ou solicitação de recurso, ou envie uma mensagem via Telegram @mihiralchemy para suporte na migração.
