คู่มือการเชื่อมต่อ API สำหรับนักพัฒนา (Developer API Documentation) เพื่อดึงผลรางวัลสลากกินแบ่งรัฐบาลและหวยต่างประเทศไปแสดงผลบนเว็บไซต์หรือแอปพลิเคชันของคุณ
API ทั้งหมดสามารถเรียกใช้งานผ่าน URL หลักด้านล่างนี้ โดยรองรับการเรียกผ่าน HTTP GET และเปิดใช้งาน CORS เรียบร้อยแล้ว
ดึงข้อมูลผลการออกรางวัลในงวดปัจจุบันล่าสุด ระบบมีระบบแคช (Cache) อัตโนมัติเพื่อรองรับคนเข้าใช้งานจำนวนมากพร้อมกัน
| Parameter | Required | Description |
|---|---|---|
| category | Optional |
ประเภทหวยที่ต้องการดึงข้อมูล ค่าเริ่มต้นคือ govค่าที่รองรับ: gov (หวยรัฐบาล), laos (ลาว), hanoi (ฮานอย), gsb (ออมสิน), stock (หุ้น)
|
ดึงข้อมูลผลการออกรางวัลย้อนหลังโดยระบุวันที่ เดือน และปี
| Parameter | Required | Description |
|---|---|---|
| date | Yes | วันที่ออกรางวัล (เช่น 16) |
| month | Yes | เดือนตัวเลข (เช่น 12 หรือ 05) |
| year | Yes | ปีคริสต์ศักราช (เช่น 2024) |
| category | Optional | ประเภทหวย ค่าเริ่มต้นคือ gov |
ไม่ว่าจะดึงข้อมูลล่าสุดหรือย้อนหลัง API ของ SiamBase จะทำการรวมข้อมูล (Normalize) ให้เป็นฟอร์แมตมาตรฐานเดียวกันเสมอ
{
"status": true,
"response": {
"date": "2024-12-16",
"data": {
"first": {
"number": [{ "value": "987654" }]
},
"last2": {
"number": [{ "value": "99" }]
},
"last3f": {
"number": [{ "value": "123" }, { "value": "456" }]
},
"last3b": {
"number": [{ "value": "789" }, { "value": "012" }]
},
"near1": {
"number": [{ "value": "987653" }, { "value": "987655" }]
},
... (second, third, fourth, fifth prizes structure)
}
}
}
คุณสามารถใช้ fetch ดึงข้อมูลไปแสดงในเว็บของคุณได้ทันที ไม่ติดปัญหาเรื่อง CORS
async function checkLotto() {
try {
// เรียกใช้งาน API ดึงผลหวยรัฐบาลงวดล่าสุด
const res = await fetch('https://lotto.siambase.com/api/latest?category=gov');
const json = await res.json();
if (json.status) {
const drawDate = json.response.date;
const firstPrize = json.response.data.first.number[0].value;
const last2Prize = json.response.data.last2.number[0].value;
console.log(`ผลสลากวันที่: ${drawDate}`);
console.log(`รางวัลที่ 1: ${firstPrize}`);
console.log(`เลขท้าย 2 ตัว: ${last2Prize}`);
}
} catch (err) {
console.error('API Error:', err);
}
}