Skip to content
Crypto + fiat

Crypto exchange rates API

Bitcoin, Ethereum, Solana, stablecoins and more – priced against 160+ fiat currencies, gold and silver in the same API. Use any crypto as the base, or quote crypto in USD, EUR or JPY.

Cryptos16
Quote inAny fiat
UpdatesEvery 60 s
FormatJSON
GET /v1/latest · base BTC
# Price 1 BTC in USD, EUR and gold
curl -G "https://api.fxapi.com/v1/latest" \
  -d base_currency=BTC \
  -d currencies=USD,EUR,XAU \
  -H "apikey: $FXAPI_KEY"

# All supported cryptocurrencies, quoted in EUR
curl -G "https://api.fxapi.com/v1/latest" \
  -d base_currency=EUR -d type=crypto \
  -H "apikey: $FXAPI_KEY"

Most crypto price APIs stop at “BTC in USD”. Applications that accept, display or report crypto alongside traditional money need more: the price of bitcoin in Brazilian reais, a USDT balance valued in euros, an invoice converted from ETH to Swiss francs. The fxapi crypto exchange rates API puts 16 major cryptocurrencies in the same dataset as 160+ fiat currencies and four precious metals, so every combination is one request away.

Supported cryptocurrencies

CodeNameCodeName
BTCBitcoinLTCLitecoin
ETHEthereumADACardano
BNBBNBUSDTTether
XRPXRPUSDCUSD Coin
SOLSolanaDAIDai
DOTPolkadotARBArbitrum
AVAXAvalancheOPOptimism
MATICPolygon (MATIC)TRXTRON

How crypto rates work in the API

Crypto codes behave exactly like currency codes:

  • As a target – base_currency=USD&currencies=BTC,ETH returns how much BTC and ETH one dollar buys. Invert the value to get the familiar “BTC price in USD”.
  • As a base – base_currency=BTC&currencies=USD,EUR returns the price of one bitcoin in dollars and euros directly.
  • Filtered – type=crypto limits any response to cryptocurrencies; combine it with any fiat base.

The same works for historical rates, conversion and fluctuation.

Python: value a crypto portfolio in your reporting currency

import os
import requests

holdings = {"BTC": 0.42, "ETH": 3.1, "USDC": 1250}

res = requests.get(
    "https://api.fxapi.com/v1/latest",
    params={"base_currency": "EUR", "currencies": ",".join(holdings)},
    headers={"apikey": os.environ["FXAPI_KEY"]},
    timeout=10,
)
res.raise_for_status()
rates = res.json()["data"]  # units of each crypto per 1 EUR

total_eur = sum(amount / rates[code]["value"] for code, amount in holdings.items())
print(f"Portfolio value: €{total_eur:,.2f}")

Use cases

  • Checkout and payments – show the fiat equivalent of a crypto payment before the customer confirms.
  • Accounting – value crypto holdings at period end or translate transactions at the rate of the day; see accounting & reporting.
  • Portfolio and tax tools – combine crypto and fiat history in one consistent dataset.
  • Stablecoin monitoring – compare USDT, USDC and DAI against USD over time with the fluctuation API.

Plans and update frequency

Crypto rates follow your plan’s update interval: daily on Free, hourly on Basic and every 60 seconds on Professional and Enterprise. If you need exchange-level tick data for trading, use a dedicated exchange feed; for pricing, conversion and reporting across fiat and crypto, fxapi keeps everything in one place. See pricing.

This endpoint is part of the fxapi foreign exchange rates API – the same key, response format and 190+ currencies across every endpoint.

Frequently asked questions

Which cryptocurrencies does fxapi support?
16: BTC, ETH, BNB, XRP, SOL, DOT, AVAX, MATIC, LTC, ADA, USDT, USDC, DAI, ARB, OP and TRX. See the currency list.
Can I use Bitcoin as the base currency?
Yes. Set base_currency=BTC and every value is expressed per one bitcoin – in fiat, metals or other cryptocurrencies.
Is this a crypto exchange or trading API?
No. fxapi provides reference prices for display, conversion, accounting and analytics. It does not provide order books, trading or custody.
How do I get only crypto rates?
Add type=crypto to /v1/latest, /v1/historical or the other endpoints to limit the response to cryptocurrencies.
Do I need a separate API for fiat rates?
No. Crypto, 160+ fiat currencies and four precious metals live in the same API with the same response format and the same API key.
Free plan · no credit card

Get your free exchange rate API key

300 requests a month, latest and historical rates, fluctuation and averages – free forever. Upgrade when you need faster updates or more requests.