JavaScript
SDK'ya gerek yok. fetch her tarayıcıda, Node, Deno, Bun ve edge runtime'larda hazır geliyor. CORS açık ve sızdırılacak bir anahtar yok; API'yi doğrudan istemci kodundan çağırabilirsin.
Hızlı başlangıç
Kuru al ve dönüştür:
const res = await fetch("https://api.frankfurter.dev/v2/rate/usd/eur");
const data = await res.json();
const total = 100 * data.rate; Yanıt tek bir düz nesne: {"date": "2026-07-17", "base": "USD", "quote": "EUR", "rate": 0.8739}. fetch HTTP hatalarında da resolve olur, o yüzden res.ok değerini kontrol et. Geçersiz bir para birimi kodu, JSON mesajıyla birlikte 422 döner.
Intl ile biçimlendirme
Para birimi sembollerini elle yerleştirme. Intl.NumberFormat, her yerel ayarda (locale) her para biriminin sembolünü, konumunu ve ondalık basamak sayısını bilir:
const res = await fetch("https://api.frankfurter.dev/v2/rate/usd/eur");
const { rate } = await res.json();
const eur = new Intl.NumberFormat("en", {
style: "currency",
currency: "EUR",
});
eur.format(100 * rate); // "€87.39"Semboller ve ondalık basamaklar
Alt birimler veya semboller için projene ayrı bir metadata tablosu eklemene gerek yok. Formatter'a sor:
const yen = new Intl.NumberFormat("en", {
style: "currency",
currency: "JPY",
});
yen.resolvedOptions().maximumFractionDigits; // 0, the yen has no subunits
yen.formatToParts(1).find((part) => part.type === "currency").value; // "¥"Frankfurter'in sunduğu tüm para birimlerine kodları ve sembolleriyle göz at.
Tek seferde birden fazla kur
/v2/rates, her hedef para birimi için bir satır içeren düz bir dizi döndürür. Object.fromEntries ile bunu bir lookup nesnesine çevir. Tüm para birimleri için quotes parametresini hiç gönderme.
const api = "https://api.frankfurter.dev";
const res = await fetch(`${api}/v2/rates?base=usd"es=eur,gbp,jpy`);
const rows = await res.json();
const rates = Object.fromEntries(rows.map((row) => [row.quote, row.rate]));
// { EUR: 0.8739, GBP: 0.74388, JPY: 162.33 }Resmi kaynak sabitleme
Varsayılan olarak tüm kaynakların harmanını alırsın. Tek bir kurumu sabitlemek için providers ekle. Mevzuat, merkez bankasının yayımladığı kuru şart koşuyorsa bu önemli; AB KDV'si için ECB referans kuru buna bir örnek.
const api = "https://api.frankfurter.dev";
const res = await fetch(`${api}/v2/rate/usd/eur?providers=ecb`);Tüm kaynaklara göz at. Sabitlenen bir kaynak kendi yayın takvimini izler; bu yüzden en güncel kuru, harmanlanmış güncel kurun bir gün gerisinde kalabilir.
Canlı dene
Tarayıcıdan çıkmadan sorgu oluşturup yanıtları görmek için Playground sayfasını kullan.