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