รายชื่อค่ายเกม
ใช้งานได้GET
/api/v1/games/providersค่ายเกมทั้งหมดที่เปิดให้บริการบนไซต์ของคุณ (เฉพาะค่ายที่ agent ถือสิทธิ์และเปิดใช้งานอยู่) เรียงตาม sort_order — กรองตามประเภทเกมได้
ตอบพร้อม Cache-Control: public, max-age=60 — แคชฝั่งคุณได้ 60 วินาที ไม่ต้องเรียกซ้ำทุก page view
Headers
| ฟิลด์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| Authorization | string | — | ไม่ใช้ — endpoint นี้เป็น public ไม่ต้องแนบ token สมาชิก |
| X-Api-Key | string | ใช่ | API key ของ agent (ak_…) จากหน้า bo |
| X-Timestamp | string | ใช่ | เวลา sign เป็น unix milliseconds (คลาดเคลื่อนได้ ±300 วินาที) |
| X-Nonce | string | ใช่ | ค่าไม่ซ้ำต่อ request (UUIDv4) กัน replay |
| X-Signature | string | ใช่ | hex(HMAC-SHA256(secret, canonical)) — ดูหน้า Authentication |
| X-Player-IP | string | — | IP จริงของผู้เล่น (IPv4/IPv6) — แนะนำให้ส่ง (ใช้ใน login history) |
| X-Player-UA | string | — | User-Agent ของผู้เล่น (optional — ลง login history) |
| X-Request-Id | string | — | correlation id ของฝั่งคุณ — ระบบ echo กลับใน request_uuid (แนะนำให้ส่ง) |
| x-lang | string | — | th (default) หรือ en — ภาษาของ message |
Query parameters
| ฟิลด์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| category | string | — | กรองเฉพาะค่ายที่มีเกมประเภทนี้ (ไม่ส่ง = ทุกค่าย)SLOT | ARCADE | LIVE_CASINO | TABLE | FISHING | SPORT | LOTTERY | ESPORT | KENO | COCKFIGHT |
Response
ฟิลด์ใน data
| ฟิลด์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| data[] | array<object> | — | รายการค่ายเกม เรียงตาม sort_order |
| └ id | string (uuid) | — | id ค่ายเกม — ใช้กรองรายการเกมผ่าน ?provider_id= |
| └ code | string | — | รหัสค่าย เช่น PGSOFT |
| └ name | string | — | ชื่อค่ายสำหรับแสดงผล |
| └ logo_url | string | null | — | URL โลโก้ค่าย |
| └ categories | string[] | — | ประเภทเกมที่ค่ายนี้ให้บริการSLOT | ARCADE | LIVE_CASINO | TABLE | FISHING | SPORT | LOTTERY | ESPORT | KENO | COCKFIGHT |
| └ game_count | number | — | จำนวนเกมของค่าย |
| └ launch_game_id | string | null | — | ค่ายแบบเกมเดียว (game_count = 1 เช่น กีฬา/คาสิโนสด) → id เกมไว้เปิดจากการ์ดค่ายได้ทันที ไม่ต้องเรียกรายการเกม — null = ค่ายมีหน้ารายการเกม |
| └ maintenance_until | string | null | — | เวลาที่ปิดปรับปรุงถึง (หาก null = ให้บริการปกติ) |
| └ sort_order | number | — | ลำดับแสดงผลที่แนะนำ |
ตัวอย่าง response
{
"success": true,
"code": 0,
"message": "สำเร็จ",
"data": [
{
"id": "b7a3e6c2-1f4d-4e8a-9c5b-2d7f8a1e3b6c",
"code": "PGSOFT",
"name": "PG Soft",
"logo_url": "https://cdn.example.com/providers/pgsoft.png",
"categories": ["SLOT"],
"game_count": 138,
"launch_game_id": null,
"maintenance_until": null,
"sort_order": 1
},
{
"id": "5d9c1f8a-2e6b-4a3d-b7c9-8f0a1d2e3c4b",
"code": "SBOBET",
"name": "SBOBET",
"logo_url": "https://cdn.example.com/providers/sbobet.png",
"categories": ["SPORT"],
"game_count": 1,
"launch_game_id": "9a4b7c1d-3e5f-4a6b-8c9d-0e1f2a3b4c5d",
"maintenance_until": null,
"sort_order": 8
}
],
"request_uuid": "9f2b7d1e-4a83-4c1f-b2ce-6d5a0e8f3c21"
}Error codes ที่พบได้
| code | ชื่อ | HTTP | ข้อความ |
|---|---|---|---|
| 4001 | VALIDATION_ERROR | 400 | ข้อมูลไม่ถูกต้องค่า category ไม่อยู่ในชุดประเภทเกมที่รองรับ |
| 4002 | BAD_REQUEST | 400 | คำขอไม่ถูกต้องระบุ agent ของ request ไม่ได้ (ไม่รู้จักโดเมน/credential) |