コンテンツにスキップ

ユーザー

このガイドでは、ユーザーが参加したチャンネルの表示、ユーザーのブロックリストの表示、ユーザーのブロック、およびユーザーのブロック解除を行うためのAPIの使用方法について説明します。

ユーザー参加チャンネルAPI

ユーザーが参加しているチャンネルのリストを取得します。1:1 チャンネル(ONE_ON_ONE)は除外されます。

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

ヘッダーパラメータ

フィールド 説明 タイプ 必須
Authorization API呼び出しの認証トークン(Bearer 文字列 Y

レスポンスボディ

フィールド 説明 タイプ
コード レスポンスコード 整数
メッセージ 結果メッセージ 文字列
データ レスポンスデータ オブジェクト

レスポンスボディ > データ

フィールド 説明 タイプ
gameIndex Hive ゲームインデックス 整数
playerId プレイヤー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ミリ秒) 長整数

リクエストサンプル

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",
        "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": "Open chat room",
        "memberCount": 2,
        "maxMemberCount": 100,
        "chatHistoryAllowed": true,
        "regTime": "2023-12-20T10:15:30.123Z",
        "regTimeMillis": 1731302348750
      }
      // ... channels
    ]
  }
}

ユーザーをブロックするAPI

ユーザーをブロックして、リアルタイムのメッセージ送受信を制限します。

ユーザーをブロックした後、チャンネルとメッセージの動作は次のように変わります:

  • ブロックされたユーザーからの1:1チャンネル(ONE_ON_ONE)の招待を受け取ることができます。
    • これは、ブロックされたユーザーに対してブロックされたことを通知しないためです。
  • ブロックされたユーザーからのチャンネルの出入りに関する**チャットメッセージ**や**イベントメッセージ**は受け取れません。
  • ブロックされたユーザーにメッセージを送信することはできません。

リクエスト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 ブロックしているユーザーのプレイヤーID 長整数 Y
blockPlayerId ブロックされているユーザーのプレイヤーID 長整数 Y

ヘッダーパラメータ

フィールド 説明 タイプ 必須
Authorization API呼び出しのための認証トークン(Bearer 文字列 Y

レスポンスボディ

フィールド 説明 タイプ
code レスポンスコード 整数
message 結果メッセージ 文字列

リクエストサンプル

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}/blocks
SANDBOX https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/blocks
HTTP METHOD GET

パスパラメータ

フィールド 説明 タイプ 必須
gameIndex Hive ゲームインデックス 文字列 Y
playerId ブロックしているユーザーのプレイヤーID 長整数 Y

ヘッダーパラメータ

フィールド 説明 タイプ 必須
Authorization API呼び出しのための認証トークン(Bearer 文字列 Y

レスポンスボディ

フィールド 説明 タイプ
code レスポンスコード 整数
message 結果メッセージ 文字列
data レスポンスデータ オブジェクト

レスポンスボディ > データ

フィールド 説明
gameIndex Hive ゲームインデックス 整数
playerId ブロックしているユーザーのプレイヤーID 長整数
blockedUsers ブロックされたユーザー情報のリスト オブジェクト配列

レスポンスボディ > データ > ブロックされたユーザー

フィールド 説明 タイプ
blockedPlayerId ブロックされたユーザーのプレイヤーID long
blockedTime ブロックされた時間(UTC+0yyyy-MM-dd'T'HH:mm:ss.SSSZ形式) string
blockedTimeMillis ブロックされた時間(UnixTimestampミリ秒) long

リクエストサンプル

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,
    "blockedUsers": [
      {
        "blockedPlayerId": 1002,
        "blockedTime": "2023-12-20T10:15:30.123Z",
        "blockedTimeMillis": 1739329550811
      },
      {
        "blockedPlayerId": 1003,
        "blockedTime": "2023-12-21T08:45:12.456Z",
        "blockedTimeMillis": 1739329553137
      }
      // ... block list
    ]
  }
}

ユーザーのブロックを解除

ブロックされたユーザーのブロックを解除します。

リクエスト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 プレイヤーID 長整数 Y
blockedPlayerId アンブロックするユーザーのプレイヤーID 長整数 Y

ヘッダーパラメータ

フィールド 説明 タイプ 必須
Authorization API呼び出しのための認証トークン(Bearer 文字列 Y

応答本文

フィールド 説明 タイプ
code レスポンスコード 整数
message 結果メッセージ 文字列

リクエストサンプル

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."
}