v1 APIは非推奨(deprecated)ですが、引き続きご利用いただけます。新規利用にはv2をご利用ください。

APIエンドポイント

Frankfurterは最新レート、過去データ、時系列データのエンドポイントを提供します。

最新レート
直近営業日のレートを取得します。毎日中央ヨーロッパ時間(CET)16時頃に更新されます。
curl https://api.frankfurter.dev/v1/latest
baseパラメータで基準通貨を変更。デフォルトはEURです。
curl https://api.frankfurter.dev/v1/latest?base=USD
レスポンスを特定の通貨に制限:
curl https://api.frankfurter.dev/v1/latest?symbols=CHF,GBP
過去のレート
特定の日付のレートを取得します。
curl https://api.frankfurter.dev/v1/1999-01-04
基準通貨の変更と対象通貨の絞り込み:
curl https://api.frankfurter.dev/v1/1999-01-04?base=USD&symbols=EUR
注意: Frankfurterは日付をUTCで保存しています。別のタイムゾーンをご利用の場合、意図した日付とずれる可能性があります。また、当日のデータは確定値ではなく、新たなレート公表時に更新されます。
時系列データ
指定期間のレートを取得します。
curl https://api.frankfurter.dev/v1/2000-01-01..2000-12-31
現在までのレートを取得:
curl https://api.frankfurter.dev/v1/2024-01-01..
ヒント: 通貨を絞り込むことで、レスポンスを小さく高速化できます。
curl https://api.frankfurter.dev/v1/2024-01-01..?symbols=USD
利用可能な通貨
サポートされている通貨コードと正式名称の一覧を取得します。
curl https://api.frankfurter.dev/v1/currencies
通貨の換算
為替レートを取得し、コード内で金額を換算します。
function convert(from, to, amount) {
  fetch(`https://api.frankfurter.dev/v1/latest?base=${from}&symbols=${to}`)
    .then((resp) => resp.json())
    .then((data) => {
      const convertedAmount = (amount * data.rates[to]).toFixed(2);
      alert(`${amount} ${from} = ${convertedAmount} ${to}`);
    });
  }

convert("EUR", "USD", 10);