สองคำตอบตรงไปตรงมา เริ่มจากคำตอบสั้นก่อน ถ้าแค่อยากลอง API ไม่ต้องใช้ key เลย: /v1/latest, /v1/convert และประวัติรายวัน 30 วันล่าสุดตอบคำขอแบบไม่ระบุตัวตนได้ที่ 10 คำขอต่อนาที และ 100 ครั้งต่อชั่วโมงต่อ IP ถ้าเป็นอะไรที่รันตามตารางเวลา หรือส่งต่อให้คนอื่นใช้ ให้สมัครที่ exchangerate.dev/signup ยืนยันอีเมล แล้วคัดลอก key ที่ขึ้นต้นด้วย exr_live_ จากแดชบอร์ด แพ็กเกจฟรี: 5,000 ครั้งต่อเดือน, 10 คำขอต่อนาที, ประวัติรายวัน 30 วันล่าสุด, ไม่ต้องใช้บัตรเครดิต
- ไม่ใช้ key: อัตราล่าสุด การแปลง ประวัติรายวัน 30 วันล่าสุด 10 คำขอ/นาที, 100/ชั่วโมงต่อ IP
- สร้าง key ฟรีได้ที่ /signup, แค่ยืนยันอีเมล ไม่ต้องใช้บัตรเครดิต, รูปแบบจะเป็น
exr_live_... - แพ็กเกจฟรี: 5,000 ครั้งต่อเดือน, 10 คำขอต่อนาที, ประวัติรายวัน 30 วันล่าสุด, มีอัตราแบบเรียลไทม์ที่ได้รับช้า 15 นาที
- ส่ง key ผ่านหัวข้อ
Authorization: Bearer exr_live_...หรือใช้X-API-Keyเมื่อ connector ตั้งค่า header Authorization ไม่ได้ - ห้ามใส่ key ไว้ใน URL หรือใน browser bundle ที่เปิดเผยต่อสาธารณะเด็ดขาด, ใส่ไว้ใน header เท่านั้น และให้ front-end เรียกผ่าน proxy ฝั่งเซิร์ฟเวอร์
ทางที่ไม่ต้องมี key: ลอง API ก่อน
ก่อนจะสร้างอะไรเลย ลองเรียก API แล้วดู response จริงก่อน วิธีนี้ใช้ได้จาก terminal ไหนก็ได้ ไม่ต้องสมัครสมาชิก:
# No key, no signup, works at 10 req/min, 100 req/hour per IPcurl -s https://api.exchangerate.dev/v1/latest/USD# A single pair, convertedcurl -s https://api.exchangerate.dev/v1/convert/USD/JPY/250ทุก response จะมี source กับ market_session มาด้วย ทำให้คุณเห็นก่อนตัดสินใจอะไรได้ว่าอัตรานี้เป็นอัตราตลาดแบบเรียลไทม์ หรือเป็นค่า fix รายวันของ ECB คุณยังลองเรียกคำขอเดียวกันในเบราว์เซอร์แล้วอ่าน JSON ตรงนั้นได้ด้วย
สคริปต์ใช้ครั้งเดียว แบบฝึกหัดในห้องเรียน หรือเช็กอัตราด้วยมือ อยู่ในขอบเขต 100 คำขอต่อชั่วโมงได้สบาย ถ้านี่คือการใช้งานทั้งหมดของคุณ ก็จบแค่นี้พอ, ไม่ต้องมี key ไม่มีอะไรต้องเก็บหรือหมุนเวียน
ขอ key แบบฟรี
- เปิด exchangerate.dev/signup แล้วสมัครด้วยอีเมล ไม่มีขั้นตอนใส่บัตรเครดิต
- ยืนยันอีเมล แดชบอร์ดของคุณจะเปิดขึ้นมาพร้อม API key ที่จัดเตรียมไว้ให้แล้ว
- คัดลอก key, จะขึ้นต้นด้วย
exr_live_prefix นี้คือสิ่งที่ใช้จำมันได้ทีหลังตอนอยู่ใน config
แพ็กเกจฟรีคือ 5,000 ครั้งต่อเดือนที่ 10 คำขอต่อนาที พร้อมประวัติรายวัน 30 วันล่าสุด และอัตราแบบเรียลไทม์ที่ได้รับช้า 15 นาที แพ็กเกจเสียเงินได้รับฟีดเดียวกันแบบสด ส่วนแพ็กเกจฟรีและการเรียกโดยไม่ใช้คีย์ได้รับช้า 15 นาที โดยมีโควตาต่างกัน
ใช้ key: ใส่ header เท่านั้น ห้ามใส่ใน URL
ส่ง key ผ่าน header รูปแบบหลักคือ Authorization: Bearer ส่วน X-API-Key มีไว้สำหรับ connector ที่ตั้งค่า header Authorization ไม่ได้ (เครื่องมือ BI และแพลตฟอร์ม no-code บางตัว):
# Primary formcurl -s https://api.exchangerate.dev/v1/latest/USD \ -H "Authorization: Bearer exr_live_your_key_here"# Fallback for connectors without Authorization supportcurl -s https://api.exchangerate.dev/v1/latest/USD \ -H "X-API-Key: exr_live_your_key_here"อย่าใส่ key ไว้ใน query string อย่าใส่ไว้ใน JavaScript bundle ฝั่ง client และอย่า commit เข้า version control ในโค้ดแอปพลิเคชัน ให้อ่านมันจาก environment variable ส่วน front-end ที่เปิดเผยต่อสาธารณะ ให้ส่งคำขอผ่าน proxy เล็ก ๆ ฝั่งเซิร์ฟเวอร์ เพื่อไม่ให้ key ไปถึงเบราว์เซอร์เลย
จริง ๆ แล้วคุณต้องใช้ทางไหน
| สถานการณ์ | ไม่ระบุตัวตน | Key แบบฟรี |
|---|---|---|
| ลอง API เช็กเป็นครั้งคราว | ได้, 10 คำขอ/นาทีต่อ IP | ใช้ได้เหมือนกัน แต่ไม่จำเป็น |
| cron job หรือรีเฟรชตามตารางเวลา | ไม่มั่นคง, แชร์ขีดจำกัดต่อ IP ร่วมกับคนอื่น | ได้; โควตา 5,000/เดือนเป็นของคุณเอง |
| ชีตหรือ workbook ที่คนอื่นรีเฟรช | ไม่ได้, ใช้ IP และขีดจำกัดของเขา | ได้, โควตาติดไปกับ key |
| สินค้าที่คุณขายหรือแจกจ่าย | ได้ โดยมีลิงก์เครดิตที่เห็นชัด | ได้ โดยมีลิงก์เครดิตที่เห็นชัด |
ไม่ว่าจะไม่ระบุตัวตนหรือใส่ key ก็ใช้ฟีดเดียวกัน: ข้อมูลตลาดเพื่ออ้างอิงสำหรับโมเดล การวิเคราะห์ และการแสดงผล, ไม่ใช่ราคาที่ซื้อขายได้จริง ทุก response จะย้ำเรื่องนี้ไว้ในฟิลด์ notice