Conventions
Shared rules that apply to every member-API endpoint — read this page once and the endpoint pages only need to cover what is specific to each route
Base URL and versioning
BASE_URLis per environment — provided by the best-system team- Every endpoint lives under the
/api/v1prefix (URI versioning — the current version isv1)
text
https://api.example.com/api/v1/games/providers
└──────── BASE_URL ───────┘└─ prefix ─┘└─ endpoint ─┘Response envelope
Every endpoint returns the same JSON shape, on success and on error — write your parser once and reuse it everywhere
json
{
"success": true,
"code": 0,
"message": "สำเร็จ",
"data": { "revoked": true },
"request_uuid": "9f2b7d1e-4a83-4c1f-b2ce-6d5a0e8f3c21"
}| Field | Type | Meaning |
|---|---|---|
success | boolean | true on success (paired with code = 0) · false on error |
code | number | BusinessCode — 0 = success, anything else is a business result code (one catalog across the whole system) |
message | string | Human-readable text for code — language follows x-lang (default th) |
data | object · array · null | The endpoint's payload · always null on error |
request_uuid | string | Request id — echoes X-Request-Id if sent, otherwise server-generated |
Rate limit
| Channel | Scope | Limit |
|---|---|---|
| External S2S | Whole key, all endpoints | 600 req/min |
| External S2S | /auth/* group | 120 req/min |
| Hosted | Per IP, all endpoints | 120 req/min |
| Hosted | /auth/* group per IP | 10 req/min |