コンテンツへスキップ
Guide

ExchangeRate-API の代替: 通貨換算と 150 以上のエンドポイント

| 6 min read

ExchangeRate-API と Fixer.io は通貨換算のみを行います。 Botoi は、1 つの API キーの下に 150 以上のエンドポイントのライブ為替レートをバンドルします。

Currency exchange rate board in a financial district
Photo by Markus Spiske on Unsplash

ExchangeRate-API は通貨換算を提供するだけです。 Fixer.io は為替レートを提供します それで終わりです。 アプリに電子メール検証、IP 地理位置情報、QR コードも必要な場合は、これで完了です。 4 つの API キーと 4 つの請求サイクルを管理します。

Botoi は、1 つのキーと 1 つのクォータの下で、150 以上の他のエンドポイントとライブ通貨換算をバンドルします。 一般的な使用例 (ライブ換算、現在のレート) で同じ為替レート データを取得します。 単一目的のサービスにサインアップする必要はありません。

機能の比較: ExchangeRate-API vs Fixer.io vs botoi

特徴 ExchangeRate-API Fixer.io 出版された
無料利用枠の制限 1,500 リクエスト/月 100 リクエスト/月 5 リクエスト/分、100 リクエスト/日 (キーなし)
有料価格(スターター) $9.99/月 $14.99/月 $9/月
通貨の数 161 170 170+
過去のレート はい(有料) はい(有料) いいえ
時系列データ はい(有料) はい(有料) いいえ
無料枠のHTTPS はい いいえ はい
他のエンドポイントも含まれる 0 0 150+ (IP、DNS、電子メール、QR、PDF など)
応答フォーマット JSON JSON JSON

重要な違い: ExchangeRate-API と Fixer.io は単一目的の API です。 1ドルごとに 支出は通貨データのみに使用されます。 ボトイ氏の計画には為替レートも含まれる それ以外はすべてなので、すでに他のものを使用している場合、通貨エンドポイントは事実上無料です。 ボトイの特徴。

Fixer.io の HTTPS 問題

Fixer.io は、無料枠では HTTPS を提供しません。 で実行されるものを構築している場合は、 ブラウザの場合、リクエストはプレーン HTTP 経由で送信されます。 つまり、混合コンテンツの警告とブロックされたリクエスト HTTPS ページ上で、転送中に資格情報が表示されます。 有料プランにアップグレードする必要があります 他のすべての API がデフォルトで提供するものです。

ExchangeRate-API と botoi はどちらも、無料を含むすべてのレベルで HTTPS を提供します。

Botoi の通貨エンドポイント

3 つのエンドポイントが共通の通貨操作をカバーします。 すべて JSON 本文を含む POST を受け入れます そして一貫した結果を返します {"{"} "success": true, "data": {"{"} ... {"}"} {"}"} 構造。

2 つの通貨間で変換する

POST /v1/currency/convert

curl -X POST https://api.botoi.com/v1/currency/convert \\
  -H "Content-Type: application/json" \\
  -d '{"from": "USD", "to": "EUR", "amount": 100}'

応答:

{
  "success": true,
  "data": {
    "from": "USD",
    "to": "EUR",
    "amount": 100,
    "result": 91.80,
    "rate": 0.9180
  }
}

変換されたものを取得します result そして生の rate 使用済み。 両方のフィールド ユーザーに結果を表示したり、透明度を表示したりするのに便利です。

基本通貨のすべてのレートを取得する

POST /v1/currency/rates

curl -X POST https://api.botoi.com/v1/currency/rates \\
  -H "Content-Type: application/json" \\
  -d '{"base": "USD"}'

応答 (切り捨て):

{
  "success": true,
  "data": {
    "base": "USD",
    "rates": {
      "EUR": 0.9180,
      "GBP": 0.7891,
      "JPY": 149.52,
      "CAD": 1.3612,
      "AUD": 1.5340,
      "CHF": 0.8821,
      "INR": 83.4150,
      "BRL": 4.9720,
      "MXN": 17.1340
    }
  }
}

1 つのリクエストで 170 以上のレートが返されます。 ローカルにキャッシュすれば、必要な金額を変換せずに変換できます。 追加の API 呼び出し。 これは、価格設定ページとチェックアウト フローにとって適切なアプローチです 複数の対象通貨が必要です。

サポートされているすべての通貨をリストする

POST /v1/currency-list/list

curl -X POST https://api.botoi.com/v1/currency-list/list \\
  -H "Content-Type: application/json"

応答 (切り捨て):

{
  "success": true,
  "data": {
    "currencies": {
      "USD": "United States Dollar",
      "EUR": "Euro",
      "GBP": "British Pound Sterling",
      "JPY": "Japanese Yen",
      "CAD": "Canadian Dollar",
      "...": "170+ currencies total"
    }
  }
}

これを使用して、UI の通貨ドロップダウンを設定します。 応答には以下が含まれます サポートされているすべてのコードとその完全名。

実践例: 複数通貨の価格表

SaaS の価格ページには、多くの場合 4 ~ 5 つの通貨で価格が表示されます。 このNode.js関数 料金を 1 回取得して 1 時間キャッシュし、料金表を作成します。 通貨のセット。

const API_KEY = process.env.BOTOI_API_KEY;
const BASE = "https://api.botoi.com/v1";

const headers = {
  "Content-Type": "application/json",
  Authorization: \`Bearer \${API_KEY}\`,
};

// Fetch all rates once, cache for 1 hour, convert locally
let ratesCache = null;
let cacheTime = 0;
const ONE_HOUR = 60 * 60 * 1000;

async function getRates(base = "USD") {
  if (ratesCache && Date.now() - cacheTime < ONE_HOUR) {
    return ratesCache;
  }

  const res = await fetch(\`\${BASE}/currency/rates\`, {
    method: "POST",
    headers,
    body: JSON.stringify({ base }),
  });
  const { data } = await res.json();

  ratesCache = data.rates;
  cacheTime = Date.now();
  return ratesCache;
}

// Build a multi-currency pricing table
async function getPricingTable(priceUsd, currencies) {
  const rates = await getRates("USD");

  return currencies.map((currency) => ({
    currency,
    price:
      currency === "USD"
        ? priceUsd
        : Math.round(priceUsd * rates[currency] * 100) / 100,
    rate: rates[currency] || 1,
  }));
}

// Usage
const table = await getPricingTable(29, ["USD", "EUR", "GBP", "JPY", "BRL"]);
console.log(table);
// [
//   { currency: "USD", price: 29, rate: 1 },
//   { currency: "EUR", price: 26.62, rate: 0.918 },
//   { currency: "GBP", price: 22.88, rate: 0.7891 },
//   { currency: "JPY", price: 4336, rate: 149.52 },
//   { currency: "BRL", price: 144.19, rate: 4.972 }
// ]

この関数は、訪問者ごとに 1 回ではなく、1 時間に 1 回 API を呼び出します。 料金ページでは、 1 日あたり 10,000 回のビューを取得するには、24 個の API リクエストを使用します。 それは十分に無料枠の範囲内です。

ExchangeRate-API と Fixer.io が依然として勝てる場所

専用の通貨 API が存在するのには理由があります。 彼らはbotoiにはない機能を提供します。

  • 過去のレート。 ExchangeRate-API と Fixer.io はどちらも、あらゆるもののレートを提供します。 過去の日付。 Botoi は当日のレートのみを返します。 財務レポートを作成している場合は、 会計ツールや傾向グラフを使用するには、履歴データが必要です。
  • 時系列エンドポイント。 どちらも、日付全体のレートを返すエンドポイントを提供します 単一のリクエストで範囲を指定できます。 Botoi には同等のものはありません。
  • 変動データ。 Fixer.io は 2 つの日付間の変化の割合を返します。 通貨ダッシュボードやアラート システムに役立ちます。
  • レートの更新頻度。 ExchangeRate-API は 1 日に複数回更新されます。 より高い層。 Botoi のレートは欧州中央銀行を通じて営業日に 1 回更新されます。 およびその他の公的情報源。

履歴データ、時系列クエリ、または日中レートの更新が主要な要件である場合、 専用の通貨 API が適切な呼び出しです。 Botoi は 80% のケースのライブ変換をカバーします。 価格設定ページ、チェックアウト フロー、請求書の生成、および表示通貨の切り替え。

バンドルされたアプローチが重要な理由

典型的な SaaS チェックアウト フローを考えてみましょう。 現地の情報を表示するには通貨換算が必要です 価格。 購入者の住所を確認するには電子メール検証も必要です。 IP 地理位置情報が必要です 国を自動検出し、通貨を事前に入力します。 また、QR コードが必要になる場合があります。 支払いリンク。

単一目的の API では、通貨用の ExchangeRate-API、ZeroBounce の 4 つのプロバイダーになります。 電子メールの場合は ipinfo.io、地理位置情報の場合は ipinfo.io、QR コードの場合は QRCode Monkey。 鍵が 4 つ、4 つ 請求ダッシュボード、4 セットのドキュメント、4 つのエラー形式。

botoiなら鍵一つです。 /v1/currency/convert/v1/email/validate/v1/ip/lookup、 そして /v1/qr/generate すべてが同じ認証、同じ応答を共有します 構造、月々のノルマは同じです。 エラー処理コードはそれらすべてに対して機能します。

重要なポイント

  • ExchangeRate-API と Fixer.io は、単一目的の通貨 API です。 彼らは強いです 履歴データ、時系列クエリ、変動追跡。 Botoi は提供しません それらの機能。
  • ボトイさん /v1/currency/convert/v1/currency/rates、 そして /v1/currency-list/list 170 以上の通貨にわたるライブ コンバージョンをカバーします。 料金 営業日ごとに 1 回更新します。
  • Fixer.io は、無料枠で HTTPS アクセスに料金を請求します。 ExchangeRate-API と Botoi には以下が含まれます デフォルトでそれです。
  • Botoi の価値は、通貨換算と 150 以上の他のエンドポイント (電子メール、IP、 DNS、QR コード、PDF など) を 1 つのキーと 1 つの請求書で管理します。
  • 為替レートのみが必要な場合は、専用の通貨 API を選択してください。 アプリの交換が必要な場合 botoi は、検証、検索、生成エンドポイントと並行してレートを排除します。 マルチプロバイダーのオーバーヘッド。

FAQ

Botoi 通貨 API はいくつの通貨をサポートしていますか?
Botoi 通貨 API は、170 以上の法定通貨および一般的なデジタル通貨をサポートしています。 POST /v1/currency-list/list を呼び出すことで完全なリストを取得できます。これにより、サポートされているすべての通貨コードと通貨名が返されます。
Botoi には過去の為替レート データがありますか?
いいえ。Botoi では、営業日に 1 回更新されるライブ為替レートを提供しています。 過去の時系列データ、日付範囲クエリ、または変動エンドポイントが必要な場合は、その特定のユースケースには ExchangeRate-API または Fixer.io が適しています。
API キーなしで Botoi 通貨 API を使用できますか?
はい。 匿名アクセスは、IP ベースのレート制限により、1 分あたり 5 リクエスト、1 日あたり 100 リクエストで機能します。 サインアップやクレジットカードは必要ありません。 スループットを高めるには、有料プランが月額 9 ドルから始まります。
botoi は無料枠で HTTPS をサポートしていますか?
はい。 無料の匿名層を含むすべての botoi エンドポイントは、HTTPS 経由で提供されます。 Fixer.io は、HTTPS アクセスを有料プランのみに制限します。
通貨換算以外に、botoi サブスクリプションにはどのようなエンドポイントが付属していますか?
すべての botoi プランには、ルックアップ (IP 地理位置情報、DNS、WHOIS、電子メール検証)、テキスト処理 (Base64、JSON、Markdown、CSV)、開発者ユーティリティ (ハッシュ、UUID、JWT、cron、正規表現)、画像生成 (QR コード、OG 画像、スクリーンショット)、セキュリティ (クレジット カード検証、IBAN、暗号化) にわたる 150 以上のエンドポイントが含まれています。 1 つのキー、1 つのクォータ。

botoiで開発を始めよう

150以上のAPIエンドポイント。検索、テキスト処理、画像生成、開発者ユーティリティに対応。無料プラン、クレジットカード不要。