Skip to content

All To Quote

Returns live exchange rates from all supported assets — both fiat currencies and cryptocurrencies — to a specified quote currency. Combines the data from Fiat To Quote and Crypto To Quote into one call. The inverse of All From Base.

Use this to:

  • Value any asset in terms of a single currency with one request
  • Build a universal portfolio valuator
  • Normalize all market assets to a common quote for ranking or comparison

Base URL

https://fast-price-exchange-rates.p.rapidapi.com

Get all rates to quote

GET/api/v1/convert-rates/all/to

Returns an object with the quote currency and a combined map of all fiat and crypto sources to their rates.

Authentication

HeaderValue
X-RapidAPI-KeyYour RapidAPI secret key
X-RapidAPI-Hostfast-price-exchange-rates.p.rapidapi.com

Query parameters

ParameterTypeRequiredDescription
currencystringYes Quote currency code. Accepts both fiat and crypto symbols.

Examples: USD, EUR, BTC, ETH
detailedbooleanNo When false (default): keys are plain symbols — crypto tickers and fiat ISO codes mixed together ("ETH", "EUR").
When true: keys use "SYMBOL:NAME:TYPE" format where TYPE is either CRYPTO or FIAT ("ETH:ETHEREUM:CRYPTO", "EUR:EURO:FIAT").

Example requests

bash
curl "https://fast-price-exchange-rates.p.rapidapi.com/api/v1/convert-rates/all/to?currency=USD&detailed=false" \
  -H "X-RapidAPI-Key: YOUR_RAPIDAPI_KEY" \
  -H "X-RapidAPI-Host: fast-price-exchange-rates.p.rapidapi.com"
bash
curl "https://fast-price-exchange-rates.p.rapidapi.com/api/v1/convert-rates/all/to?currency=USD&detailed=true" \
  -H "X-RapidAPI-Key: YOUR_RAPIDAPI_KEY" \
  -H "X-RapidAPI-Host: fast-price-exchange-rates.p.rapidapi.com"
javascript
const response = await fetch(
  'https://fast-price-exchange-rates.p.rapidapi.com/api/v1/convert-rates/all/to?currency=USD&detailed=false',
  {
    headers: {
      'X-RapidAPI-Key': process.env.RAPIDAPI_KEY,
      'X-RapidAPI-Host': 'fast-price-exchange-rates.p.rapidapi.com',
    },
  }
)

const data = await response.json()

// Value a mixed portfolio in USD
const portfolio = { BTC: 0.5, ETH: 3, EUR: 1000, SOL: 20, GBP: 500 }

let totalUsd = 0
for (const [symbol, amount] of Object.entries(portfolio)) {
  const rate = data.from[symbol]
  if (rate) {
    const usdValue = amount * rate
    totalUsd += usdValue
    console.log(`${amount} ${symbol} = $${usdValue.toFixed(2)}`)
  }
}
console.log(`\nTotal: $${totalUsd.toFixed(2)} USD`)
javascript
const response = await fetch(
  'https://fast-price-exchange-rates.p.rapidapi.com/api/v1/convert-rates/all/to?currency=USD&detailed=true',
  {
    headers: {
      'X-RapidAPI-Key': process.env.RAPIDAPI_KEY,
      'X-RapidAPI-Host': 'fast-price-exchange-rates.p.rapidapi.com',
    },
  }
)

const data = await response.json()

const fiat = {}
const crypto = {}

for (const [key, rate] of Object.entries(data.from)) {
  const [symbol, name, type] = key.split(':')
  if (type === 'FIAT') {
    fiat[symbol] = { name, rate }
  } else if (type === 'CRYPTO') {
    crypto[symbol] = { name, rate }
  }
}

console.log(`Fiat currencies: ${Object.keys(fiat).length}`)
console.log(`Crypto tokens:   ${Object.keys(crypto).length}`)
console.log(`\n1 EUR = $${fiat['EUR'].rate.toFixed(4)}`)
console.log(`1 BTC = $${crypto['BTC'].rate.toLocaleString()}`)
python
import os
import requests

response = requests.get(
    "https://fast-price-exchange-rates.p.rapidapi.com/api/v1/convert-rates/all/to",
    params={"currency": "USD", "detailed": "false"},
    headers={
        "X-RapidAPI-Key": os.environ["RAPIDAPI_KEY"],
        "X-RapidAPI-Host": "fast-price-exchange-rates.p.rapidapi.com",
    },
)

response.raise_for_status()
data = response.json()

# Value a mixed portfolio in USD
portfolio = {"BTC": 0.5, "ETH": 3, "SOL": 20, "EUR": 1000, "GBP": 500}

print(f"Portfolio valuation in {data['to']}:\n")
total = 0
for symbol, amount in portfolio.items():
    rate = data["from"].get(symbol)
    if rate:
        usd_value = amount * rate
        total += usd_value
        print(f"  {amount:>8} {symbol:<6} = ${usd_value:>12,.2f}")

print(f"\n  Total: ${total:>12,.2f} USD")
python
import os
import requests

response = requests.get(
    "https://fast-price-exchange-rates.p.rapidapi.com/api/v1/convert-rates/all/to",
    params={"currency": "USD", "detailed": "true"},
    headers={
        "X-RapidAPI-Key": os.environ["RAPIDAPI_KEY"],
        "X-RapidAPI-Host": "fast-price-exchange-rates.p.rapidapi.com",
    },
)

response.raise_for_status()
data = response.json()

fiat, crypto = {}, {}
for key, rate in data["from"].items():
    symbol, name, asset_type = key.split(":")
    if asset_type == "FIAT":
        fiat[symbol] = {"name": name, "rate": rate}
    elif asset_type == "CRYPTO":
        crypto[symbol] = {"name": name, "rate": rate}

print(f"Fiat currencies : {len(fiat)}")
print(f"Crypto tokens   : {len(crypto)}")
print(f"Total assets    : {len(fiat) + len(crypto)}")

Response — detailed=false

json
{
  "to": "USD",
  "from": {
    "00": 0.004599999999999999,
    "1INCH": 0.09280097605904093,
    "AAVE": 90.66346490785796,
    "ADA": 0.402,
    "BTC": 89450.0,
    "ETH": 3136.0,
    "EUR": 1.176,
    "GBP": 1.330,
    "JPY": 0.00628,
    "SOL": 132.5,
    "VND": 0.00003798381219289435,
    "ZAR": 0.060879890650935305,
    "...": "... all fiat and crypto combined"
  }
}

Response — detailed=true

json
{
  "to": "USD",
  "from": {
    "00:00 TOKEN:CRYPTO": 0.004613605742207661,
    "1INCH:1INCH TOKEN:CRYPTO": 0.09280042047733138,
    "AAVE:AAVE:CRYPTO": 90.77602713369188,
    "ADA:CARDANO:CRYPTO": 0.402,
    "BTC:BITCOIN:CRYPTO": 89450.0,
    "ETH:ETHEREUM:CRYPTO": 3136.0,
    "EUR:EURO:FIAT": 1.183,
    "GBP:BRITISH POUND:FIAT": 1.357,
    "JPY:JAPANESE YEN:FIAT": 0.00628,
    "VND:VIETNAMESE ĐỒNG:FIAT": 0.00003798382210322027,
    "ZAR:SOUTH AFRICAN RAND:FIAT": 0.06090248250956224,
    "...": "... all fiat and crypto combined"
  }
}

Response fields

FieldTypeDescription
tostringThe quote currency code (mirrors the currency query parameter).
fromobject Combined map of all source assets (fiat + crypto) to their rates. Each value represents how many units of the quote currency equal 1 unit of the source asset.

Key format depends on the detailed parameter:
false: plain symbol — "EUR" or "BTC"
true: "SYMBOL:NAME:TYPE" where TYPE is FIAT or CRYPTO

Key format (detailed=true)

SYMBOL:FULL NAME:TYPE
  │        │       └─ "FIAT" or "CRYPTO"
  │        └─ full asset name in uppercase
  └─ ticker or ISO code

Conversion formula

Each rate is source → quote. To convert an amount:

quoteAmount = sourceAmount × rate

Example: "EUR": 1.176 means 1 EUR = 1.176 USD → 500 EUR × 1.176 = $588

Relationship to All From Base

This endpoint is the mirror of All From Base:

  • all/from?currency=USDto.EUR = 0.844 (1 USD = 0.844 EUR)
  • all/to?currency=USDfrom.EUR = 1.176 (1 EUR = 1.176 USD)

The two rates are reciprocals: 0.844 × 1.176 ≈ 1.0


Error responses

StatusCodeDescription
400bad_requestcurrency parameter is missing or not a recognized symbol
401unauthorizedX-RapidAPI-Key is missing or invalid
403forbiddenYour RapidAPI plan does not include access to this endpoint
429too_many_requestsRapidAPI rate limit exceeded
500internal_errorServer error — safe to retry after a short delay

EndpointDescription
All From BaseRates from a single base to all fiat and crypto
Fiat To QuoteFiat-only rates to a quote currency
Crypto To QuoteCrypto-only rates to a quote currency

Released under the MIT License.