API trao đổi tiền tệ dành cho nhà phát triển

CurrencyRateAPI cung cấp khả năng truy cập cực nhanh vào tỷ giá hối đoái ngoại tệ cập nhật và lịch sử được lấy trực tiếp từ các ngân hàng trung ương đáng tin cậy, bao gồm cả Ngân hàng Trung ương Châu Âu.

Được xây dựng dành cho các nhà phát triển, API RESTful của chúng tôi cung cấp phản hồi JSON rõ ràng và hỗ trợ tích hợp dễ dàng vào các trang web, ứng dụng hoặc hệ thống nội bộ chỉ trong vài phút — mà không có sự phức tạp không cần thiết.

GET https://currencyrateapi.com/api/latest?
    base=USD HTTP/1.1

{
    "success": true,
    "base": "usd",
    "date": "2026-01-18",
    "rates": {
        "GBP": 0.8820,
        "JPY": 132.36,
        "EUR": 0.8133
    },
    "last_update_unix": 1737214206
}

Sử dụng API

Sử dụng yêu cầu này để truy xuất danh sách đầy đủ các loại tiền tệ được hỗ trợ cùng với mã 3 chữ cái tương ứng.

GET https://currencyrateapi.com/api/codes HTTP/1.1

Sử dụng yêu cầu này để nhận tỷ giá hối đoái mới nhất của GBP và JPY so với USD.

GET https://currencyrateapi.com/api/latest?base=USD&codes=GBP,JPY HTTP/1.1

Sử dụng yêu cầu này để lấy tỷ giá hối đoái lịch sử của USD, EUR và CAD so với GBP vào ngày 25 tháng 5 năm 2020.

GET https://currencyrateapi.com/api/2020-05-25?base=GBP&codes=USD,EUR,CAD HTTP/1.1

Ngôn ngữ lập trình

CurrencyRateAPI có thể được tích hợp vào bất kỳ dự án nào và hỗ trợ tất cả các ngôn ngữ lập trình chính.
Được thiết kế để linh hoạt và dễ sử dụng, API của chúng tôi tích hợp một cách tự nhiên vào các ứng dụng web, di động và backend — bất kể nền tảng công nghệ bạn đang sử dụng là gì.
$baseCurrency = 'USD';
$codes = 'EUR,CAD,JPY';

$url = 'https://currencyrateapi.com/api/latest?codes=' . $codes .
       '&base=' . $baseCurrency;

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$jsonResponse = curl_exec($ch);
curl_close($ch);

$objResponse = json_decode($jsonResponse);
echo "1 " . $baseCurrency . " is " . $objResponse->rates->EUR . " Euros";
/* Outputs 1 USD is 0.8133 Euros */
base = 'USD'
codes = 'EUR,CAD,JPY'

url = (
    f'https://currencyrateapi.com/api/latest?codes={codes}'
    f'&base={base}'
)

response = requests.get(url)
data = response.json()

print(f"1 {base} is {data['rates']['EUR']} Euros")
const base = 'USD';
const codes = 'EUR,CAD,JPY';

const url = `https://currencyrateapi.com/api/latest?codes=${codes}` +
            `&base=${base}`;

(async () => {
  try {
    const res = await fetch(url);
    const data = await res.json();
    console.log(
      `1 ${base} is ${data.rates.EUR} Euros`
    );
  } catch (err) {
    console.error('Error:', err);
  }
})();
base = 'USD'
codes = 'EUR,CAD,JPY'

url = URI(
  "https://currencyrateapi.com/api/latest?codes=#{codes}" \
  "&base=#{base}"
)

response = Net::HTTP.get(url)
data = JSON.parse(response)

puts "1 #{base} is #{data['rates']['EUR']} Euros"
String base = "USD";
String codes = "EUR,CAD,JPY";
String url = "https://currencyrateapi.com/api/latest?codes=" +
             codes + "&base=" + base;

HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create(url))
    .build();

HttpResponse<String> response =
    client.send(request, HttpResponse.BodyHandlers.ofString());

JSONObject data = new JSONObject(response.body());
System.out.println(
    "1 " + base + " is " +
    data.getJSONObject("rates").getDouble("EUR") + " Euros"
);
base := "USD"
codes := "EUR,CAD,JPY"
url := "https://currencyrateapi.com/api/latest?codes=" +
       codes + "&base=" + base

resp, err := http.Get(url)
if err != nil {
    panic(err)
}
defer resp.Body.Close()

var data struct {
    Rates map[string]float64 `json:"rates"`
}

if err := json.NewDecoder(resp.Body).Decode(&data); err != nil {
    panic(err)
}

fmt.Printf(
    "1 %s is %.6f Euros\n",
    base, data.Rates["EUR"],
)
string base = "USD";
string codes = "EUR,CAD,JPY";

string url =
    $"https://currencyrateapi.com/api/latest?codes={codes}" +
    $"&base={base}";

using HttpClient client = new HttpClient();
string response = await client.GetStringAsync(url);

using JsonDocument doc = JsonDocument.Parse(response);
double eur = doc.RootElement
                .GetProperty("rates")
                .GetProperty("EUR")
                .GetDouble();

Console.WriteLine($"1 {base} is {eur} Euros");

Câu hỏi thường gặp

Các câu hỏi thường gặp nhất về CurrencyRateAPI, giới hạn sử dụng, thời gian hoạt động và cách bắt đầu sử dụng khóa API của bạn
CurrencyRateAPI là gì và nó hoạt động như thế nào?
API Tỷ giá hối đoái là một dịch vụ RESTful nhanh chóng và đáng tin cậy, cung cấp tỷ giá hối đoái chính xác cho 1131 loại tiền tệ toàn cầu ở định dạng JSON. Được thiết kế dành cho các nhà phát triển, các công ty khởi nghiệp và các doanh nghiệp đã thành lập, nó cung cấp một giao diện đơn giản, hiệu quả để truy cập dữ liệu tài chính theo thời gian thực và lịch sử — cho dù bạn đang xây dựng các công cụ nội bộ, ứng dụng hay nền tảng hướng đến khách hàng.
Ai là người duy trì và vận hành dịch vụ API tỷ giá hối đoái?
API Tỷ giá hối đoái được phát triển, bảo trì và vận hành hoàn toàn bởi đội ngũ của chúng tôi, tập trung vào việc cung cấp giao diện dữ liệu ổn định và thân thiện với nhà phát triển. Dịch vụ này được xây dựng để đáp ứng nhu cầu của các công ty khởi nghiệp, doanh nghiệp nhỏ và các ứng dụng doanh nghiệp cần truy cập đáng tin cậy vào dữ liệu tỷ giá hối đoái.
Thời gian hoạt động và tính khả dụng điển hình của API là bao nhiêu?
API tỷ giá hối đoái duy trì thời gian hoạt động ổn định ở mức 99,9%, dựa trên mức trung bình 12 tháng liên tục. Dịch vụ được giám sát 24/7 để đảm bảo tính khả dụng cao, độ tin cậy và truy cập không gián đoạn vào dữ liệu tỷ giá hối đoái.
Tôi có thể tra cứu tỷ giá hối đoái cho một ngày cụ thể không?
Có, bạn có thể yêu cầu tỷ giá hối đoái lịch sử cho bất kỳ ngày cụ thể nào bắt đầu từ ngày 04/01/1999 bằng cách sử dụng điểm cuối lịch sử. Nếu dữ liệu cho ngày được yêu cầu bị thiếu, API sẽ tự động trả về tỷ giá cho ngày gần nhất trước đó (trong vòng 8 ngày).