Exchange rates for multiple assets

This endpoint allows you to obtain current exchange rates between fiat/crypto or fiat/fiat.

We support the top 1000+ tokens by market cap, and tokens are available as soon as they’re listed on major CEXes or DEXes. Rates are aggregated from 10+ centralized exchanges and 100+ decentralized exchanges for normalized, reliable pricing.

By default, the base pair (target asset) is EUR unless specified otherwise.
For example, requesting rates for BTC and ETH returns how many EUR (or chosen base pair) can be exchanged for 1 BTC and 1 ETH, respectively.

Example Request Body:

[
  {
    "batchId": "1",
    "basePair": "USD",
    "symbol": "BTC"
  },
  {
    "batchId": "2",
    "basePair": "USD",
    "symbol": "ETH"
  }
]

Example Request

curl --location 'https://api.tatum.io/v4/data/rate/symbol/batch' \
--header 'x-api-key: {YOUR_API_KEY}' \
--data '[
  {"batchId": "1", "basePair": "USD", "symbol": "BTC"},
  {"batchId": "2", "basePair": "USD", "symbol": "ETH"}
]'

Example Response

[
  {
    "value": "119885.02776800",
    "basePair": "USD",
    "timestamp": 1759480996186,
    "source": "CoinGecko",
    "batchId": "1",
    "symbol": "BTC"
  },
  {
    "value": "4456.53795631",
    "basePair": "USD",
    "timestamp": 1759481004825,
    "source": "CoinGecko",
    "batchId": "2",
    "symbol": "ETH"
  }
]

Best Practices

  • Assign unique batchIds for each request to match responses easily.
  • Cache frequently requested symbols to reduce repeated API calls.
  • Use appropriate base pairs (USD, EUR, etc.) to match your application’s accounting.
  • Refresh volatile token rates frequently if using them in trading or dashboards.
  • Use batch requests to fetch multiple assets in one call for efficiency.