コンテンツにスキップ

HTTP API

概要

HTTP APIはAPIサーバーとHTTP通信を行い、チャットサービスを提供します。大きくチャネルAPIユーザーAPIで構成されています。

各チャネルAPIとユーザーAPIの主要機能は以下の通りです。

  • チャンネル API
    • 全チャンネルリスト取得 API
    • チャンネル取得 API
    • チャンネル参加者取得 API
    • チャンネル作成 API
    • チャンネル削除 API
    • チャンネル入場 API
    • チャンネル退場 API
    • お知らせメッセージ送信 API
  • ユーザー API
    • ユーザートークン発行 API
    • ユーザー参加チャンネル取得 API
    • ユーザーブロックリスト取得 API
    • ユーザーブロック API
    • ユーザーブロック解除 API

基本情報

HTTP APIを使用する際に、共通して知っておくべき基本情報を案内します。

事前準備

HTTP APIを使用するには、以下の項目を準備する必要があります。

  • Hive認証キー(Hive 인증키): API呼び出しのための認証トークン
    • Hiveコンソール > アプリセンター > プロジェクト管理 > ゲーム詳細 > 基本情報 で確認可能
  • ゲームインデックス(Game Index): 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

応答コード

  • API応答コード
HTTPステータスコード コード メッセージ 説明
200 0 成功。 成功
400 100 不正なリクエスト。 不正なリクエスト
401 101 無効なトークン。 有効ではないトークン
403 102 禁止。 権限がありません
404 103 見つかりません。 見つかりません
405 104 メソッドは許可されていません。 許可されていないメソッド
500 105 内部サーバーエラー。 内部サーバーエラー
  • 詳細エラーコード (400, 403)
HTTPステータスコード コード メッセージ 説明
400 200 重複したチャンネルIDです。 中複されたチャンネルID
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 ゲームインデックス integer Y

ヘッダー パラメータ

フィールド名 説明 タイプ 必須かどうか
Authorization API呼び出しのための認証トークン (Bearer) string 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 1ページあたり取得するチャンネル数
(最小10件〜最大100件、デフォルト10)
integer N
page 取得するページ番号
(1から開始、デフォルト1)
integer N

レスポンスボディ

フィールド名 説明 タイプ
code 応答結果コード integer
message 結果メッセージ string
data 応答データ object
レスポンスボディ > データ
フィールド名 説明 タイプ
content チャンネルリスト array
page ページ情報 object
レスポンスボディ > データ > コンテンツ
フィールド名 説明 タイプ
channelId チャンネル ID string
type チャンネルタイプ (PRIVATE, PUBLIC, GROUP) string
gameIndex Hive ゲームインデックス integer
owner チャンネル所有者の Hive プレイヤー ID string
channelName チャンネル名 string
maxMemberCount 最大チャンネル参加人数 integer
regTime チャンネル作成日時 (UTC+0 基準, yyyy-MM-dd'T'HH:mm:ss.SSSZ 形式) string
レスポンスボディ > データ > ページ
フィールド名 説明 タイプ
size 1ページあたりの項目数 integer
currentPage 現在のページ番号 integer
totalElements 全体の項目数 integer
totalPages 全体のページ数 integer

リクエストサンプル

curl --request GET 'https://api-chat.withhive.com/api/v1/games/1/channels?type=PUBLIC&sort=regTime&order=DESC&size=10&page=1' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNzAyNDU4MTkzLCJqdGkiOiIxMzY2NDk4MjcxIn0.VSwvsTE-tS0sL_e9p9gNvHRkMCbsycSO4ObE4J2ysjs'

レスポンスサンプル

{
  "code": 0,
  "message": "Success.",
  "data": {
    "content": [
      {
        "channelId": "open:12345",
        "type": "PUBLIC",
        "gameIndex": 1,
        "owner": "1000",
        "channelName": "Open chat room",
        "maxMemberCount": 50,
        "regTime": "2024-12-30T15:01:01.004Z"
      },
      /// ... Channel Information
    ],
    "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 ゲームインデックス integer Y
channelId 取得するチャンネルID string Y

ヘッダーパラメータ

フィールド名 説明 タイプ 必須 여부
Authorization API呼び出しのための認証トークン (Bearer) string Y

レスポンスボディ

フィールド名 説明 タイプ
code 応答結果コード integer
message 結果メッセージ string
data 応答データ object
レスポンスボディ > データ
フィールド名 説明 タイプ
info チャンネル情報 object
members 参加者リスト array
レスポンスボディ > データ > 情報
フィールド名 説明 タイプ
channelId チャンネル ID string
type チャンネルタイプ (PRIVATE, PUBLIC, GROUP) string
gameIndex Hive ゲームインデックス integer
owner チャンネルの所有者 string
channelName チャンネル名 string
maxMemberCount 最大チャンネル参加人数 integer
regTime チャンネル作成日時 (UTC+0 基準, yyyy-MM-dd'T'HH:mm:ss.SSSZ 形式) string
レスポンスボディ > データ > メンバー
フィールド名 説明 タイプ
playerId Hive プレイヤー ID long
extraData 追加データ (UTF-8 基準)
(最大 256 Byte)
string
connectedTime 接続日時 (UTC+0 基準, yyyy-MM-dd'T'HH:mm:ss.SSSZ 形式) string

リクエストサンプル

curl --request GET 'https://api-chat.withhive.com/api/v1/games/1/channels/open:12345' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNzAyNDU4MTkzLCJqdGkiOiIxMzY2NDk4MjcxIn0.VSwvsTE-tS0sL_e9p9gNvHRkMCbsycSO4ObE4J2ysjs'

レスポンスサンプル

{
  "code": 0,
  "message": "Success.",
  "data": {
    "info": {
      "channelId": "open:12345",
      "type": "PUBLIC",
      "gameIndex": 1,
      "owner": "SYSTEM",
      "channelName": "오픈채팅방",
        "maxMemberCount": 50,
        "regTime": "2024-12-30T15:01:01.004Z"
    },
    "members": [
      {
        "playerId": 1,
        "extraData": null,
        "connectedTime": "2024-11-25T06:22:06.604Z"
      },
      {
        "playerId": 2,
        "extraData": null,
        "connectedTime": "2024-11-25T06:22:16.233Z"
      }
    ]
  }
}

チャンネル参加者の取得

特定のチャンネルの参加者情報を取得します。

リクエスト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 ゲームインデックス integer Y
channelId 取得するチャンネルID string Y

ヘッダーパラメータ

フィールド名 説明 タイプ 必須かどうか
Authorization API呼び出しのための認証トークン (Bearer) string Y

レスポンスボディ

フィールド名 説明 タイプ
code 応答結果コード integer
message 結果メッセージ string
data 応答データ object
レスポンスボディ > データ
フィールド名 説明 タイプ
members チャンネル参加者リスト array
レスポンスボディ > データ > メンバー
フィールド名 説明 タイプ
playerId Hive プレイヤー ID long
extraData 追加データ (UTF-8 基準)
(最大 256 Byte)
string
connectedTime 接続日時 (UTC+0 基準, yyyy-MM-dd'T'HH:mm:ss.SSSZ 形式) string

リクエストサンプル

curl --request GET 'https://api-chat.withhive.com/api/v1/games/1/channels/open:12345/members' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNzAyNDU4MTkzLCJqdGkiOiIxMzY2NDk4MjcxIn0.VSwvsTE-tS0sL_e9p9gNvHRkMCbsycSO4ObE4J2ysjs'

レスポンスサンプル

{
  "code": 0,
  "message": "Success.",
  "data": {
    "members": [
      {
        "playerId": 1,
        "extraData": null,
        "connectedTime": "2024-11-25T06:22:06.604Z"
      },
      {
        "playerId": 2,
        "extraData": null,
        "connectedTime": "2024-11-25T06:22:16.233Z"
      }
    ]
  }
}

チャンネル作成

新しい会話チャンネルを作成します。

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 METHOD POST
CONTENT-TYPE application/json

パスパラメータ

フィールド名 説明 タイプ 必須 여부
gameIndex Hive ゲームインデックス integer Y

ヘッダー パラメータ

フィールド名 説明 タイプ 必須かどうか
Authorization API呼び出しのための認証トークン (Bearer) string Y
Content-Type リクエストデータのタイプ (application/json) string Y

リクエストボディ

チャンネル生成リクエスト時に必要な送信データです。

フィールド名 説明 タイプ 必須 여부
channelId チャンネル ID
(英字の大文字と小文字、数字、一部の特殊文字(-, ., _, ~, :)が使用可能、最大 100 文字)
string Y
playerId チャンネル作成者の Hive プレーヤー ID long N
password パスワード (PRIVATE チャンネルの場合必須)
(最大 50 文字)
string N
channelName チャンネル名
(最大 50 文字)
string Y
maxMemberCount 最大チャンネル参加人数
(最小 2 人 ~ 最大 5,000 人)
integer Y
type チャンネルタイプ (PRIVATE, PUBLIC, GROUP) string Y

レスポンスボディ

フィールド名 説明 タイプ
code レスポンス結果コード integer
message 結果メッセージ string

リクエストサンプル

curl --request POST 'https://sandbox-api-chat.withhive.com/api/v1/games/1/channel' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNzAyNDU4MTkzLCJqdGkiOiIxMzY2NDk4MjcxIn0.VSwvsTE-tS0sL_e9p9gNvHRkMCbsycSO4ObE4J2ysjs' \
--header 'Content-Type: application/json' \
--data'{
    "channelId": "open:12345",
    "playerId": 1000,
    "channelName": "Open chat room",
    "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 メソッド DELETE

パスパラメータ

フィールド名 説明 タイプ 必須かどうか
gameIndex Hive ゲームインデックス integer Y
channelId 削除するチャンネルID string Y

ヘッダーパラメータ

フィールド名 説明 タイプ 必須かどうか
Authorization API呼び出しのための認証トークン (Bearer) string Y

レスポンスボディ

フィールド名 説明 タイプ
code 応答結果コード integer
message 結果メッセージ string

リクエストサンプル

curl --request DELETE 'https://api-chat.withhive.com/api/v1/games/1/channels/open:12345' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNzAyNDU4MTkzLCJqdGkiOiIxMzY2NDk4MjcxIn0.VSwvsTE-tS0sL_e9p9gNvHRkMCbsycSO4ObE4J2ysjs'

レスポンスサンプル

{
    "code": 0,
    "message": "Success."
}

チャンネル入場

既存のチャンネルにユーザーを入場させます。

1人のユーザーが参加できる最大チャンネル数は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 ゲームインデックス integer Y
channelId チャンネルID string Y

ヘッダーパラメータ

フィールド名 説明 タイプ 必須かどうか
Authorization API呼び出しのための認証トークン (Bearer) string Y
Content-Type リクエストデータのタイプ (application/json) string Y

リクエストボディ

チャンネル入場リクエスト時に必要な送信データです。

フィールド名 説明 タイプ 必須かどうか
playerId 入場させるユーザーのHiveプレイヤーID long Y
password パスワード(PRIVATEチャンネルの場合必須) string N

レスポンスボディ

フィールド名 説明 タイプ
code 応答結果コード integer
message 結果メッセージ string

リクエストサンプル

curl --request POST 'https://api-chat.withhive.com/api/v1/games/1/channels/guild:12345/enter' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNzAyNDU4MTkzLCJqdGkiOiIxMzY2NDk4MjcxIn0.VSwvsTE-tS0sL_e9p9gNvHRkMCbsycSO4ObE4J2ysjs' \
--header 'Content-Type: application/json' \
--data-raw '{
    "playerId": 1001,
    "password": "guildPass123"
}'

レスポンスサンプル

{
    "code": 0,
    "message": "Success."
}

チャンネル退出

チャンネルからユーザーを退出させます。チャンネルの所有者が退出する場合、そのチャンネルは削除されます。

リクエスト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 ゲームインデックス integer Y
channelId チャンネルID string Y

ヘッダーパラメータ

フィールド名 説明 タイプ 必須 여부
Authorization API呼び出しのための認証トークン (Bearer) string Y
Content-Type リクエストデータのタイプ (application/json) string Y

リクエストボディ

チャンネル退出リクエスト時に必要な送信データです。

フィールド名 説明 タイプ 必須 여부
playerId 退場させるユーザーのHiveプレイヤーID long Y

レスポンスボディ

フィールド名 説明 タイプ
code 応答結果コード integer
message 結果メッセージ string

リクエストサンプル

curl --request POST 'https://sandbox-api-chat.withhive.com/api/v1/games/1/channels/guild:12345/exit' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNzAyNDU4MTkzLCJqdGkiOiIxMzY2NDk4MjcxIn0.VSwvsTE-tS0sL_e9p9gNvHRkMCbsycSO4ObE4J2ysjs' \
--header 'Content-Type: application/json' \
--data '{
    "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 ゲームインデックス integer Y

ヘッダー パラメータ

フィールド名 説明 タイプ 必須 여부
Authorization API呼び出しのための認証トークン (Bearer) string Y
Content-Type リクエストデータのタイプ (application/json) string Y

リクエストボディ

通知メッセージ送信リクエスト時に必要な送信データです。

フィールド名 説明 タイプ 必須かどうか
channelId メッセージを送信するチャネルID (channelIdがない場合は全チャネルに送信) string N
message 送信する通知メッセージの内容 string Y

レスポンスボディ

フィールド名 説明 タイプ
code 応答結果コード integer
message 説明結果メッセージ string

リクエストサンプル

curl --request POST 'https://sandbox-api-chat.withhive.com/api/v1/games/1/notice' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJnYW1lSW5kZXgiOjEsInBsYXllcklkIjoxLCJpYXQiOjE3MzI1MTcyMzUsImV4cCI6MTczMjUyMDgzNX0.lm5eFqEuSPjsKZUItpTQvFy_2oWrMMJ_J0MPH9VFtNg' \
--header 'Content-Type: application/json' \
--data '{
    "channelId": "open:12345",
    "message": "Server maintenance is in progress. Please try connecting again later.
}'

レスポンスサンプル

{
    "code": 0,
    "message": "Success."
}

ユーザーAPI機能

チャットサービスで使用されるユーザーAPIの機能ごとのAPIリクエストとレスポンス、例のコードを説明します。

ユーザートークン発行

Socketサーバー接続のための認証トークンを発行します。

発行されたトークンを通じて返された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 プレイヤーID long Y

ヘッダー パラメータ

フィールド名 説明 タイプ 必須かどうか
Authorization API呼び出しのための認証トークン (Bearer) string Y

レスポンスボディ

フィールド名 説明 タイプ
code 応答結果コード integer
message 結果メッセージ string
data 応答データ object
レスポンスボディ > データ
フィールド名 説明 タイプ
gameIndex Hive ゲームインデックス integer
socketAddress Socket サーバーアドレス string
token 発行されたトークン string

リクエストサンプル

curl  --request POST 'https://api-chat.withhive.com/api/v1/games/1/users/1001/token' \
--header '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 プレイヤーID long Y

ヘッダー パラメータ

フィールド名 説明 タイプ 必須かどうか
Authorization API呼び出しのための認証トークン (Bearer) string Y

レスポンスボディ

フィールド名 説明 タイプ
code 応答結果コード integer
message 結果メッセージ string
data 応答データ object
レスポンスボディ > データ
フィールド名 説明 タイプ
gameIndex Hive ゲームインデックス integer
playerId Hive プレイヤーID long
channels チャンネルリスト array
レスポンスボディ > データ > チャンネル
フィールド名 説明 タイプ
channelId チャンネル ID string
type チャンネルタイプ (PRIVATE, PUBLIC, GROUP) string
gameIndex Hive ゲームインデックス integer
owner チャンネルの所有者 string
channelName チャンネル名 string
maxMemberCount 最大チャンネル参加人数 integer
regTime チャンネル作成日時 (UTC+0 基準, yyyy-MM-dd'T'HH:mm:ss.SSSZ 形式) string

リクエストサンプル

curl --request GET 'https://sandbox-api-chat.withhive.com/api/v1/games/1/users/1001/channels' \
--header '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": "Guild chat room",
        "maxMemberCount": 50,
        "regTime": "2023-12-19T15:01:01.004Z"
      },
      {
        "channelId": "open:67890",
        "type": "PUBLIC",
        "gameIndex": 1,
        "owner": "SYSTEM",
        "channelName": "Open chat room",
        "maxMemberCount": 100,
        "regTime": "2023-12-20T10:15:30.123Z"
      }
      // ... 채널
    ]
  }
}

ユーザーブロックリストの取得

ユーザーがブロックしたユーザーのリストを表示します。

リクエスト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 プレイヤーID long Y

ヘッダー パラメータ

フィールド名 説明 タイプ 必須かどうか
Authorization API呼び出しのための認証トークン (Bearer) string Y

レスポンスボディ

フィールド名 説明 タイプ
code 応答結果コード integer
message 結果メッセージ string
data 応答データ object
レスポンスボディ > データ
フィールド名 説明 タイプ
gameIndex Hive ゲームインデックス integer
playerId Hive プレイヤーID long
blockedUsers ブロックリスト array
レスポンスボディ > データ > ブロック
フィールド名 説明 タイプ
blockedPlayerId ブロックしたユーザーのHiveプレイヤーID long
blockedTime ブロックした日時(UTC+0基準、yyyy-MM-dd'T'HH:mm:ss.SSSZ形式) string

リクエストサンプル

curl  --request GET 'https://sandbox-api-chat.withhive.com/api/v1/games/1/users/1001/blocks' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJnYW1lSW5kZXgiOjEsInBsYXllcklkIjoxLCJpYXQiOjE3MzI1MTcyMzUsImV4cCI6MTczMjUyMDgzNX0.lm5eFqEuSPjsKZUItpTQvFy_2oWrMMJ_J0MPH9VFtNg' 

レスポンスサンプル

{
  "code": 0,
  "message": "Success.",
  "data": {
    "gameIndex": 1,
    "playerId": 1001,
    "blocks": [
      {
        "blockedPlayerId": 1002,
        "blockedTime": "2023-12-20T10:15:30.123Z"
      },
      {
        "blockedPlayerId": 1003,
        "blockedTime": "2023-12-21T08:45:12.456Z"
      },
      // ... 차단 목록
    ]
  }
}

ユーザーのブロック

ユーザーが特定のユーザーをブロックします。

リクエスト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 プレイヤーID long Y
blockPlayerId ブロックする Hive プレイヤーID long Y

ヘッダーパラメータ

フィールド名 説明 タイプ 必須かどうか
Authorization API呼び出しのための認証トークン (Bearer) string Y

レスポンスボディ

フィールド名 説明 タイプ
code 応答結果コード integer
message 結果メッセージ string

リクエストサンプル

curl --request POST 'https://sandbox-api-chat.withhive.com/api/v1/games/1/users/1001/block/1002' \
--header '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 プレイヤー ID long Y
blockedPlayerId ブロック解除する Hive プレイヤー ID long Y

ヘッダー パラメータ

フィールド名 説明 タイプ 必須かどうか
Authorization API呼び出しのための認証トークン (Bearer) string Y

レスポンスボディ

フィールド名 説明 タイプ
code 応答結果コード integer
message 結果メッセージ string

リクエストサンプル

curl --request DELETE 'https://sandbox-api-chat.withhive.com/api/v1/games/1/users/1001/block/1002' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJnYW1lSW5kZXgiOjEsInBsYXllcklkIjoxLCJpYXQiOjE3MzI1MTcyMzUsImV4cCI6MTczMjUyMDgzNX0.lm5eFqEuSPjsKZUItpTQvFy_2oWrMMJ_J0MPH9VFtNg'

レスポンスサンプル

{
  "code": 0,
  "message": "Success."
}