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);
});