HTTP API  概要  私たちはHTTPを介してチャットサービスを提供しています。これは主にChannel API 、User API 、およびMessage API で構成されています。
  チャンネルAPI すべてのチャンネルリストAPI  チャンネル取得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 コンソール > アプリセンター > プロジェクト管理 > ゲーム詳細 > 基本情報  で確認できます    ゲームインデックス: Hive コンソール > アプリセンター > プロジェクト管理  で作成されたゲームのインデックス     チャンネルタイプ  HTTP APIを送信する際に使用されるチャネルタイプは以下の通りです。
    タイプ  説明        PUBLIC誰でも入れるチャンネル     PRIVATEパスワードを入力することで入れるチャンネル     GROUP特定のユーザーのみが参加できるチャンネル(例:ギルドチャンネル)      
 リクエストURL     サーバー  URL        LIVE  api-chat.withhive.com   SANDBOX  sandbox-api-chat.withhive.com    
 共通のヘッダー     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン(Bearer)  string  Y     Content-Type  リクエストデータのタイプ(application/json)  string  Y      
 レスポンスコード      HTTP ステータスコード  コード  メッセージ  説明        200  0  成功。  成功     400  100  不正なリクエスト。  不正なリクエスト     401  101  無効なトークン。  無効なトークン     403  102  禁止されています。  禁止     404  103  見つかりません。  見つかりません     405  104  メソッドは許可されていません。  メソッドは許可されていません     500  105  内部サーバーエラー。  内部サーバーエラー      
     HTTP ステータスコード  コード  メッセージ  説明        400  200  重複したチャンネルIDです。  重複したチャンネルID     201  チャンネルが見つからないか、削除されています。  チャンネルが見つからないか、削除されています     202  チャンネルが満杯です。  チャンネルが満杯です     203  無効なチャンネルパスワードです。  無効なチャンネルパスワードです     204  メッセージサイズを超えました。最大サイズは200です。  メッセージサイズを超えました(最大200文字)     300  ユーザーがセッションに参加していません。  ユーザーがセッションに参加していません(ソケットサーバーに接続されていない)     301  ユーザーがチャンネルに参加していません。  ユーザーがチャンネルに参加していません     302  ユーザーはすでにチャンネルに参加しています。  ユーザーはすでにチャンネルに参加しています     303  ユーザーはすでにブロックされています。  ユーザーはすでにブロックされています     304  ブロックリストが満杯です。最大サイズは100です。  ブロックリストが満杯です(最大100ユーザー)     305  ユーザーはブロックリストにいません。  ユーザーはブロックリストにいません     306  ユーザーはブロックされています。  ユーザーはブロックされています     307  ユーザーが参加できるチャンネルの最大数は10です。  ユーザーは許可されたチャンネルの最大数を超えました(10の制限)     400  カスタムメッセージサイズを超えました。最大サイズは8,000バイトです。  カスタムメッセージサイズを超えました(最大8,000バイト)     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 メソッド  GET    
 パスパラメータ     フィールド名  説明  タイプ  必須        gameIndex  Hive ゲームインデックス  整数  Y      
 ヘッダーパラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン(Bearer)  文字列  Y      
 クエリパラメータ     フィールド名  説明  型  必須        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  チャンネルリスト  オブジェクト配列     page  ページ情報  オブジェクト      
 レスポンスボディ > データ > コンテンツ     フィールド名  説明  タイプ        channelId  チャンネルID  文字列     type  チャンネルタイプ(PRIVATE, PUBLIC, GROUP)  文字列     gameIndex  Hive ゲームインデックス  整数     owner  Hive チャンネルオーナーのプレイヤーID  文字列     channelName  チャンネル名  文字列     memberCount  チャンネルの現在の参加者数  整数     maxMemberCount  チャンネルの最大参加者数  整数     chatHistoryAllowed  メッセージ履歴の取得が許可されているかどうか  ブール値     regTime  チャンネル作成日時(UTC+0に基づく、フォーマットyyyy-MM-dd'T'HH:mm:ss.SSSZ)  文字列     regTimeMillis  チャンネル作成日時(UnixTimestampミリ秒)  長整数      
 レスポンスボディ > データ > ページ     フィールド名  説明  タイプ        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 , 
         "chatHistoryAllowed" :   true , 
         "regTime" :   "2024-12-30T15:01:01.004Z" , 
         "regTimeMillis" :   1731306364351 
       }, 
       /// ... channel info 
     ], 
     "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 メソッド  GET    
 パスパラメータ     フィールド名  説明  タイプ  必須        gameIndex  Hive ゲームインデックス  整数  Y     channelId  クエリするチャンネルID  文字列  Y      
 ヘッダーパラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン (Bearer)  文字列  Y      
 レスポンスボディ     フィールド名  説明  タイプ        code  レスポンス結果コード  整数     message  結果メッセージ  文字列     data  レスポンスデータ  オブジェクト      
 レスポンスボディ > データ     フィールド名  説明  タイプ        info  チャンネル情報  オブジェクト     members  参加者リスト  オブジェクト配列      
 レスポンスボディ > データ > 情報     フィールド名  説明  タイプ        channelId  チャンネルID  string     type  チャンネルタイプ(PRIVATE, PUBLIC, GROUP)  string     gameIndex  Hive ゲームインデックス  integer     owner  チャンネルオーナー  string     channelName  チャンネル名  string     memberCount  チャンネル内の現在の参加者数  integer     maxMemberCount  チャンネル内の最大参加者数  integer     chatHistoryAllowed  メッセージ履歴の取得が許可されているかどうか  boolean     regTime  チャンネル作成日時(UTC+0に基づく、形式yyyy-MM-dd'T'HH:mm:ss.SSSZ)  string     regTimeMillis  チャンネル作成日時(UnixTimestampミリ秒)  long      
 レスポンスボディ > データ > メンバー     フィールド名  説明  タイプ        playerId  Hive プレイヤーID  long     connectedTime  接続時間(UTC+0に基づく、フォーマットyyyy-MM-dd'T'HH:mm:ss.SSSZ)  string     connectedTimeMillis  接続時間(Unix タイムスタンプミリ秒)  long      
 リクエストサンプル    --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 , 
       "chatHistoryAllowed" :   true , 
       "regTime" :   "2024-12-30T15:01:01.004Z" , 
       "regTimeMillis" :   1731306364351 
     }, 
     "members" :   [ 
       { 
         "playerId" :   1 , 
         "connectedTime" :   "2024-11-25T06:22:06.604Z" , 
         "connectedTimeMillis" :   1739328218507 
       }, 
       { 
         "playerId" :   2 , 
         "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 メソッド  GET    
 パスパラメータ     フィールド名  説明  タイプ  必須        gameIndex  Hive ゲームインデックス  整数  Y     channelId  クエリするチャンネルID  文字列  Y      
 ヘッダーパラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン (Bearer)  文字列  Y      
 レスポンスボディ     フィールド名  説明  タイプ        code  レスポンス結果コード  整数     message  結果メッセージ  文字列     data  レスポンスデータ  オブジェクト      
 レスポンスボディ > データ     フィールド名  説明  タイプ        members  チャンネル参加者のリスト  オブジェクト配列      
 レスポンスボディ > データ > メンバー     フィールド名  説明  型        playerId  Hive プレイヤーID  long     connectedTime  接続時間(UTC+0に基づく、形式yyyy-MM-dd'T'HH:mm:ss.SSSZ)  string     connectedTimeMillis  接続時間(Unix タイムスタンプミリ秒)  long      
 リクエストサンプル    --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 , 
         "connectedTime" :   "2024-11-25T06:22:06.604Z" , 
         "connectedTimeMillis" :   1739328218507 
       }, 
       { 
         "playerId" :   2 , 
         "connectedTime" :   "2024-11-25T06:22:16.233Z" , 
         "connectedTimeMillis" :   1731306364351 
       } 
     ] 
   } 
} 
チャンネルを作成する  新しいチャンネルを作成しています。
 リクエストボディにplayerIdを入力すると、そのplayerIdに対応するユーザーが作成されるチャンネルの所有者になります。このユーザーは自分が作成したチャンネルに入ります。逆に、リクエストボディにplayerIdが入力されていない場合、作成されるSYSTEMがチャンネルの所有者になります。
 リクエストURL     サーバー  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/channel   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/channel   HTTP メソッド  POST   コンテンツタイプ  application/json    
 パスパラメータ     フィールド名  説明  タイプ  必須        gameIndex  Hive ゲームインデックス  整数  Y      
 ヘッダー パラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン(Bearer)  文字列  Y     Content-Type  リクエストデータのタイプ(application/json)  文字列  Y      
 リクエストボディ  チャンネルを作成する際に必要な送信データです。
    フィールド名  説明  型  必須        channelId  チャンネルID-, ., _, ~, :)が許可され、最大100文字)  string  Y     playerId  チャンネル作成者のHiveのプレイヤーID  long  N     password  パスワード(チャンネルがPRIVATEの場合は必須)  string  N     channelName  チャンネル名  string  Y     maxMemberCount  チャンネルの参加者の最大数  integer  Y     type  チャンネルタイプ(PRIVATE, PUBLIC, GROUP)  string  Y     chatHistoryAllowed  メッセージ履歴が表示できるかどうか  boolean  N      
 レスポンスボディ     フィールド名  説明  型        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", 
    "chatHistoryAllowed": true 
}' 
レスポンスサンプル  { 
     "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 メソッド  DELETE    
 パスパラメータ     フィールド名  説明  タイプ  必須        gameIndex  Hive ゲームインデックス  整数  Y     channelId  削除するチャネルID  文字列  Y      
 ヘッダーパラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン(Bearer)  文字列  Y      
 レスポンスボディ     フィールド名  説明  タイプ        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 ゲームインデックス  整数  Y     channelId  チャンネルID  文字列  Y      
 ヘッダー パラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン(Bearer)  string  Y     Content-Type  リクエストデータのタイプ(application/json)  string  Y      
 リクエストボディ  チャンネルに入るリクエストをする際に必要なデータです。
    フィールド名  説明  タイプ  必須        playerId  入場するユーザーのプレイヤーID Hive  long  Y     password  パスワード(PRIVATE チャンネルに必要)  string  N      
 レスポンスボディ     フィールド名  説明  タイプ        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." 
} 
チャンネルの終了  チャンネルに参加したユーザーを削除しています。チャンネルの所有者が離れても、チャンネルは残ります。チャンネルの所有者がSYSTEMでない参加者のいないチャンネルは、定期的に削除されます。
 リクエストURL     サーバー  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}/exit   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}/exit   HTTP METHOD  POST   CONTENT-TYPE  application/json    
 パスパラメータ     フィールド名  説明  タイプ  必須        gameIndex  Hive ゲームインデックス  整数  Y     channelId  チャンネルID  文字列  Y      
 ヘッダーパラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン (Bearer)  string  Y     Content-Type  リクエストデータのタイプ (application/json)  string  Y      
 リクエストボディ  これはチャンネルを退出する際に必要な送信データです。
    フィールド名  説明  タイプ  必須        playerId  削除されるユーザーのプレイヤーID 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." 
} 
ユーザーAPIの機能  これは、チャットサービスで使用されるユーザーAPIのAPIリクエストとレスポンス、およびサンプルコードについて説明しています。
 ユーザートークンの発行  ソケットサーバーに接続するための認証トークンを発行しています。
 発行されたトークンを通じて返されたソケットサーバーアドレスに接続します。
 リクエスト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 メソッド  POST    
 パスパラメータ     フィールド名  説明  タイプ  必須        gameIndex  Hive ゲームインデックス  整数  Y     playerId  Hive プレイヤーID  長整数  Y      
 ヘッダーパラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン (Bearer)  文字列  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 ゲームインデックス  整数  Y     playerId  Hive プレイヤーID  長整数  Y      
 ヘッダーパラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン(Bearer)  文字列  Y      
 応答本文     フィールド名  説明  型        code  応答結果コード  整数     message  結果メッセージ  文字列     data  応答データ  オブジェクト      
 レスポンスボディ > データ     フィールド名  説明  型        gameIndex  Hive ゲームインデックス  整数     playerId  Hive プレイヤーID  長整数     channels  チャンネルのリスト  オブジェクト配列      
 レスポンスボディ > データ > チャンネル     フィールド名  説明  タイプ        channelId  チャンネルID  文字列     type  チャンネルタイプ(PRIVATE, PUBLIC, GROUP)  文字列     gameIndex  Hive ゲームインデックス  整数     owner  チャンネルオーナー  文字列     channelName  チャンネル名  文字列     memberCount  現在のチャンネル参加者数  整数     maxMemberCount  最大チャンネル参加者数  整数     chatHistoryAllowed  メッセージ履歴の取得が許可されているか  ブール値     regTime  チャンネル作成日時(UTC+0に基づく、形式yyyy-MM-dd'T'HH:mm:ss.SSSZ)  文字列     regTimeMillis  チャンネル作成日時(UnixTimestampミリ秒)  長整数      
 リクエストサンプル    --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 , 
         "chatHistoryAllowed" :   true , 
         "regTime" :   "2023-12-19T15:01:01.004Z" , 
         "regTimeMillis" :   1731306364351 
       }, 
       { 
         "channelId" :   "open:67890" , 
         "type" :   "PUBLIC" , 
         "gameIndex" :   1 , 
         "owner" :   "SYSTEM" , 
         "channelName" :   "오픈 채팅방" , 
         "memberCount" :   2 , 
         "maxMemberCount" :   100 , 
         "chatHistoryAllowed" :   true , 
         "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 メソッド  GET    
 パスパラメータ     フィールド名  説明  タイプ  必須        gameIndex  Hive ゲームインデックス  文字列  Y     playerId  Hive プレイヤーID  長整数  Y      
 ヘッダーパラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン (Bearer)  文字列  Y      
 レスポンスボディ     フィールド名  説明  タイプ        code  レスポンス結果コード  整数     message  結果メッセージ  文字列     data  レスポンスデータ  オブジェクト      
 レスポンスボディ > データ     フィールド名  説明  タイプ        gameIndex  Hive ゲームインデックス  整数     playerId  Hive プレイヤーID  長整数     blockedUsers  ブロックされたリスト  オブジェクト配列      
 レスポンスボディ > データ > ブロックされたユーザー     フィールド名  説明  タイプ        blockedPlayerId  ブロックされたユーザーのプレイヤーID Hive  long     blockedTime  ブロックの時間(UTC+0に基づく、フォーマットyyyy-MM-dd'T'HH:mm:ss.SSSZ)  string     blockedTimeMillis  ブロックの時間(Unix タイムスタンプミリ秒)  long      
 リクエストサンプル     --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 
       }, 
       // ... 차단 목록 
     ] 
   } 
} 
ユーザーブロック  他のユーザーをブロックする。これはリアルタイムメッセージの送受信を制限する機能です。
 リクエスト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 ゲームインデックス  文字列  Y     playerId  Hive プレイヤーID  長整数  Y     blockPlayerId  ブロックされた Hive プレイヤーID  長整数  Y      
 ヘッダーパラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン (Bearer)  文字列  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 ゲームインデックス  文字列  Y     playerId  Hive プレイヤーID  長整数  Y     blockedPlayerId  Hive アンブロックするプレイヤーID  長整数  Y      
 ヘッダーパラメータ     フィールド名  説明  型  必須        Authorization  API呼び出しの認証トークン (Bearer)  文字列  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." 
} 
メッセージAPIの機能  これは、通知メッセージやカスタムメッセージを送信するためのAPIであり、特定のチャネルからメッセージ履歴を取得するためのものです。
 チャンネル通知メッセージ送信  特定のチャンネルまたはすべてのチャンネルにアナウンスメッセージを送信します。
 リクエスト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 メソッド  POST   CONTENT-TYPE  application/json    
 パスパラメータ     フィールド名  説明  型  必須        gameIndex  Hive ゲームインデックス  整数  Y      
 ヘッダーパラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン(Bearer)  string  Y     Content-Type  リクエストデータのタイプ(application/json)  string  Y      
 リクエストボディ  通知メッセージを送信する際に必要な送信データです。
    フィールド名  説明  タイプ  必須        channelId  メッセージを送信するチャンネルID(指定がない場合はすべてのチャンネルに送信)  string  N     langCode  メッセージを送信するユーザーのHive言語コード(指定がない場合は言語に関係なく送信)  string  N     message  送信されるアナウンスメッセージの内容  string  Y      
 チャンネルID  channelIdがない場合、PathパラメータgameIndexはアプリに存在するすべてのチャネルにメッセージを送信します。
 言語コード  langCodeが存在しない場合、メッセージは言語に関係なくすべてのユーザーに配信されます。
 langCodeがある場合、メッセージを受け取るユーザーはフィールドの値によって異なります。たとえば、langCodeがenの場合、通知メッセージはクライアント接続時にリクエストボディのlangCodeがenであるユーザーにのみ送信されます 。
 レスポンスボディ     フィールド名  説明  タイプ        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", 
    "langCode": "en", 
    "message": "서버 점검이 있습니다. 잠시 후 다시 접속해 주세요." 
}' 
応答サンプル  { 
     "code" :   0 , 
     "message" :   "Success." 
} 
ユーザー通知メッセージ送信  ユーザーに通知メッセージを送信しています。
 リクエストURL     サーバー  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/notice/users/{playerId}   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/notice/users/{playerId}   HTTP メソッド  POST   CONTENT-TYPE  application/json    
 パスパラメータ     フィールド名  説明  タイプ  必須        gameIndex  Hive ゲームインデックス  整数  Y     playerId  Hive プレイヤーID  長整数  Y      
 ヘッダーパラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン(Bearer)  string  Y     Content-Type  リクエストデータのタイプ(application/json)  string  Y      
 リクエストボディ  通知メッセージを送信する際に必要な伝送データです。
    フィールド名  説明  タイプ  必須        langCode  メッセージが送信されるユーザーのHive言語コード(提供されていない場合は言語に関係なく送信される)  文字列  N     message  送信される通知メッセージの内容  文字列  Y      
 言語コード  langCodeがない場合、言語に関係なくplayerIdユーザーにメッセージを送信します。
 langCodeがある場合、ユーザー通知メッセージは、APIリクエストボディ内のlangCodeがクライアント接続時のリクエストボディ内のlangCodeと一致する場合にのみ送信されます。たとえば、playerId=1111のユーザーがlangCode=enでチャットクライアントに接続し、ユーザー通知メッセージ送信APIがplayerId=1111, langCode=jaで呼び出された場合、このユーザーには通知メッセージは送信されません。
 レスポンスボディ     フィールド名  説明  タイプ        code  レスポンス結果コード  整数     message  説明結果メッセージ  文字列      
 リクエストサンプル    --request  POST  'https://sandbox-api-chat.withhive.com/api/v1/games/1/notice/users/123123'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJnYW1lSW5kZXgiOjEsInBsYXllcklkIjoxLCJpYXQiOjE3MzI1MTcyMzUsImV4cCI6MTczMjUyMDgzNX0.lm5eFqEuSPjsKZUItpTQvFy_2oWrMMJ_J0MPH9VFtNg'   \ 
  'Content-Type: application/json'   \ 
  '{ 
    "langCode": "en", 
    "message": "123123 님에게 보내는 공지 메시지입니다." 
}' 
レスポンスサンプル  { 
     "code" :   0 , 
     "message" :   "Success." 
} 
チャンネルカスタムメッセージを送信  チャンネルに参加したすべてのユーザーにカスタムメッセージを送信します。
 リクエストURL     サーバー  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/custom-message/channels/{channelId}   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/custom-message/channels/{channelId}   HTTP METHOD  POST   CONTENT-TYPE  application/json    
 パスパラメータ     フィールド名  説明  タイプ  必須        gameIndex  Hive ゲームインデックス  整数  Y     channelId  メッセージを受信するためのチャネルID  文字列  Y      
 ヘッダーパラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン(Bearer)  string  Y     Content-Type  リクエストデータのタイプ(application/json)  string  Y      
 リクエストボディ  カスタムメッセージを送信する際に必要な送信データです。
    フィールド名  説明  タイプ  必須        message  送信されるカスタムメッセージの内容 (UTF-8 ベース)  文字列  Y      
 レスポンスボディ     フィールド名  説明  タイプ        code  レスポンス結果コード  整数     message  説明結果メッセージ  文字列      
 リクエストサンプル    --request  POST  'https://sandbox-api-chat.withhive.com/api/v1/games/1/custom-message/channels/public:123'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJnYW1lSW5kZXgiOjEsInBsYXllcklkIjoxLCJpYXQiOjE3MzI1MTcyMzUsImV4cCI6MTczMjUyMDgzNX0.lm5eFqEuSPjsKZUItpTQvFy_2oWrMMJ_J0MPH9VFtNg'   \ 
  'Content-Type: application/json'   \ 
  '{ 
    "message": "커스텀 메시지입니다." 
}' 
応答サンプル  { 
     "code" :   0 , 
     "message" :   "Success." 
} 
ユーザーにカスタムメッセージを送信  ユーザーにカスタムメッセージを送信しています。
 リクエストURL     サーバー  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/custom-message/users   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/custom-message/users   HTTP メソッド  POST   CONTENT-TYPE  application/json    
 パスパラメータ     フィールド名  説明  タイプ  必須        gameIndex  Hive ゲームインデックス  整数  Y      
 ヘッダーパラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン(Bearer)  string  Y     Content-Type  リクエストデータのタイプ(application/json)  string  Y      
 リクエストボディ  カスタムメッセージを送信する際に必要な送信データです。
    フィールド名  説明  タイプ  必須        playerIds  メッセージを受信するためのアカウント識別子のコレクション  long array  Y     message  送信されるカスタムメッセージの内容(UTF-8ベース)  string  Y      
 レスポンスボディ     フィールド名  説明  タイプ        code  応答結果コード  整数     message  説明結果メッセージ  文字列      
 リクエストサンプル    --request  POST  'https://sandbox-api-chat.withhive.com/api/v1/games/1/custom-message/users'   \ 
  'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJnYW1lSW5kZXgiOjEsInBsYXllcklkIjoxLCJpYXQiOjE3MzI1MTcyMzUsImV4cCI6MTczMjUyMDgzNX0.lm5eFqEuSPjsKZUItpTQvFy_2oWrMMJ_J0MPH9VFtNg'   \ 
  'Content-Type: application/json'   \ 
  '{ 
    "playerIds": [ 
        123123 
    ], 
    "message": "커스텀 메시지입니다." 
}' 
レスポンスサンプル  { 
     "code" :   0 , 
     "message" :   "Success." 
} 
チャンネルメッセージ履歴の取得  チャンネルメッセージ履歴を取得しています。チャンネルメッセージ履歴はカーソルベースのページネーションで提供され、過去30日間のチャンネルメッセージ履歴のみが取得できます。このAPIはチャンネル設定で以前の会話履歴を表示するオプションが有効になっている場合にのみ使用できます。  APIレスポンスで受け取ったチャンネルメッセージ履歴には、ブロックされたユーザー からの過去のメッセージが含まれる場合があります。
 ページネーション: サイズとインデックス  クエリパラメータindexを使用してページネーションを提供します。indexのデフォルト値はなく、indexなしでリクエストが行われた場合、指定されたsizeまでの最新のチャットメッセージが返されます。
 たとえば、indexなしでsize=5を指定してAPIを呼び出すと、5つの最も最近のチャット履歴と、次の履歴を受け取るためのnextIndex(たとえば、68009c30780e4f2d9830d8a0のような値)が返されます。
 index=68009c30780e4f2d9830d8a0 と size=5 を使ってAPIを再呼び出しすると、以前に返された最後のチャット履歴の後に発生した5つのチャット記録が返されます。
 ページネーション: 次がある  レスポンス値hasNextがtrueの場合、過去のチャット履歴がさらにあることを意味します。言い換えれば、レスポンス値nextIndexをindexとして使用して、さらに以前のチャネルメッセージ履歴を取得できます。
 リクエストURL     サーバー  URL        LIVE  https://api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}/messages   SANDBOX  https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}/messages   HTTP メソッド  GET    
 パスパラメータ     フィールド名  説明  型  必須        gameIndex  Hive ゲームインデックス  整数  Y     channelId  クエリするチャンネルID  整数  Y      
 ヘッダーパラメータ     フィールド名  説明  タイプ  必須        Authorization  API呼び出しの認証トークン (Bearer)  文字列  Y      
 クエリパラメータ  チャネルメッセージの取得をリクエストする際に必要なクエリ文字列データです。
    フィールド名  説明  タイプ  必須        size  チャンネル履歴のサイズ  整数  Y     index  取得に使用するインデックス(指定しない場合は、最も最近のメッセージを取得)  文字列  N      
 レスポンスボディ     フィールド名  説明  型        code  レスポンス結果コード  整数     message  説明結果メッセージ  文字列     data  レスポンスデータ  オブジェクト      
 レスポンスボディ > データ     フィールド名  説明  タイプ        hasNext  追加の取得が可能かどうか  boolean     nextIndex  次の取得に使用するインデックス  string     content  チャンネルメッセージ履歴  オブジェクト配列      
 レスポンスボディ > データ > コンテンツ     フィールド名  説明  タイプ        gameIndex  Hive ゲームインデックス  整数     from  メッセージを受信したアカウントの識別子   長整数     extraData  ユーザーの追加情報(UTF-8ベース)  文字列     to  メッセージを送信したチャネルID  文字列     message  メッセージ内容  文字列     langCode  Hive 言語コード   文字列     timestamp  メッセージが送信された日時(UTC+0ベース、yyyy-MM-dd'T'HH:mm:ss.SSSZ形式)  文字列     timestampMillis  メッセージが送信された日時(UnixTimestampミリ秒)  長整数      
 リクエストサンプル    --request  GET  'https://test-api-chat.withhive.com/api/v1/games/1/channels/open:1/messages?size=50'   \ 
  'Authorization: hivechat 005056fffea3fd10-000400fd-00000797-f67881178d98d1cd-64ae9a76' 
レスポンスサンプル  { 
   "code" :   0 , 
   "message" :   "Success." , 
   "data" :   { 
     "hasNext" :   true , 
     "nextIndex" :   "67c7d83336af25202c1c0ad4" , 
     "content" :   [ 
     // as size=50, returns 50 objects each of which is like the followings. 
       { 
         "gameIndex" :   1 , 
         "from" :   1111112 , 
         "extraData" :   "김하이브" , 
         "to" :   "open:10" , 
         "message" :   "zzz" , 
         "langCode" :   "ko" , 
         "timestamp" :   "2025-03-05T04:50:59.757Z" , 
         "timestampMillis" :   1741150259757 
       }, 
       { 
         "gameIndex" :   1 , 
         "from" :   1111111 , 
         "extraData" :   null , 
         "to" :   "open:10" , 
         "message" :   "하이브2" , 
         "langCode" :   "ko" , 
         "timestamp" :   "2025-03-05T04:51:01.689Z" , 
         "timestampMillis" :   1741150261689 
       }, 
     ] 
   } 
}