CurrencyRateAPI
เครื่องมือเปิดใช้งานด่วน
ต้องการทดสอบ API โดยไม่ต้องอ่านเอกสารฉบับเต็มใช่ไหม? ไปที่แผงควบคุม คุณจะพบเครื่องมือเปิดใช้งานด่วน ซึ่งเป็นวิธีง่ายๆ ในการทดลองใช้เอนด์พอยต์ทั้งหมดที่มีให้ใช้งานด้วยการคลิกเพียงครั้งเดียว
คลิกปุ่มด้านล่างเพื่อลงทะเบียนฟรีและเริ่มใช้งานเครื่องมือ Quick Launch Tool
เริ่มต้นใช้งาน
คำศัพท์และแนวคิดสำคัญที่คุณจำเป็นต้องรู้เพื่อเริ่มต้นใช้งาน Currency Rate API:
| คำนิยาม | คำอธิบาย |
|---|---|
| เครื่องหมาย | รหัสสกุลเงินสามตัวอักษร (เช่น USD, EUR) เรารองรับรหัสมาตรฐาน ISO 4217 สำหรับสกุลเงินทั่วไป และรหัสต่างๆ สำหรับ สกุลเงินดิจิทัล |
| สกุลเงินหลัก | สกุลเงินที่ใช้เป็นฐานในการแปลง ตัวอย่างเช่น ถ้า 1 ดอลลาร์สหรัฐ = X ยูโร สกุลเงินดอลลาร์สหรัฐจะเป็นสกุลเงินฐาน โดยค่าเริ่มต้น สกุลเงินฐานคือยูโร |
| สกุลเงินเป้าหมาย | สกุลเงินที่ใช้แปลงสกุลเงินฐาน โดยใช้ตัวอย่างเดิม สกุลเงินยูโรคือสกุลเงินเป้าหมาย |
| สกุลเงินดิจิทัล | นอกเหนือจากสกุลเงินทั่วไปแล้ว API ของเรายังประมวลผลและให้ข้อมูลอัตราแลกเปลี่ยนสำหรับสกุลเงินดิจิทัลยอดนิยมหลากหลายประเภทอีกด้วย |
| URL พื้นฐาน | URL หลักที่ใช้สำหรับเอนด์พอยต์ API ทั้งหมด คำขอทั้งหมดจะถูกส่งไปยังพาธพื้นฐานนี้ |
การตอบสนอง 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 endpoint หลายตัว โดยแต่ละตัวมีฟังก์ชันการทำงานเฉพาะด้าน ความพร้อมใช้งานของ endpoint บางตัวขึ้นอยู่กับแผนการสมัครใช้งานของคุณ
- จุดสิ้นสุดของรายการสกุลเงิน เอนด์พอยต์นี้จะส่งคืนรายการสกุลเงินทั้งหมดที่รองรับ
/api/codes(ทางเลือก:/api/currencies) - จุดสิ้นสุดของอัตราล่าสุด เอนด์พอยต์นี้ส่งคืนข้อมูลอัตราแลกเปลี่ยนแบบเรียลไทม์สำหรับสกุลเงินที่รองรับทั้งหมด
/api/latest - จุดสิ้นสุดของอัตราในอดีต เอนด์พอยต์นี้ส่งคืนข้อมูลอัตราแลกเปลี่ยนย้อนหลังสำหรับวันที่ที่ระบุ
/api/YYYY-MM-DD(ทางเลือก:/api/history?date=YYYY-MM-DD). ข้อมูลทางประวัติศาสตร์มีให้ตั้งแต่ 4 มกราคม 1999 เป็นต้นไป
วิธีการคำนวณอัตราแลกเปลี่ยน
เพื่อให้มั่นใจในความถูกต้องและความสม่ำเสมอของข้อมูล 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 | ประเทศหรือภูมิภาคที่ใช้สกุลเงินนั้น หรือ "สกุลเงินดิจิทัล" (CRYPTOCURRENCY) สำหรับสินทรัพย์ดิจิทัล |
| 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 3 ตัวอักษรเพื่อกำหนดสกุลเงินหลักสำหรับการแปลง ค่าเริ่มต้นคือ EUR |
| 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 | [ที่จำเป็น] ระบุช่วงเวลาในอดีตที่ต้องการค้นหาอัตราแลกเปลี่ยน รูปแบบ: ปี ค.ศ.-เดือน-วัน สามารถระบุได้ในเส้นทาง URL (เช่น /api/2025-08-25) หรือเป็นพารามิเตอร์ในคำค้นหา (เช่น /api/history?date=2025-08-25) |
| base | [ไม่จำเป็น] ป้อนรหัสสกุลเงิน 3 ตัวอักษรเพื่อกำหนดสกุลเงินหลักสำหรับการแปลง ค่าเริ่มต้นคือ EUR |
| 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 ที่ระบุว่าข้อมูลที่ส่งคืนได้รับการอัปเดตครั้งล่าสุดเมื่อใด |
ตัวอย่างโค้ด
พีพีพี (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 (ดึงข้อมูล)
// 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);
});