CurrencyRateAPI
Công cụ khởi chạy nhanh
Cần kiểm tra API mà không cần xem qua toàn bộ tài liệu? Hãy vào Bảng điều khiển, nơi bạn sẽ tìm thấy Công cụ Khởi chạy nhanh — một cách đơn giản để thử tất cả các điểm cuối có sẵn chỉ với một cú nhấp chuột.
Hãy nhấp vào nút bên dưới để đăng ký miễn phí và bắt đầu sử dụng Công cụ Khởi chạy Nhanh.
Bắt đầu
Các thuật ngữ và khái niệm chính bạn cần nắm để bắt đầu làm việc với API Tỷ giá hối đoái:
| Sự định nghĩa | Sự miêu tả |
|---|---|
| Biểu tượng | Mã tiền tệ gồm ba chữ cái (ví dụ: USD, EUR). Chúng tôi hỗ trợ mã theo tiêu chuẩn ISO 4217 cho tiền tệ pháp định và nhiều mã khác nhau cho tiền điện tử . |
| Tiền tệ cơ sở | Đơn vị tiền tệ dùng làm cơ sở quy đổi. Ví dụ, nếu 1 USD = X EUR, thì USD là đơn vị tiền tệ cơ sở. Đơn vị tiền tệ cơ sở mặc định là EUR. |
| Tiền tệ mục tiêu | Đồng tiền mà đồng tiền cơ sở được quy đổi sang. Ví dụ, EUR là đồng tiền mục tiêu. |
| Tiền điện tử | Ngoài các loại tiền tệ pháp định truyền thống, API của chúng tôi còn xử lý và cung cấp tỷ giá hối đoái cho nhiều loại tiền điện tử phổ biến. |
| URL cơ sở | URL gốc được sử dụng cho tất cả các điểm cuối API. Tất cả các yêu cầu đều được gửi đến đường dẫn cơ sở này. |
Phản hồi API
Tỷ giá hối đoái do CurrencyRateAPI cung cấp mặc định là bằng Euro. Tất cả dữ liệu được trả về ở định dạng JSON chuẩn và có thể dễ dàng phân tích cú pháp bằng bất kỳ ngôn ngữ lập trình nào.
Ví dụ câu trả lời:
Dưới đây là một ví dụ về phản hồi API chứa một loạt các loại tiền tệ phổ biến trên thế giới, tất cả đều được quy đổi tương đối so với đồng EUR và kèm theo dấu thời gian khi nhận được phản hồi.
{
"success": true,
"base": "eur",
"date": "2025-08-25",
"rates": {
"usd": "1.1697",
"gbp": "0.8659",
"cad": "1.6171"
},
"last_update_unix": "1769067006"
}
Như hình trên, phản hồi API cho tỷ giá hối đoái thời gian thực bao gồm một số trường quan trọng:
- success Cho biết yêu cầu có thành công hay không.
- base Trả về mã 3 chữ cái của đơn vị tiền tệ cơ sở được sử dụng cho yêu cầu này.
- date Trả về ngày thực tế mà tỷ giá hối đoái được cung cấp (định dạng YYYY-MM-DD).
- rates Chứa danh sách các loại tiền tệ được yêu cầu và tỷ giá hối đoái hiện tại của chúng.
- last_update_unix Hiển thị dấu thời gian (ở định dạng Unix) của dữ liệu mới nhất có sẵn trong hệ thống.
Các điểm cuối khả dụng
CurrencyRateAPI bao gồm một số điểm cuối API, mỗi điểm cuối cung cấp một chức năng cụ thể. Việc truy cập vào một số điểm cuối nhất định phụ thuộc vào gói đăng ký của bạn.
- Điểm cuối của danh sách các loại tiền tệ. Điểm cuối này trả về danh sách đầy đủ tất cả các loại tiền tệ được hỗ trợ.
/api/codes(Thay thế:/api/currencies) - Điểm cuối của tỷ giá mới nhất. Điểm cuối này trả về dữ liệu tỷ giá hối đoái theo thời gian thực cho tất cả các loại tiền tệ được hỗ trợ.
/api/latest - Điểm cuối của tỷ giá lịch sử. Điểm cuối này trả về dữ liệu tỷ giá hối đoái lịch sử cho một ngày cụ thể.
/api/YYYY-MM-DD(Thay thế:/api/history?date=YYYY-MM-DD). Dữ liệu lịch sử có sẵn từ ngày 4 tháng 1 năm 1999.
Phương pháp tính tỷ giá hối đoái
Để đảm bảo tính chính xác và nhất quán của dữ liệu, CurrencyRateAPI tuân thủ một phương pháp nghiêm ngặt trong việc quản lý và cung cấp tỷ giá hối đoái:
- Giá trung bình thị trường: Theo mặc định, API trả về tỷ giá
mid. Tỷ giá này thể hiện giá trị trung bình cộng giữa giá mua (bid) và giá bán (ask) trên thị trường, hoặc tỷ giá tham chiếu chính thức từ các ngân hàng trung ương. - Hoàn tất cuối ngày (EOD): Tỷ giá lịch sử do API cung cấp được chốt vào cuối ngày theo giờ UTC (Giờ phối hợp quốc tế).
- Tính toán tỷ giá chéo: Đối với các cặp tiền tệ không có sẵn trực tiếp từ các nguồn của chúng tôi, hệ thống sẽ tự động tính toán tỷ giá chéo có độ chính xác cao bằng cách sử dụng các đồng tiền toàn cầu chính làm cầu nối (điểm tham chiếu).
- Cơ chế dự phòng thông minh: Nếu dữ liệu cho ngày được yêu cầu không có sẵn (ví dụ: do thị trường đóng cửa vào cuối tuần hoặc ngày lễ), hệ thống sẽ tự động tìm kiếm tỷ giá hợp lệ gần nhất trong khoảng thời gian 8 ngày .
- Độ chính xác cao: Để tránh sai sót làm tròn trong các tính toán tài chính, tỷ giá hối đoái được lưu trữ và xử lý với tối đa 18 chữ số thập phân .
Điểm cuối
Điểm cuối ký hiệu được hỗ trợ
https://currencyrateapi.com/api/codes
Điểm cuối này trả về danh sách đầy đủ tất cả các loại tiền tệ được hỗ trợ. Bạn cũng có thể sử dụng bí danh /api/currencies.
Bạn cũng có thể xem danh sách dễ đọc về tất cả các loại tiền tệ được hỗ trợ trên trang Tiền tệ được hỗ trợ của chúng tôi.
Các loại tiền tệ cơ bản: Theo mặc định, một số điểm cuối khác (như /latest và /{YYYY-MM-DD}) trả về một tập hợp giới hạn các loại tiền tệ chính trên toàn cầu để giảm thiểu lưu lượng truy cập. Các loại tiền tệ "cơ bản" này là:
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
Phản hồi 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"
},
[...]
}
}
Đối tượng phản hồi:
| Chìa khóa | Sự miêu tả |
|---|---|
| success | Trả về true nếu yêu cầu thành công. Nếu trả về false, một đối tượng lỗi sẽ được bao gồm trong phản hồi. |
| currencies | Trả về tất cả các loại tiền tệ được hỗ trợ cùng với thông tin chi tiết về từng loại. |
| entity | Quốc gia hoặc khu vực nơi loại tiền tệ đó được sử dụng, hoặc "TIỀN ĐIỆN TỬ" đối với tài sản kỹ thuật số. |
| currency | Tên chính thức đầy đủ của đơn vị tiền tệ. |
| alphabetic_code | Mã chữ cái tiêu chuẩn gồm 3 chữ cái (ISO 4217 dành cho tiền tệ pháp định). |
| numeric_code | Mã số ISO 4217 (nếu có). |
| minor_unit | Số lượng chữ số thập phân được sử dụng cho đơn vị tiền tệ. |
| withdrawal_date | Ngày mà đồng tiền đó được rút khỏi lưu thông, nếu có. |
| title | Tiêu đề hiển thị ngắn gọn cho đơn vị tiền tệ. |
| symbol | Ký hiệu đồ họa của đơn vị tiền tệ (ví dụ: $, €, ₿). |
| is_crypto | Đánh dấu ( true ) nếu đơn vị tiền tệ là tiền điện tử. |
| data_from | Ngày sớm nhất mà dữ liệu tỷ giá hối đoái có sẵn cho loại tiền tệ này. |
Điểm cuối tỷ giá mới nhất
https://currencyrateapi.com/api/latest?
base=USD&
quote=GBP,JPY,EUR
Các tham số yêu cầu:
| Tham số | Sự miêu tả |
|---|---|
| base | [Không bắt buộc] Nhập mã tiền tệ ISO gồm 3 chữ cái để thiết lập đơn vị tiền tệ cơ sở cho việc chuyển đổi. Mặc định là EUR. |
| quote | [Không bắt buộc] Nhập danh sách mã tiền tệ được phân cách bằng dấu phẩy để giới hạn kết quả trả về chỉ đối với các loại tiền tệ cụ thể. (Cách khác: codes) |
| extended_list | [Không bắt buộc] Nếu đặt giá trị là 1, API sẽ trả về danh sách đầy đủ các loại tiền tệ khả dụng. Theo mặc định, chỉ một danh sách tối thiểu được trả về để giảm lưu lượng truy cập. |
| precision | [Không bắt buộc] Thiết lập số lượng chữ số thập phân trong tỷ lệ đầu ra (0-18). Mặc định trả về độ chính xác tối đa có sẵn mà không có ký hiệu khoa học. |
Phản hồi API:
{
"success": true,
"base": "usd",
"date": "2026-01-22",
"rates": {
"gbp": "0.74350935478637",
"jpy": "158.00358051914",
"eur": "0.8518613169776"
},
"last_update_unix": "1769067006"
}
Đối tượng phản hồi:
| Chìa khóa | Sự miêu tả |
|---|---|
| success | Trả về true nếu yêu cầu thành công. Nếu trả về false, một đối tượng lỗi sẽ được bao gồm trong phản hồi. |
| base | Trả về mã 3 chữ cái của đơn vị tiền tệ cơ sở. |
| date | Trả về ngày thực tế mà tỷ giá hối đoái được cung cấp. |
| rates | Trả về dữ liệu tỷ giá hối đoái cho các loại tiền tệ được chỉ định trong yêu cầu. |
| last_update_unix | Trả về dấu thời gian Unix cho biết thời điểm dữ liệu được cập nhật lần cuối. |
Điểm cuối của tỷ giá lịch sử
https://currencyrateapi.com/api/2025-08-25?
base=EUR&
quote=USD,GBP,CAD
Định dạng thay thế: /api/history?date=2025-08-25...
Các tham số yêu cầu:
| Tham số | Sự miêu tả |
|---|---|
| date | [Yêu cầu] Ngày trong quá khứ mà tỷ giá hối đoái được yêu cầu. Định dạng: YYYY-MM-DD. Có thể được cung cấp trong đường dẫn URL (ví dụ: /api/2025-08-25) hoặc dưới dạng tham số truy vấn (ví dụ: /api/history?date=2025-08-25). |
| base | [Không bắt buộc] Nhập mã tiền tệ gồm 3 chữ cái để thiết lập đơn vị tiền tệ cơ sở cho việc chuyển đổi. Mặc định là EUR. |
| quote | [Không bắt buộc] Nhập danh sách mã tiền tệ được phân cách bằng dấu phẩy để giới hạn kết quả trả về chỉ đối với các loại tiền tệ cụ thể. (Cách khác: codes) |
| extended_list | [Không bắt buộc] Nếu đặt giá trị là 1, API sẽ trả về danh sách đầy đủ các loại tiền tệ khả dụng. Theo mặc định, chỉ một danh sách tối thiểu được trả về để giảm lưu lượng truy cập. |
| precision | [Không bắt buộc] Thiết lập số lượng chữ số thập phân trong tỷ lệ đầu ra (0-18). Mặc định trả về độ chính xác tối đa có sẵn mà không có ký hiệu khoa học. |
Phản hồi API:
{
"success": true,
"base": "eur",
"date": "2025-08-25",
"rates": {
"usd": "1.1697",
"gbp": "0.8659",
"cad": "1.6171"
},
"last_update_unix": "1769067006"
}
Đối tượng phản hồi:
| Chìa khóa | Sự miêu tả |
|---|---|
| success | Trả về true nếu yêu cầu thành công. Nếu trả về false, một đối tượng lỗi sẽ được bao gồm trong phản hồi. |
| base | Trả về mã 3 chữ cái của đơn vị tiền tệ cơ sở. |
| date | Trả về ngày thực tế mà tỷ giá hối đoái được cung cấp. |
| rates | Trả về dữ liệu tỷ giá hối đoái của các loại tiền tệ vào ngày được chỉ định trong yêu cầu. |
| last_update_unix | Trả về dấu thời gian Unix cho biết thời điểm dữ liệu được cập nhật lần cuối. |
Mã ví dụ
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 (tìm nạp)
// 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);
});