# KLine API ## 0. API使用說明 ### 0.1 加密 ```php= # md5('密碼'); # 明碼: 123 # 加密: md5('123') # 加密結果: E10ADC3949BA59ABBE56E057F20F883E ``` ### 0.2 JWT Token驗證 #### 0.2.1 驗證方式 **Step 1.** 使用 */api/Member/KLineLogin* 登入後,獲取 *token* **Step 2.** 在需要驗證的 *API* 服務進行 *HttpRequest* 時,請於 *Header* 帶入 *token* ```yaml # 欄位:Authorization # 值: Bearer {Token} # 例: Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJwYXNzd29yZCI6ImNmNzlhZ.....Td__jiThpm8 ``` ### 0.3 Request 說明 請將*Request*資料,以*json*格式,帶入*body*,進行請求 ### 0.4 Api 資訊 ```shell # 請求路徑 # {API Request URL}{API_Path} # # Example: # https://pwaapi.rryon.site/api/Member/Login ``` ### 0.5 Api 域名 #### 測試環境 - API Request URL:https://pwaapi.microhard.online - Demo Website: https://www.microhard.online #### 正式環境 - API Request URL: http://pwaapi.amaryllis.moe - Demo Website: http://www.amaryllis.moe ## 1. API說明 ## 1.1 /api/Member/KLineLogin **說明:** 登入帳號API(KLine專用) **方法:** POST **驗證:** <span class="red">無</span> **Reuqest** ```json= { "account": "ktester", //KLine會員帳號 "password": "CF79AE6ADDBA60AD018347359BD144D2", // MD5(密碼) "uidKey": "web" // [web|mobile] } ``` **Response** ```json= { "status": 1, // 1:正常 -1:其它錯誤 -2:密碼錯誤 -4:會員在線 -5:停用 -6:會員鎖定 -7:會員凍結 -8:無此帳號 -9:組別不匹配 "desc": "SUCCESS", "result": { "token": "eyJhbGciOi....", // 登入使用的Token "clubid": "0000000000", // 會員編號 "clubename": "ktester", // 會員帳號 "clubcname": "ktester", // 會員名稱 "franchiserid": null, // 未啟用 "huilvtype": "THB", // 幣別 "now_xinyong": 123.456, // 當前信用 "isTest": 0, // 是否測試帳號 [0|1] "zuBie": "K", // 組別 "isSocialLogin": false, // 是否為社群登入 [true|false] "collet": "0", // 未啟用 "payment": "0", // 未啟用 "collet_isEnabled": false, // 未啟用 "payment_isEnabled": false, // 未啟用 "expiresAt": 1686639132, // 有效期限 "mustChangePasssword": 0, // 是否3個月未改密碼 [0|1] "baccGroupLimit": { "bpMax": 5000, // 莊閒最大 "bpMin": 100, // 莊閒最小 "tieMax": 625, // 和家最大 "tieMin": 100, // 和家最小 "pairMax": 625, // 對對最大 "pairMin": 100, // 對對最小 "bigMinLimit": 100, // 大號最小 "bigMaxLimit": 3333, // 大號最大 "smallMinLimit": 100, // 小號最小 "smallMaxLimit": 3333, // 小號最大 "anyPairMinLimit": 100, // 任一對子最小 "anyPairMaxLimit": 1000, // 任一對子最大 "perfectPairMinLimit": 100, // 完美對子最小 "perfectPairMaxLimit": 200, // 完美對子最大 "gameType": "Bacc", "memberId": "Kkzdusr001", "currency": "THB", "fN1Percentage": 0, "fN2Percentage": 0, "fN3Percentage": 0, "fN4Percentage": 80, "fN5Percentage": 80, "fN1DiscountRate": 99.1, "fN2DiscountRate": 99.1, "fN3DiscountRate": 99.1, "fN4DiscountRate": 99.1, "fN5DiscountRate": 99.1, "mbDiscountRate": 99.1, // 會員退水 "fN1": null, // 未啟用 "fN2": null, // 未啟用 "fN3": null, // 未啟用 "fN4": null, // 未啟用 "fN5": null // 未啟用 } } } ``` ## 2.2 /api/Member/Logout **說明:** 登出會員帳號 **方法:** POST **驗證:** <span class="red">是</span> **Request** ```json /* 無 */ ``` **Response** ```json= { "status": 1, "desc": "SUCCESS", "result": null } ``` **備註** ```json 1.此功能會將token失效,但並不會把錢從遊戲商錢包抽會到平台主錢包 ``` ## 3.3 /api/Game/GetGameToken/W1RCGv2 **說明:** 登入遊戲 **方法:** POST **驗證:** <span class="red">是</span> **Request** ```json= { "desk": "BlueVersionLobby", // 固定帶入 BlueVersionLobby "device": "DESKTOP", // 裝置 [DESKTOP|MOBILE] "lang": "zh-tw", // 語系 [zh-cn|zh-tw|en-us|th-th|vi-vn|ko-kr|ja-jp|my-mm] "lobbyURL": "https://......" // 返回網址 } ``` **Response** ```json= { "status": 1, "desc": "SUCCESS", "result": { "urlInfo": "https://......" // 遊戲入口 } } ``` **備註** :::danger 1.此功能就是將會員主錢包轉入遊戲商 2.如果會員閒置超過30分鐘,系統會將錢抽會到平台主錢包 ::: ## 4.4 /api/UnReturnAccount/ForceUpdateMoney **說明:** 強制踼線取回額度 **方法:** POST **驗證:** <span class="red">是</span> **Request** ```json /* 無 */ ``` **Response** ```json= { "status": 1, "desc": "SUCCESS", "result": { "totalMoney": 123.456 // 玩家餘額 } } ``` **備註** :::danger 1.呼叫此功能會將遊戲錢包抽回到平台主錢包。 2.避免呼叫頻率過高,會有快取5秒的時間,快取時間內取到的額度會是0元。 ::: <style> .red { color: red; } </style>