HTTP API  ภาพรวม  API HTTP ให้บริการแชทโดยการสื่อสารกับเซิร์ฟเวอร์ API ผ่าน HTTP ประกอบด้วย Channel API  และ User API  เป็นหลัก
 คุณสมบัติหลักของ API ช่องทางและ API ผู้ใช้มีดังนี้
  API ช่อง API ดึงรายการช่องทั้งหมด  API ดึงช่อง  API ดึงผู้เข้าร่วมช่อง  API สร้างช่อง  API ลบช่อง  API เข้าช่อง  API ออกจากช่อง  API ส่งข้อความประกาศ      API ผู้ใช้ API ออกโทเค็นผู้ใช้  API ดึงช่องที่ผู้ใช้เข้าร่วม  API ดึงรายการบล็อกผู้ใช้  API บล็อกผู้ใช้  API ยกเลิกบล็อกผู้ใช้        ข้อมูลพื้นฐาน  นี่คือข้อมูลพื้นฐานที่คุณจำเป็นต้องรู้เมื่อใช้ HTTP API
 การเตรียมการ  ในการใช้ HTTP API คุณต้องเตรียมรายการต่อไปนี้
  Hive รหัสการรับรอง: โทเค็นการตรวจสอบสิทธิ์สำหรับการเรียก API สามารถพบได้ใน Hive Console > App Center > Project Management > Game Details > Basic Information       ดัชนีเกม: ดัชนีของเกมที่สร้างขึ้นใน Hive Console > App Center > Project Management      ประเภทช่องทาง  ประเภทช่องทางที่ใช้เมื่อส่ง API HTTP มีดังนี้ 
    ประเภท  คำอธิบาย        PUBLICช่องที่ใครก็สามารถเข้าร่วมได้     PRIVATEช่องที่สามารถเข้าร่วมได้โดยการใส่รหัสผ่าน     GROUPช่องที่ผู้ใช้เฉพาะกลุ่มเท่านั้นที่สามารถเข้าร่วมได้ (เช่น ช่องกิลด์)      
 URL การร้องขอ     เซิร์ฟเวอร์  URL        LIVE  api-chat.withhive.com   SANDBOX  sandbox-api-chat.withhive.com    
 ส่วนหัวทั่วไป     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        Authorization  โทเค็นการตรวจสอบสิทธิ์สำหรับการเรียก API (Bearer)  string  ใช่     Content-Type  ประเภทของข้อมูลคำขอ (application/json)  string  ใช่      
 รหัสการตอบกลับ      รหัสสถานะ HTTP  รหัส  ข้อความ  คำอธิบาย        200  0  สำเร็จ.  สำเร็จ     400  100  คำขอไม่ถูกต้อง.  คำขอไม่ถูกต้อง     401  101  โทเค็นไม่ถูกต้อง.  โทเค็นไม่ถูกต้อง     403  102  ห้ามเข้าถึง.  ห้ามเข้าถึง     404  103  ไม่พบ.  ไม่พบ     405  104  วิธีการไม่อนุญาต.  วิธีการไม่อนุญาต     500  105  ข้อผิดพลาดของเซิร์ฟเวอร์ภายใน.  ข้อผิดพลาดของเซิร์ฟเวอร์ภายใน      
  รหัสข้อผิดพลาดที่ละเอียด (400, 403)        รหัสสถานะ HTTP  รหัส  ข้อความ  คำอธิบาย        400  200  รหัสช่องซ้ำกัน.  รหัสช่องซ้ำกัน     201  ไม่พบช่องหรือถูกลบ.  ไม่พบช่องหรือถูกลบ     202  ช่องเต็ม.  ช่องเต็ม ไม่สามารถเข้าร่วมได้เนื่องจากเกินขีดจำกัดผู้เข้าร่วม     203  รหัสผ่านช่องไม่ถูกต้อง.  รหัสผ่านช่องไม่ถูกต้อง     204  ขนาดข้อความเกินขีดจำกัด. ขนาดสูงสุดคือ 200.  ขนาดข้อความเกินขีดจำกัด (สูงสุด 200 ตัวอักษร)     300  ผู้ใช้ไม่ได้อยู่ในเซสชัน.  ผู้ใช้ไม่ได้อยู่ในเซสชัน (ไม่ได้เชื่อมต่อกับเซิร์ฟเวอร์ Socket)     301  ผู้ใช้ไม่ได้อยู่ในช่อง.  ผู้ใช้ไม่ได้อยู่ในช่อง     302  ผู้ใช้ได้อยู่ในช่องแล้ว.  ผู้ใช้ได้อยู่ในช่องแล้ว     303  ผู้ใช้ถูกบล็อกแล้ว.  ผู้ใช้ถูกบล็อกแล้ว     304  รายชื่อบล็อกเต็ม. ขนาดสูงสุดคือ 100.  รายชื่อบล็อกเต็ม (สูงสุด 100 คน)     305  ผู้ใช้ไม่ได้อยู่ในรายชื่อบล็อก.  ผู้ใช้ไม่ได้อยู่ในรายชื่อบล็อก     306  ผู้ใช้ถูกบล็อก.  ผู้ใช้ถูกบล็อก     307  จำนวนช่องสูงสุดที่ผู้ใช้สามารถเข้าร่วมได้คือ 10.  เกินจำนวนช่องที่ผู้ใช้สามารถเข้าร่วมได้ (จำกัดที่ 10)     403  308  ผู้ใช้ไม่ใช่เจ้าของช่อง.  ผู้ใช้ไม่ใช่เจ้าของช่อง      
 ฟีเจอร์ API ช่อง  นี่อธิบายคำขอและการตอบสนองของ API สำหรับแต่ละฟังก์ชันของ API ช่องที่ใช้ในบริการแชท พร้อมกับตัวอย่างโค้ด
 ดึงรายการช่องทั้งหมด  กำลังดึงรายการช่องที่สร้างขึ้นในปัจจุบัน
 URL ที่ร้องขอ     เซิร์ฟเวอร์  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/channels   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/channels   HTTP METHOD  GET    
 พารามิเตอร์เส้นทาง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        gameIndex  Hive ดัชนีเกม  จำนวนเต็ม  ใช่      
 พารามิเตอร์หัวเรื่อง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น            
 พารามิเตอร์การค้นหา     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        type  ประเภทช่อง (PRIVATE, PUBLIC, GROUP)  string  N     channelId  ดึงช่องที่เริ่มต้นด้วย ID ช่องเฉพาะ  string  N     channelName  ดึงช่องที่มีชื่อช่องเฉพาะ  string  N     sort  เกณฑ์การจัดเรียง (channelId, channelName, regTime) regTime)  string  N     order  วิธีการจัดเรียง (ASC, DESC)DESC)  string  N     size  จำนวนช่องที่ดึงต่อหน้า  integer  N     page  หมายเลขหน้าที่จะดึง  integer  N      
 เนื้อหาการตอบกลับ     ชื่อฟิลด์  คำอธิบาย  ประเภท        code  รหัสการตอบกลับ  จำนวนเต็ม     message  ข้อความผลลัพธ์  สตริง     data  ข้อมูลการตอบกลับ  อ็อบเจ็กต์      
 เนื้อหาการตอบกลับ > ข้อมูล     ชื่อฟิลด์  คำอธิบาย  ประเภท        content  รายการช่อง  array     page  ข้อมูลหน้า  object      
 เนื้อหาของร่างตอบกลับ > ข้อมูล > เนื้อหา     ชื่อฟิลด์  คำอธิบาย  ประเภท        channelId  รหัสช่อง  string     type  ประเภทช่อง (PRIVATE, PUBLIC, GROUP)  string     gameIndex  Hive ดัชนีเกม  integer     owner  Hive รหัสผู้เล่นของเจ้าของช่อง  string     channelName  ชื่อช่อง  string     memberCount  จำนวนผู้เข้าร่วมช่องปัจจุบัน  integer     maxMemberCount  จำนวนผู้เข้าร่วมช่องสูงสุด  integer     regTime  วันที่และเวลาการสร้างช่อง (ตาม UTC+0, รูปแบบ yyyy-MM-dd'T'HH:mm:ss.SSSZ)  string     regTimeMillis  วันที่และเวลาการสร้างช่อง (UnixTimestamp Millisecond)  integer      
 เนื้อหาการตอบกลับ > ข้อมูล > หน้า     ชื่อฟิลด์  คำอธิบาย  ประเภท        size  จำนวนรายการต่อหน้า  จำนวนเต็ม     currentPage  หมายเลขหน้าปัจจุบัน  จำนวนเต็ม     totalElements  จำนวนรายการทั้งหมด  จำนวนเต็ม     totalPages  จำนวนหน้าทั้งหมด  จำนวนเต็ม      
 ตัวอย่างคำขอ    --request  GET  'https://api-chat.withhive.com/api/v1/games/1/channels?type=PUBLIC&sort=regTime&order=DESC&size=10&page=1'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNzAyNDU4MTkzLCJqdGkiOiIxMzY2NDk4MjcxIn0.VSwvsTE-tS0sL_e9p9gNvHRkMCbsycSO4ObE4J2ysjs' 
ตัวอย่างการตอบกลับ  { 
   "code" :   0 , 
   "message" :   "Success." , 
   "data" :   { 
     "content" :   [ 
       { 
         "channelId" :   "open:12345" , 
         "type" :   "PUBLIC" , 
         "gameIndex" :   1 , 
         "owner" :   "1000" , 
         "channelName" :   "오픈 채팅방" , 
         "memberCount" :   2 , 
         "maxMemberCount" :   50 , 
         "regTime" :   "2024-12-30T15:01:01.004Z" , 
         "regTimeMillis" :   1731306364351 
       }, 
       /// ... 채널 정보 
     ], 
     "page" :   { 
       "size" :   10 , 
       "currentPage" :   1 , 
       "totalElements" :   100 , 
       "totalPages" :   10 
     } 
   } 
} 
การค้นหาช่อง  กำลังดึงข้อมูลรายละเอียดสำหรับช่องเฉพาะ
 URL ที่ร้องขอ     เซิร์ฟเวอร์  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}   HTTP METHOD  GET    
 พารามิเตอร์เส้นทาง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        gameIndex  Hive ดัชนีเกม  จำนวนเต็ม  ใช่     channelId  รหัสช่องในการค้นหา  สตริง  ใช่      
 พารามิเตอร์หัวข้อ     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        Authorization  โทเค็นการตรวจสอบสิทธิ์สำหรับการเรียก API (Bearer)  string  ใช่      
 เนื้อหาการตอบกลับ     ชื่อฟิลด์  คำอธิบาย  ประเภท        code  รหัสผลลัพธ์การตอบกลับ  จำนวนเต็ม     message  ข้อความผลลัพธ์  สตริง     data  ข้อมูลการตอบกลับ  อ็อบเจ็กต์      
 เนื้อหาการตอบกลับ > ข้อมูล     ชื่อฟิลด์  คำอธิบาย  ประเภท        info  ข้อมูลช่อง  วัตถุ     members  รายชื่อผู้เข้าร่วม  อาเรย์      
 เนื้อหาการตอบกลับ > ข้อมูล > ข้อมูล     ชื่อฟิลด์  คำอธิบาย  ประเภท        channelId  รหัสช่อง  string     type  ประเภทช่อง (PRIVATE, PUBLIC, GROUP)  string     gameIndex  Hive ดัชนีเกม  integer     owner  เจ้าของช่อง  string     channelName  ชื่อช่อง  string     memberCount  จำนวนผู้เข้าร่วมช่องปัจจุบัน  integer     maxMemberCount  จำนวนผู้เข้าร่วมช่องสูงสุด  integer     regTime  วันที่และเวลาที่สร้างช่อง (ตาม UTC+0, รูปแบบ yyyy-MM-dd'T'HH:mm:ss.SSSZ)  string     regTimeMillis  วันที่และเวลาที่สร้างช่อง (UnixTimestamp Millisecond)  integer      
 เนื้อหาการตอบกลับ > ข้อมูล > สมาชิก     ชื่อฟิลด์  คำอธิบาย  ประเภท        playerId  Hive รหัสผู้เล่น  long     extraData  ข้อมูลเพิ่มเติม (UTF-8 based)  string     connectedTime  วันที่และเวลาการเชื่อมต่อ (UTC+0 based, รูปแบบ yyyy-MM-dd'T'HH:mm:ss.SSSZ)  string     connectedTimeMillis  เวลาการเชื่อมต่อ (UnixTimestamp Millisecond)  integer      
 ตัวอย่างคำขอ    --request  GET  'https://api-chat.withhive.com/api/v1/games/1/channels/open:12345'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNzAyNDU4MTkzLCJqdGkiOiIxMzY2NDk4MjcxIn0.VSwvsTE-tS0sL_e9p9gNvHRkMCbsycSO4ObE4J2ysjs' 
ตัวอย่างการตอบกลับ  { 
   "code" :   0 , 
   "message" :   "Success." , 
   "data" :   { 
     "info" :   { 
       "channelId" :   "open:12345" , 
       "type" :   "PUBLIC" , 
       "gameIndex" :   1 , 
       "owner" :   "SYSTEM" , 
       "channelName" :   "오픈채팅방" , 
       "memberCount" :   2 , 
       "maxMemberCount" :   50 , 
       "regTime" :   "2024-12-30T15:01:01.004Z" , 
       "regTimeMillis" :   1731306364351 
     }, 
     "members" :   [ 
       { 
         "playerId" :   1 , 
         "extraData" :   null , 
         "connectedTime" :   "2024-11-25T06:22:06.604Z" , 
         "connectedTimeMillis" :   1739328218507 
       }, 
       { 
         "playerId" :   2 , 
         "extraData" :   null , 
         "connectedTime" :   "2024-11-25T06:22:16.233Z" , 
         "connectedTimeMillis" :   1731306364351 
       } 
     ] 
   } 
} 
การสอบถามสมาชิกช่อง  กำลังดึงข้อมูลผู้เข้าร่วมสำหรับช่องเฉพาะ
 URL ที่ร้องขอ     เซิร์ฟเวอร์  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}/members   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}/members   HTTP METHOD  GET    
 พารามิเตอร์เส้นทาง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        gameIndex  Hive ดัชนีเกม  จำนวนเต็ม  ใช่     channelId  รหัสช่องที่ต้องการค้นหา  สตริง  ใช่      
 พารามิเตอร์หัวข้อ     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น            
 เนื้อหาการตอบกลับ     ชื่อฟิลด์  คำอธิบาย  ประเภท        code  รหัสผลลัพธ์การตอบกลับ  จำนวนเต็ม     message  ข้อความผลลัพธ์  สตริง     data  ข้อมูลการตอบกลับ  อ็อบเจ็กต์      
 เนื้อหาการตอบสนอง > ข้อมูล     ชื่อฟิลด์  คำอธิบาย  ประเภท        members  รายชื่อผู้เข้าร่วมช่อง  array      
 เนื้อหาการตอบกลับ > ข้อมูล > สมาชิก     ชื่อฟิลด์  คำอธิบาย  ประเภท        playerId  Hive รหัสผู้เล่น  long     extraData  ข้อมูลเพิ่มเติม (UTF-8 based)  string     connectedTime  วันที่และเวลาการเชื่อมต่อ (UTC+0 based, รูปแบบ yyyy-MM-dd'T'HH:mm:ss.SSSZ)  string     connectedTimeMillis  เวลาการเชื่อมต่อ (UnixTimestamp Millisecond)  integer      
 ตัวอย่างคำขอ    --request  GET  'https://api-chat.withhive.com/api/v1/games/1/channels/open:12345/members'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNzAyNDU4MTkzLCJqdGkiOiIxMzY2NDk4MjcxIn0.VSwvsTE-tS0sL_e9p9gNvHRkMCbsycSO4ObE4J2ysjs' 
ตัวอย่างการตอบกลับ  { 
   "code" :   0 , 
   "message" :   "Success." , 
   "data" :   { 
     "members" :   [ 
       { 
         "playerId" :   1 , 
         "extraData" :   null , 
         "connectedTime" :   "2024-11-25T06:22:06.604Z" , 
         "connectedTimeMillis" :   1739328218507 
       }, 
       { 
         "playerId" :   2 , 
         "extraData" :   null , 
         "connectedTime" :   "2024-11-25T06:22:16.233Z" , 
         "connectedTimeMillis" :   1731306364351 
       } 
     ] 
   } 
} 
สร้างช่อง  กำลังสร้างช่องการสนทนาใหม่
 หาก playerId มีอยู่ ผู้ใช้จะได้รับอนุญาตให้เข้าช่อง หากไม่มี playerId เจ้าของจะเป็น SYSTEM
 URL ที่ร้องขอ     เซิร์ฟเวอร์  URL        สด  https://api-chat.withhive.com/api/v1/games/{gameIndex}/channel   แซนด์บ็อกซ์  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/channel   วิธีการ HTTP  POST   ประเภทเนื้อหา  application/json    
 พารามิเตอร์เส้นทาง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        gameIndex  Hive ดัชนีเกม  จำนวนเต็ม  ใช่      
 พารามิเตอร์หัวเรื่อง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        Authorization  โทเค็นการตรวจสอบสิทธิ์สำหรับการเรียก API (Bearer)  string  ใช่     Content-Type  ประเภทของข้อมูลคำขอ (application/json)  string  ใช่      
 เนื้อหาคำขอ  นี่คือข้อมูลการส่งที่จำเป็นเมื่อขอสร้างช่องทาง
    ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        channelId  รหัสช่อง-, ., _, ~, :) ที่อนุญาต, สูงสุด 100 ตัวอักษร)  string  ใช่     playerId  รหัสผู้เล่นของผู้สร้างช่อง Hive  long  ไม่     password  รหัสผ่าน (จำเป็นสำหรับช่อง PRIVATE)  string  ไม่     channelName  ชื่อช่อง  string  ใช่     maxMemberCount  จำนวนผู้เข้าร่วมช่องสูงสุด  integer  ใช่     type  ประเภทช่อง (PRIVATE, PUBLIC, GROUP)  string  ใช่      
 เนื้อหาการตอบกลับ     ชื่อฟิลด์  คำอธิบาย  ประเภท        code  รหัสผลลัพธ์  จำนวนเต็ม     message  ข้อความผลลัพธ์  สตริง      
 ตัวอย่างคำขอ    --request  POST  'https://sandbox-api-chat.withhive.com/api/v1/games/1/channel'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNzAyNDU4MTkzLCJqdGkiOiIxMzY2NDk4MjcxIn0.VSwvsTE-tS0sL_e9p9gNvHRkMCbsycSO4ObE4J2ysjs'   \ 
  'Content-Type: application/json'   \ 
'{ 
    "channelId": "open:12345", 
    "playerId": 1000, 
    "channelName": "오픈 채팅방", 
    "maxMemberCount": 100, 
    "type": "PUBLIC" 
}' 
ตัวอย่างการตอบกลับ  { 
     "code" :   0 , 
     "message" :   "Success." 
} 
ลบช่อง  กำลังลบช่องทางเฉพาะ
 URL การร้องขอ     เซิร์ฟเวอร์  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}   HTTP Method  DELETE    
 พารามิเตอร์เส้นทาง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        gameIndex  Hive ดัชนีเกม  จำนวนเต็ม  ใช่     channelId  รหัสช่องที่ต้องการลบ  สตริง  ใช่      
 พารามิเตอร์หัวข้อ     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น            
 เนื้อหาการตอบกลับ     ชื่อฟิลด์  คำอธิบาย  ประเภท        code  รหัสการตอบกลับ  จำนวนเต็ม     message  ข้อความผลลัพธ์  สตริง      
 ตัวอย่างคำขอ    --request  DELETE  'https://api-chat.withhive.com/api/v1/games/1/channels/open:12345'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNzAyNDU4MTkzLCJqdGkiOiIxMzY2NDk4MjcxIn0.VSwvsTE-tS0sL_e9p9gNvHRkMCbsycSO4ObE4J2ysjs' 
ตัวอย่างการตอบกลับ  { 
     "code" :   0 , 
     "message" :   "Success." 
} 
เข้าสู่ช่อง  การเพิ่มผู้ใช้เข้าสู่ช่องที่มีอยู่
 จำนวนช่องสูงสุดที่ผู้ใช้สามารถเข้าร่วมได้คือ 10 ช่อง
 URL การร้องขอ     เซิร์ฟเวอร์  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}/enter   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}/enter   HTTP METHOD  POST   CONTENT-TYPE  application/json    
 พารามิเตอร์เส้นทาง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        gameIndex  Hive ดัชนีเกม  จำนวนเต็ม  ใช่     channelId  รหัสช่อง  สตริง  ใช่      
 พารามิเตอร์หัวเรื่อง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        Authorization  โทเค็นการตรวจสอบสิทธิ์สำหรับการเรียก API (Bearer)  string  Y     Content-Type  ประเภทของข้อมูลคำขอ (application/json)  string  Y      
 เนื้อหาคำขอ  นี่คือข้อมูลการส่งที่จำเป็นเมื่อขอเข้าช่องทาง
    ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        playerId  รหัสผู้เล่นของผู้ใช้ที่จะเข้าร่วม Hive  long  ใช่     password  รหัสผ่าน (จำเป็นสำหรับช่อง PRIVATE)  string  ไม่      
 เนื้อหาการตอบกลับ     ชื่อฟิลด์  คำอธิบาย  ประเภท        code  รหัสผลลัพธ์การตอบกลับ  จำนวนเต็ม     message  ข้อความผลลัพธ์  สตริง      
 ตัวอย่างคำขอ    --request  POST  'https://api-chat.withhive.com/api/v1/games/1/channels/guild:12345/enter'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNzAyNDU4MTkzLCJqdGkiOiIxMzY2NDk4MjcxIn0.VSwvsTE-tS0sL_e9p9gNvHRkMCbsycSO4ObE4J2ysjs'   \ 
  'Content-Type: application/json'   \ 
  '{ 
    "playerId": 1001, 
    "password": "guildPass123" 
}' 
ตัวอย่างการตอบกลับ  { 
     "code" :   0 , 
     "message" :   "Success." 
} 
ช่องทางออก  การลบผู้ใช้จากช่อง ช่องจะยังคงอยู่แม้ว่าผู้ดูแลช่องจะออกไป
 URL ที่ร้องขอ     เซิร์ฟเวอร์  URL        ไลฟ์  https://api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}/exit   แซนด์บ็อกซ์  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}/exit   วิธีการ HTTP  POST   ประเภทเนื้อหา  application/json    
 พารามิเตอร์เส้นทาง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        gameIndex  Hive ดัชนีเกม  จำนวนเต็ม  ใช่     channelId  รหัสช่อง  สตริง  ใช่      
 พารามิเตอร์หัวเรื่อง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        Authorization  โทเค็นการตรวจสอบสิทธิ์สำหรับการเรียก API (Bearer)  สตริง  ใช่     Content-Type  ประเภทของข้อมูลการร้องขอ (application/json)  สตริง  ใช่      
 เนื้อหาคำขอ  นี่คือข้อมูลการส่งที่จำเป็นเมื่อขอออกจากช่องทาง
    ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        playerId  รหัสผู้เล่นของผู้ใช้ที่จะถูกลบ Hive  long  Y      
 เนื้อหาการตอบกลับ     ชื่อฟิลด์  คำอธิบาย  ประเภท        code  รหัสผลลัพธ์  จำนวนเต็ม     message  ข้อความผลลัพธ์  สตริง      
 ตัวอย่างคำขอ    --request  POST  'https://sandbox-api-chat.withhive.com/api/v1/games/1/channels/guild:12345/exit'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNzAyNDU4MTkzLCJqdGkiOiIxMzY2NDk4MjcxIn0.VSwvsTE-tS0sL_e9p9gNvHRkMCbsycSO4ObE4J2ysjs'   \ 
  'Content-Type: application/json'   \ 
  '{ 
    "playerId": 1001 
}' 
ตัวอย่างการตอบกลับ  { 
     "code" :   0 , 
     "message" :   "Success." 
} 
ข้อความแจ้งเตือนการส่ง  ส่งข้อความประกาศไปยังช่องเฉพาะหรือทุกช่องในเกม หากไม่ได้ระบุพารามิเตอร์ channelId ข้อความประกาศจะถูกส่งไปยังทุกช่องที่สร้างขึ้นสำหรับ gameIndex ที่เกี่ยวข้อง
 URL ที่ร้องขอ     เซิร์ฟเวอร์  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/notice   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/notice   HTTP METHOD  POST   CONTENT-TYPE  application/json    
 พารามิเตอร์เส้นทาง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        gameIndex  Hive ดัชนีเกม  จำนวนเต็ม  ใช่      
 พารามิเตอร์หัวเรื่อง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        Authorization  โทเค็นการตรวจสอบสิทธิ์สำหรับการเรียก API (Bearer)  string  ใช่     Content-Type  ประเภทของข้อมูลที่ร้องขอ (application/json)  string  ใช่      
 เนื้อหาคำขอ  นี่คือข้อมูลการส่งที่จำเป็นเมื่อขอส่งข้อความแจ้งเตือน
    ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        channelId  รหัสช่องที่ต้องการส่งข้อความไปยัง (หากไม่ระบุ channelId จะถูกส่งไปยังทุกช่อง)  สตริง  ไม่     message  เนื้อหาของข้อความประกาศที่จะส่ง  สตริง  ใช่      
 เนื้อหาการตอบกลับ     ชื่อฟิลด์  คำอธิบาย  ประเภท        code  รหัสผลลัพธ์การตอบกลับ  จำนวนเต็ม     message  คำอธิบายผลลัพธ์ข้อความ  สตริง      
 ตัวอย่างคำขอ    --request  POST  'https://sandbox-api-chat.withhive.com/api/v1/games/1/notice'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJnYW1lSW5kZXgiOjEsInBsYXllcklkIjoxLCJpYXQiOjE3MzI1MTcyMzUsImV4cCI6MTczMjUyMDgzNX0.lm5eFqEuSPjsKZUItpTQvFy_2oWrMMJ_J0MPH9VFtNg'   \ 
  'Content-Type: application/json'   \ 
  '{ 
    "channelId": "open:12345", 
    "message": "서버 점검이 있습니다. 잠시 후 다시 접속해 주세요." 
}' 
ตัวอย่างการตอบกลับ  { 
     "code" :   0 , 
     "message" :   "Success." 
} 
ฟีเจอร์ API ของผู้ใช้  นี่อธิบายคำขอและการตอบสนอง API สำหรับ API ผู้ใช้ที่ใช้ในบริการแชท พร้อมกับตัวอย่างโค้ด
 การออกโทเค็นผู้ใช้  ออกใบรับรองการพิสูจน์ตัวตนสำหรับการเชื่อมต่อกับเซิร์ฟเวอร์ซ็อกเก็ต
 เชื่อมต่อกับที่อยู่เซิร์ฟเวอร์ Socket ที่ส่งคืนผ่านโทเค็นที่ออกให้
 URL การร้องขอ     เซิร์ฟเวอร์  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/token   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/token   HTTP METHOD  POST    
 พารามิเตอร์เส้นทาง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        gameIndex  Hive ดัชนีเกม  integer  Y     playerId  Hive รหัสผู้เล่น  long  Y      
 พารามิเตอร์ส่วนหัว     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        Authorization  โทเค็นการตรวจสอบสิทธิ์สำหรับการเรียก API (Bearer)  string  Y      
 เนื้อหาการตอบกลับ     ชื่อฟิลด์  คำอธิบาย  ประเภท        code  รหัสผลลัพธ์การตอบกลับ  จำนวนเต็ม     message  ข้อความผลลัพธ์  สตริง     data  ข้อมูลการตอบกลับ  อ็อบเจ็กต์      
 เนื้อหาการตอบกลับ > ข้อมูล     ชื่อฟิลด์  คำอธิบาย  ประเภท        gameIndex  Hive ดัชนีเกม  จำนวนเต็ม     socketAddress  ที่อยู่เซิร์ฟเวอร์ซ็อกเก็ต  สตริง     token  โทเค็นที่ออก  สตริง      
 ตัวอย่างการร้องขอ     --request  POST  'https://api-chat.withhive.com/api/v1/games/1/users/1001/token'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJnYW1lSW5kZXgiOjEsInBsYXllcklkIjoxLCJpYXQiOjE3MzI1MTcyMzUsImV4cCI6MTczMjUyMDgzNX0.lm5eFqEuSPjsKZUItpTQvFy_2oWrMMJ_J0MPH9VFtNg'   
ตัวอย่างการตอบกลับ  { 
   "code" :   0 , 
   "message" :   "Success." , 
   "data" :   { 
     "gameIndex" :   1 , 
     "socketAddress" :   "wss://test-socket-chat.withhive.com/ws" , 
     "token" :   "eyJhbGciOiJIUzI1NiJ9.eyJnYW1lSW5kZXgiOjEsInBsYXllcklkIjoxLCJpYXQiOjE3MzI1MTcyMzUsImV4cCI6MTczMjUyMDgzNX0.lm5eFqEuSPjsKZUItpTQvFy_2oWrMMJ_J0MPH9VFtNg" 
   } 
} 
การสอบถามช่องทางการมีส่วนร่วมของผู้ใช้  ดึงรายชื่อช่องที่ผู้ใช้เข้าร่วมอยู่
 URL การร้องขอ     เซิร์ฟเวอร์  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/channels   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/channels   HTTP METHOD  GET    
 พารามิเตอร์เส้นทาง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        gameIndex  Hive ดัชนีเกม  integer  Y     playerId  Hive รหัสผู้เล่น  long  Y      
 พารามิเตอร์หัวข้อ     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        Authorization  โทเค็นการตรวจสอบสิทธิ์สำหรับการเรียก API (Bearer)  string  Y      
 เนื้อหาการตอบกลับ     ชื่อฟิลด์  คำอธิบาย  ประเภท        code  รหัสผลลัพธ์การตอบกลับ  จำนวนเต็ม     message  ข้อความผลลัพธ์  สตริง     data  ข้อมูลการตอบกลับ  อ็อบเจ็กต์      
 ร่างการตอบกลับ > ข้อมูล     ชื่อฟิลด์  คำอธิบาย  ประเภท        gameIndex  Hive ดัชนีเกม  integer     playerId  Hive รหัสผู้เล่น  long     channels  รายการช่องทาง  array      
 เนื้อหาการตอบกลับ > ข้อมูล > ช่องทาง     ชื่อฟิลด์  คำอธิบาย  ประเภท        channelId  รหัสช่อง  string     type  ประเภทช่อง (PRIVATE, PUBLIC, GROUP)  string     gameIndex  Hive ดัชนีเกม  integer     owner  เจ้าของช่อง  string     channelName  ชื่อช่อง  string     memberCount  จำนวนผู้เข้าร่วมช่องปัจจุบัน  integer     maxMemberCount  จำนวนสูงสุดของผู้เข้าร่วมช่อง  integer     regTime  วันที่และเวลาที่สร้างช่อง (ตาม UTC+0, รูปแบบ yyyy-MM-dd'T'HH:mm:ss.SSSZ)  string     regTimeMillis  วันที่และเวลาที่สร้างช่อง (UnixTimestamp Millisecond)  integer      
 ตัวอย่างคำขอ    --request  GET  'https://sandbox-api-chat.withhive.com/api/v1/games/1/users/1001/channels'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJnYW1lSW5kZXgiOjEsInBsYXllcklkIjoxLCJpYXQiOjE3MzI1MTcyMzUsImV4cCI6MTczMjUyMDgzNX0.lm5eFqEuSPjsKZUItpTQvFy_2oWrMMJ_J0MPH9VFtNg'   
ตัวอย่างการตอบกลับ  { 
   "code" :   0 , 
   "message" :   "Success." , 
   "data" :   { 
     "gameIndex" :   1 , 
     "playerId" :   1001 , 
     "channels" :   [ 
       { 
         "channelId" :   "guild:12345" , 
         "type" :   "GROUP" , 
         "gameIndex" :   1 , 
         "owner" :   "1000" , 
         "channelName" :   "길드 채팅방" , 
         "memberCount" :   1 , 
         "maxMemberCount" :   50 , 
         "regTime" :   "2023-12-19T15:01:01.004Z" , 
         "regTimeMillis" :   1731306364351 
       }, 
       { 
         "channelId" :   "open:67890" , 
         "type" :   "PUBLIC" , 
         "gameIndex" :   1 , 
         "owner" :   "SYSTEM" , 
         "channelName" :   "오픈 채팅방" , 
         "memberCount" :   2 , 
         "maxMemberCount" :   100 , 
         "regTime" :   "2023-12-20T10:15:30.123Z" , 
         "regTimeMillis" :   1731302348750 
       } 
       // ... 채널 
     ] 
   } 
} 
การดึงรายการบล็อกผู้ใช้  กำลังดึงรายการผู้ใช้ที่ถูกบล็อกโดยผู้ใช้
 URL ที่ร้องขอ     เซิร์ฟเวอร์  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/blocks   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/blocks   HTTP METHOD  GET    
 พารามิเตอร์เส้นทาง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        gameIndex  Hive ดัชนีเกม  string  Y     playerId  Hive รหัสผู้เล่น  long  Y      
 พารามิเตอร์หัวข้อ     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        Authorization  โทเค็นการตรวจสอบสิทธิ์สำหรับการเรียก API (Bearer)  สตริง  ใช่      
 เนื้อหาการตอบกลับ     ชื่อฟิลด์  คำอธิบาย  ประเภท        code  รหัสผลลัพธ์การตอบกลับ  จำนวนเต็ม     message  ข้อความผลลัพธ์  สตริง     data  ข้อมูลการตอบกลับ  อ็อบเจ็กต์      
 ร่างการตอบกลับ > ข้อมูล     ชื่อฟิลด์  คำอธิบาย  ประเภท        gameIndex  ดัชนีเกม Hive  จำนวนเต็ม     playerId  ID ผู้เล่น Hive  ยาว     blockedUsers  รายการที่ถูกบล็อก  อาเรย์      
 Response body > data > blockedusers     ชื่อฟิลด์  คำอธิบาย  ประเภท        blockedPlayerId  รหัสผู้เล่นของผู้ใช้ที่ถูกบล็อก Hive  long     blockedTime  เวลาที่ถูกบล็อก (ตาม UTC+0, รูปแบบ yyyy-MM-dd'T'HH:mm:ss.SSSZ)  string     blockedTimeMillis  เวลาที่ถูกบล็อก (Unix Timestamp Millisecond)  integer      
 ตัวอย่างคำขอ     --request  GET  'https://sandbox-api-chat.withhive.com/api/v1/games/1/users/1001/blocks'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJnYW1lSW5kZXgiOjEsInBsYXllcklkIjoxLCJpYXQiOjE3MzI1MTcyMzUsImV4cCI6MTczMjUyMDgzNX0.lm5eFqEuSPjsKZUItpTQvFy_2oWrMMJ_J0MPH9VFtNg'   
ตัวอย่างการตอบกลับ  { 
   "code" :   0 , 
   "message" :   "Success." , 
   "data" :   { 
     "gameIndex" :   1 , 
     "playerId" :   1001 , 
     "blockedUsers" :   [ 
       { 
         "blockedPlayerId" :   1002 , 
         "blockedTime" :   "2023-12-20T10:15:30.123Z" , 
         "blockedTimeMillis" :   1739329550811 
       }, 
       { 
         "blockedPlayerId" :   1003 , 
         "blockedTime" :   "2023-12-21T08:45:12.456Z" , 
         "blockedTimeMillis" :   1739329553137 
       }, 
       // ... 차단 목록 
     ] 
   } 
} 
User block  ผู้ใช้บล็อกผู้ใช้เฉพาะเจาะจง
 URL ที่ร้องขอ     เซิร์ฟเวอร์  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/block/{blockPlayerId}   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/block/{blockPlayerId}   HTTP METHOD  POST    
 พารามิเตอร์เส้นทาง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        gameIndex  Hive ดัชนีเกม  string  Y     playerId  Hive รหัสผู้เล่น  long  Y     blockPlayerId  บล็อก Hive รหัสผู้เล่น  long  Y      
 พารามิเตอร์หัวข้อ     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        Authorization  โทเค็นการตรวจสอบสิทธิ์สำหรับการเรียก API (Bearer)  string  Y      
 เนื้อหาการตอบกลับ     ชื่อฟิลด์  คำอธิบาย  ประเภท        code  รหัสผลลัพธ์การตอบกลับ  จำนวนเต็ม     message  ข้อความผลลัพธ์  สตริง      
 ตัวอย่างการร้องขอ    --request  POST  'https://sandbox-api-chat.withhive.com/api/v1/games/1/users/1001/block/1002'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJnYW1lSW5kZXgiOjEsInBsYXllcklkIjoxLCJpYXQiOjE3MzI1MTcyMzUsImV4cCI6MTczMjUyMDgzNX0.lm5eFqEuSPjsKZUItpTQvFy_2oWrMMJ_J0MPH9VFtNg'   
ตัวอย่างการตอบกลับ  { 
   "code" :   0 , 
   "message" :   "Success." 
} 
ปลดบล็อกผู้ใช้  ผู้ใช้ปลดบล็อกผู้ใช้เฉพาะรายหนึ่ง
 URL การร้องขอ     เซิร์ฟเวอร์  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/block/{blockedPlayerId}   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/block/{blockedPlayerId}   HTTP METHOD  DELETE    
 พารามิเตอร์เส้นทาง     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น        gameIndex  Hive ดัชนีเกม  string  Y     playerId  Hive รหัสผู้เล่น  long  Y     blockedPlayerId  ยกเลิกการบล็อก Hive รหัสผู้เล่น  long  Y      
 พารามิเตอร์หัวข้อ     ชื่อฟิลด์  คำอธิบาย  ประเภท  จำเป็น            
 เนื้อหาการตอบกลับ     ชื่อฟิลด์  คำอธิบาย  ประเภท        code  รหัสผลลัพธ์  จำนวนเต็ม     message  ข้อความผลลัพธ์  สตริง      
 ตัวอย่างคำขอ    --request  DELETE  'https://sandbox-api-chat.withhive.com/api/v1/games/1/users/1001/block/1002'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJnYW1lSW5kZXgiOjEsInBsYXllcklkIjoxLCJpYXQiOjE3MzI1MTcyMzUsImV4cCI6MTczMjUyMDgzNX0.lm5eFqEuSPjsKZUItpTQvFy_2oWrMMJ_J0MPH9VFtNg' 
ตัวอย่างการตอบกลับ  { 
   "code" :   0 , 
   "message" :   "Success." 
}