CurrencyRateAPI

快速启动工具

想测试 API 而又不想查阅完整的文档?前往控制面板,您会找到快速启动工具——只需单击一下即可轻松尝试所有可用的端点。

点击下方按钮即可免费注册并开始使用快速启动工具。

入门

使用货币汇率 API 时,您需要了解以下关键术语和概念:

定义 描述
象征 三字母货币代码(例如,USD、EUR)。我们支持法定货币的ISO 4217标准代码以及各种加密货币代码。
基础货币 转换所用的基准货币。例如,如果 1 美元 = X 欧元,则美元为基础货币。默认基准货币为欧元。
目标货币 基础货币转换成的目标货币。以上述例子为例,欧元是目标货币。
加密货币 除了传统的法定货币外,我们的 API 还处理并提供各种流行加密货币的汇率。
基本 URL 所有 API 端点使用的根 URL。所有请求都发送到此基本路径。

API响应

CurrencyRateAPI提供的汇率默认以欧元为单位。所有数据均以标准JSON格式返回,可以使用任何编程语言轻松解析。

示例回答:
下面您将看到一个示例 API 响应,其中包含一系列常见的世界货币,所有货币均相对于欧元货币,并带有接收时间戳。

{
    "success": true,
    "base": "eur",
    "date": "2025-08-25",
    "rates": {
        "usd": "1.1697",
        "gbp": "0.8659",
        "cad": "1.6171"
    },
    "last_update_unix": "1769067006"
}

如上所示,实时汇率的 API 响应包含几个关键字段:

  • success 表示请求是否成功。
  • base 返回用于此请求的基础货币的 3 位字母代码。
  • date 返回提供汇率的实际日期(格式为 YYYY-MM-DD)。
  • rates 包含所请求货币及其当前汇率的列表。
  • last_update_unix 显示系统中最新可用数据的时间戳(Unix 格式)。

可用端点

CurrencyRateAPI包含多个API接口,每个接口提供特定的功能。某些接口的可用性取决于您的订阅计划。

  • 货币列表的终点。 此端点返回所有受支持货币的完整列表。 /api/codes (选择: /api/currencies)
  • 最新汇率的终点。 此接口返回所有受支持货币的实时汇率数据。 /api/latest
  • 历史利率的终点。 此接口返回特定日期的历史汇率数据。 /api/YYYY-MM-DD (选择: /api/history?date=YYYY-MM-DD). 历史数据可追溯至 1999 年 1 月 4 日。

汇率计算方法

为确保数据的准确性和一致性, CurrencyRateAPI遵循严格的汇率管理和发布方法:

  • 中间市场利率: 默认情况下,API 返回mid利率。这些利率代表市场买入价 ( bid ) 和卖出价 ( ask ) 的算术平均值,或中央银行的官方参考利率。
  • 每日结算(EOD)最终确定: API 提供的历史汇率以UTC (协调世界时)当日结束时的汇率为准。
  • 交叉费率计算: 对于我们无法直接从我们的渠道获得的货币对,系统会自动使用主要全球货币作为桥梁(枢轴)来计算非常精确的交叉汇率。
  • 智能备用机制: 如果请求日期的数据不可用(例如,由于周末或节假日市场关闭),系统会自动在滑动的8 天窗口内搜索最近的有效汇率。
  • 高精度: 为了防止财务计算中出现舍入误差,汇率以小数点后 18 位进行存储和处理。

终点

支持的符号端点

https://currencyrateapi.com/api/codes

此端点返回所有受支持货币的完整列表。您也可以使用别名 /api/currencies

我们的“支持的货币”页面上还提供了所有受支持货币的易读列表。

基本货币: 默认情况下,为了减少流量,某些其他端点(例如 /latest/{YYYY-MM-DD})仅返回有限的几种主要全球货币。这些“基本”货币包括:

USD, EUR, GBP, CHF, JPY, CAD, AUD, NZD, SEK, NOK, DKK, ISK, PLN, CZK, HUF, RON, HRK, RSD,
MKD, MDL, TRY, SGD, HKD, KRW, TWD, ILS, AED, SAR, QAR, KWD, BHD, OMR, ZAR

API响应:

{
    "success": true,
    "currencies": {
        "EUR": {
            "entity": "EUROPEAN UNION",
            "currency": "Euro",
            "alphabetic_code": "EUR",
            "numeric_code": 978,
            "minor_unit": 2,
            "title": "Euro",
            "symbol": "€",
            "data_from": "1999-01-04"
        },
        "BTC": {
            "entity": "CRYPTOCURRENCY",
            "currency": "Bitcoin",
            "alphabetic_code": "BTC",
            "title": "Bitcoin",
            "symbol": "₿",
            "is_crypto": true,
            "data_from": "2024-03-02"
        },
        [...]
    }
}

响应对象:

钥匙 描述
success 请求成功时返回 true。如果返回 false,则响应中将包含一个错误对象。
currencies 返回所有支持的货币,并提供每种货币的详细信息。
entity 货币使用的国家或地区,或者“加密货币”用于数字资产。
currency 该货币的全称。
alphabetic_code 标准 3 字母代码(法定货币采用 ISO 4217 标准)。
numeric_code ISO 4217 数字代码(如适用)。
minor_unit 货币所使用的小数位数。
withdrawal_date (如适用)货币退出流通的日期。
title 货币的简短显示标题。
symbol 货币的图形符号(例如,$、€、₿)。
is_crypto 如果货币是加密货币,则标记( true )。
data_from 该货币汇率数据可查的最早日期。

最新汇率终点站

https://currencyrateapi.com/api/latest?
    base=USD&
    quote=GBP,JPY,EUR

请求参数:

范围 描述
base [选修的] 输入一个三字母的 ISO 货币代码以设置转换的基础货币。默认值为欧元。
quote [选修的] 请输入以逗号分隔的货币代码列表,以将结果限定为特定货币。(或使用 codes
extended_list [选修的] 如果设置为 1,API 将返回所有可用货币的完整列表。默认情况下,为了减少流量,仅返回一个精简的列表。
precision [选修的] 设置输出速率的小数位数(0-18 位)。默认值为全部可用精度,不使用科学计数法。

API响应:

{
    "success": true,
    "base": "usd",
    "date": "2026-01-22",
    "rates": {
        "gbp": "0.74350935478637",
        "jpy": "158.00358051914",
        "eur": "0.8518613169776"
    },
    "last_update_unix": "1769067006"
}

响应对象:

钥匙 描述
success 请求成功时返回 true。如果返回 false,则响应中将包含一个错误对象。
base 返回基础货币的 3 位字母代码。
date 返回提供汇率的实际日期。
rates 返回请求中指定的货币的汇率数据。
last_update_unix 返回一个 Unix 时间戳,指示返回的数据上次更新的时间。

历史利率终点

https://currencyrateapi.com/api/2025-08-25?
    base=EUR&
    quote=USD,GBP,CAD

其他格式: /api/history?date=2025-08-25...

请求参数:

范围 描述
date [必需的] 请求汇率的历史日期。格式:YYYY-MM-DD。可以在 URL 路径中提供(例如,/api/2025-08-25),也可以作为查询参数提供(例如,/api/history?date=2025-08-25)。
base [选修的] 输入一个三字母货币代码以设置转换的基础货币。默认值为欧元。
quote [选修的] 请输入以逗号分隔的货币代码列表,以将结果限定为特定货币。(或使用 codes
extended_list [选修的] 如果设置为 1,API 将返回所有可用货币的完整列表。默认情况下,为了减少流量,仅返回一个精简的列表。
precision [选修的] 设置输出速率的小数位数(0-18 位)。默认值为全部可用精度,不使用科学计数法。

API响应:

{
    "success": true,
    "base": "eur",
    "date": "2025-08-25",
    "rates": {
        "usd": "1.1697",
        "gbp": "0.8659",
        "cad": "1.6171"
    },
    "last_update_unix": "1769067006"
}

响应对象:

钥匙 描述
success 请求成功时返回 true。如果返回 false,则响应中将包含一个错误对象。
base 返回基础货币的 3 位字母代码。
date 返回提供汇率的实际日期。
rates 返回请求中指定日期内各货币的汇率数据。
last_update_unix 返回一个 Unix 时间戳,指示返回的数据上次更新的时间。

示例代码

PHP(cURL)

// Set API Endpoint (can be 'latest' or a date 'YYYY-MM-DD')
$endpoint = 'latest';

// Initialize CURL:
$ch = curl_init('https://currencyrateapi.com/api/'.$endpoint.'?base=USD"e=GBP,JPY');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// Store the data:
$json = curl_exec($ch);
curl_close($ch);

// Decode JSON response:
$exchangeRates = json_decode($json, true);

// Access the exchange rate values, e.g. GBP:
echo $exchangeRates['rates']['GBP'];

JavaScript(fetch)

 // Set endpoint (can be 'latest' or a date 'YYYY-MM-DD')
const endpoint = 'latest';
const params = '?base=USD"e=GBP,JPY';

// Get exchange rates via the selected endpoint:
fetch('https://currencyrateapi.com/api/' + endpoint + params)
    .then(response => {
        return response.json();
    })
    .then(json => {

        // Exchange rate data is stored in json.rates
        console.log(json.rates.GBP);

        // Timestamp can be accessed in json.last_update_unix
        console.log(json.last_update_unix);
    })
    .catch(error => {
        console.error('Fetch error:', error);
    });