All namespaces/💱 Currency
💱
Currency Namespace · 3 endpoints

Exchange rates for every product

Live and historical exchange rates from the European Central Bank — authoritative, free, updated daily. 30+ currencies with full metadata. One endpoint for current rates, one for conversion, one for time-series history.

30+ CurrenciesECB Official RatesDaily UpdatesHistorical DataInstant ConversionInverse RateHigh/Low/ChangeFree Upstream
Data source

Powered by Frankfurter — an open-source project serving European Central Bank exchange rates since 2010. ECB rates are the most authoritative free forex reference rates in the world, used by EU regulators for official financial reporting. Updated every business day at 16:00 CET. Historical data available back to 1999-01-04. APlicious adds auth, caching, currency metadata (names, symbols, flags), and consistent JSON.

5 businesses you could build

Currency conversion is a universal need — every product that crosses a border needs it.

Every SaaS that sells to international customers needs to show prices in local currency. PriceGlobal is a JavaScript snippet that detects the visitor's country via their IP, fetches the latest ECB exchange rate, and renders the price in their local currency — updated daily. No more 'why does this show USD?' support tickets. Sell as a monthly embed to SaaS landing pages and pricing pages.

Pricing
$29/month per product
Revenue target
$4,350/month at 150 products
Build time
5 days solo
Target customer
Bootstrapped SaaS founders selling internationally, B2B pricing pages
API cost
$9 (Starter)
Gross margin
99% gross margin
Endpoints used
/currency/rates/currency/convert
150 SaaS products × $29. Every bootstrapped SaaS founder selling internationally faces this. Stripe handles billing currency but doesn't handle display-layer conversion on your marketing site. This fills that gap with one script tag.

All 3 Currency endpoints

Three focused GET endpoints. ECB data, zero licensing friction.

/api/v1/currency/ratesLive Exchange Rates
GET

Current ECB exchange rates for any base currency, with full metadata for 30+ currencies: name, symbol, and flag emoji. Returns all rates from the specified base, or filter with ?symbols=USD,GBP,INR. Data updated daily at 16:00 CET by the European Central Bank.

base?symbols?
/api/v1/currency/convertCurrency Conversion
GET

Converts any amount between two currencies using the latest ECB rate. Returns the converted amount, the rate used, the inverse rate, and the rate date. Works for all 30+ supported ECB currencies.

fromtoamount?
/api/v1/currency/historyHistorical Rate Time-Series
GET

Historical ECB exchange rates for any currency pair. Returns daily rates with a summary: high, low, latest, and % change over the period. ECB data available back to 1999-01-04.

fromtoperiod?

Starter code

Copy and paste. Works anywhere fetch runs.

javascript
const API_KEY = 'your_api_key_here';
const BASE = 'https://aplicious.com/api/v1/currency';

// Get all rates from USD
const { data } = await fetch(
  `${BASE}/rates?base=USD`,
  { headers: { 'x-api-key': API_KEY } }
).then(r => r.json());

// Print top currencies
data.rates.slice(0, 5).forEach(r => {
  console.log(`${r.flag} ${r.code}: ${r.rate} (${r.name})`);
});

// Convert $1,000 to INR
const conversion = await fetch(
  `${BASE}/convert?from=USD&to=INR&amount=1000`,
  { headers: { 'x-api-key': API_KEY } }
).then(r => r.json());

console.log(`$1,000 = ₹${conversion.data.converted_amount.toLocaleString('en-IN')}`);
console.log(`Rate: ${conversion.data.rate} · Date: ${conversion.data.date}`);

// USD/EUR rate history for the last month
const history = await fetch(
  `${BASE}/history?from=USD&to=EUR&period=1mo`,
  { headers: { 'x-api-key': API_KEY } }
).then(r => r.json());

const { summary } = history.data;
console.log(`USD/EUR 1mo: High ${summary.high} · Low ${summary.low} · Change ${summary.change_pct}%`);

Start building with the Currency namespace

Free tier: 250 calls/month. No credit card. One key for all 21 namespaces.

Get free API keyView full docs