HTTP API
概述
HTTP API通过与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 认证密钥 (Hive Certification Key): API 调用的身份验证令牌
- 可以在 Hive 控制台 > 应用中心 > 项目管理 > 游戏详情 > 基本信息 中找到
- 游戏索引: 在 Hive 控制台 > 应用中心 > 项目管理 中创建的游戏的索引
渠道类型
发送HTTP API时使用的通道类型如下。
| 类型 | 描述 |
PUBLIC | 任何人都可以进入的频道 |
PRIVATE | 需要输入密码才能进入的频道 |
GROUP | 只有特定用户可以参与的频道(例如,公会频道) |
请求 URL
| 服务器 | URL |
| 直播 | api-chat.withhive.com |
| 沙盒 | sandbox-api-chat.withhive.com |
常见标题
| 字段名称 | 描述 | 类型 | 必需 |
| Authorization | API 调用的身份验证令牌 (Bearer) | 字符串 | Y |
| Content-Type | 请求数据的类型 (application/json) | 字符串 | 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 | 用户不在会话中。 | 用户不在会话中(未连接到 Socket 服务器) |
| 301 | 用户不在频道中。 | 用户不在频道中 |
| 302 | 用户已经在频道中。 | 用户已经在频道中 |
| 303 | 用户已被阻止。 | 用户已被阻止 |
| 304 | 阻止列表已满。最大大小为 100。 | 阻止列表已满(最大 100 人) |
| 305 | 用户不在阻止列表中。 | 用户不在阻止列表中 |
| 306 | 用户已被阻止。 | 用户已被阻止 |
| 307 | 用户可以进入的频道最大数量为 10。 | 超过用户可以进入的频道数量(限制为 10) |
| 403 | 308 | 用户不是频道的拥有者。 | 用户不是频道的拥有者 |
渠道 API 特性
这解释了聊天服务中使用的频道 API 每个功能的 API 请求和响应,以及示例代码。
获取所有频道列表
正在检索当前创建的频道列表。
请求 URL
| 服务器 | URL |
| 直播 | https://api-chat.withhive.com/api/v1/games/{gameIndex}/channels |
| 沙盒 | https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/channels |
| HTTP 方法 | GET |
路径参数
| 字段名称 | 描述 | 类型 | 必需 |
| gameIndex | Hive 游戏索引 | 整数 | Y |
头部参数
| 字段名称 | 描述 | 类型 | 必需 |
| Authorization | API 调用的身份验证令牌 (Bearer) | 字符串 | Y |
查询参数
| 字段名称 | 描述 | 类型 | 必需 |
| type | 渠道类型(PRIVATE,PUBLIC,GROUP) | 字符串 | 否 |
| channelId | 检索以特定频道 ID 开头的频道 | 字符串 | 否 |
| channelName | 检索包含特定频道名称的频道 | 字符串 | 否 |
| sort | 排序标准(channelId,channelName,regTime) (默认 regTime) | 字符串 | 否 |
| order | 排序方式(ASC,DESC) (默认 DESC) | 字符串 | 否 |
| size | 每页检索的频道数量 (最小 10 ~ 最大 100,默认 10) | 整数 | 否 |
| page | 要检索的页码 (从 1 开始,默认 1) | 整数 | 否 |
响应主体
| 字段名称 | 描述 | 类型 |
| code | 响应代码 | 整数 |
| message | 结果消息 | 字符串 |
| data | 响应数据 | 对象 |
响应主体 > 数据
| 字段名称 | 描述 | 类型 |
| content | 渠道列表 | 数组 |
| page | 页面信息 | 对象 |
响应主体 > 数据 > 内容
| 字段名称 | 描述 | 类型 |
| channelId | 渠道 ID | 字符串 |
| type | 渠道类型 (PRIVATE, PUBLIC, GROUP) | 字符串 |
| gameIndex | Hive 游戏索引 | 整数 |
| owner | Hive 渠道所有者的玩家 ID | 字符串 |
| channelName | 渠道名称 | 字符串 |
| memberCount | 当前渠道参与者数量 | 整数 |
| maxMemberCount | 渠道参与者的最大数量 | 整数 |
| regTime | 渠道创建日期和时间(基于 UTC+0,格式为 yyyy-MM-dd'T'HH:mm:ss.SSSZ) | 字符串 |
| regTimeMillis | 渠道创建日期和时间(Unix时间戳毫秒) | 整数 |
响应主体 > 数据 > 页面
| 字段名称 | 描述 | 类型 |
| size | 每页项目数量 | 整数 |
| currentPage | 当前页码 | 整数 |
| totalElements | 项目总数 | 整数 |
| totalPages | 页数总数 | 整数 |
请求示例
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": "오픈 채팅방",
"memberCount": 2,
"maxMemberCount": 50,
"regTime": "2024-12-30T15:01:01.004Z",
"regTimeMillis": 1731306364351
},
/// ... 채널 정보
],
"page": {
"size": 10,
"currentPage": 1,
"totalElements": 100,
"totalPages": 10
}
}
}
渠道查找
检索特定频道的详细信息。
请求 URL
| 服务器 | URL |
| 直播 | https://api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId} |
| 沙盒 | https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId} |
| HTTP 方法 | GET |
路径参数
| 字段名称 | 描述 | 类型 | 必需 |
| gameIndex | Hive 游戏索引 | 整数 | 是 |
| channelId | 查询的频道ID | 字符串 | 是 |
头部参数
| 字段名称 | 描述 | 类型 | 必需 |
| Authorization | API 调用的身份验证令牌 (Bearer) | 字符串 | Y |
响应主体
| 字段名称 | 描述 | 类型 |
| code | 响应结果代码 | 整数 |
| message | 结果消息 | 字符串 |
| data | 响应数据 | 对象 |
响应主体 > 数据
| 字段名称 | 描述 | 类型 |
| info | 渠道信息 | object |
| members | 参与者列表 | array |
响应主体 > 数据 > 信息
| 字段名称 | 描述 | 类型 |
| channelId | 渠道 ID | 字符串 |
| type | 渠道类型 (PRIVATE, PUBLIC, GROUP) | 字符串 |
| gameIndex | Hive 游戏索引 | 整数 |
| owner | 渠道拥有者 | 字符串 |
| channelName | 渠道名称 | 字符串 |
| memberCount | 当前渠道参与者数量 | 整数 |
| maxMemberCount | 渠道参与者的最大数量 | 整数 |
| regTime | 渠道创建日期和时间(基于 UTC+0,格式 yyyy-MM-dd'T'HH:mm:ss.SSSZ) | 字符串 |
| regTimeMillis | 渠道创建日期和时间(Unix时间戳毫秒) | 整数 |
响应主体 > 数据 > 成员
| 字段名称 | 描述 | 类型 |
| playerId | Hive 玩家ID | long |
| extraData | 附加数据(UTF-8 格式) (最大256字节) | string |
| connectedTime | 连接日期和时间(UTC+0 基于,yyyy-MM-dd'T'HH:mm:ss.SSSZ 格式) | string |
| connectedTimeMillis | 连接时间(Unix时间戳毫秒) | integer |
请求示例
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": "오픈채팅방",
"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 |
| 直播 | https://api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}/members |
| 沙盒 | https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}/members |
| HTTP 方法 | GET |
路径参数
| 字段名称 | 描述 | 类型 | 必需 |
| gameIndex | Hive 游戏索引 | 整数 | Y |
| channelId | 查询的频道 ID | 字符串 | Y |
头部参数
| 字段名称 | 描述 | 类型 | 必需 |
| Authorization | API 调用的认证令牌 (Bearer) | 字符串 | 是 |
响应主体
| 字段名称 | 描述 | 类型 |
| code | 响应结果代码 | 整数 |
| message | 结果消息 | 字符串 |
| data | 响应数据 | 对象 |
响应主体 > 数据
| 字段名称 | 描述 | 类型 |
| members | 频道参与者列表 | 数组 |
响应主体 > 数据 > 成员
| 字段名称 | 描述 | 类型 |
| playerId | Hive 玩家ID | long |
| extraData | 附加数据 (UTF-8 基础) (最大 256 字节) | string |
| connectedTime | 连接日期和时间 (UTC+0 基础, yyyy-MM-dd'T'HH:mm:ss.SSSZ 格式) | string |
| connectedTimeMillis | 连接时间 (Unix时间戳毫秒) | integer |
请求示例
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",
"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 游戏索引 | 整数 | Y |
头部参数
| 字段名称 | 描述 | 类型 | 必需 |
| Authorization | API 调用的认证令牌 (Bearer) | 字符串 | 是 |
| Content-Type | 请求数据的类型 (application/json) | 字符串 | 是 |
请求体
这是请求创建频道时所需的传输数据。
| 字段名称 | 描述 | 类型 | 必需 |
| channelId | 渠道 ID (允许使用英文字母、数字和一些特殊字符(-、.、_、~、:),最多 100 个字符) | 字符串 | Y |
| playerId | 渠道创建者的 Hive 的玩家 ID | 长整型 | N |
| password | 密码(PRIVATE 渠道必需) (最多 50 个字符) | 字符串 | N |
| channelName | 渠道名称 (最多 50 个字符) | 字符串 | Y |
| maxMemberCount | 渠道参与者的最大数量 (最少 2 到最多 5,000) | 整数 | Y |
| type | 渠道类型(PRIVATE、PUBLIC、GROUP) | 字符串 | Y |
响应主体
| 字段名称 | 描述 | 类型 |
| code | 响应结果代码 | 整数 |
| message | 结果消息 | 字符串 |
请求示例
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": "오픈 채팅방",
"maxMemberCount": 100,
"type": "PUBLIC"
}'
响应示例
{
"code": 0,
"message": "Success."
}
删除频道
删除特定频道。
请求 URL
| 服务器 | URL |
| 直播 | https://api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId} |
| 沙盒 | https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId} |
| HTTP 方法 | DELETE |
路径参数
| 字段名称 | 描述 | 类型 | 是否必填 |
| gameIndex | Hive 游戏索引 | 整数 | 是 |
| channelId | 要删除的频道ID | 字符串 | 是 |
头部参数
| 字段名称 | 描述 | 类型 | 必需 |
| Authorization | API 调用的认证令牌 (Bearer) | 字符串 | Y |
响应主体
| 字段名称 | 描述 | 类型 |
| code | 响应代码 | 整数 |
| message | 结果消息 | 字符串 |
请求示例
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."
}
进入频道
将用户输入到现有频道中。
用户可以进入的最大频道数为10。
请求 URL
| 服务器 | URL |
| 直播 | https://api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}/enter |
| 沙盒 | https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/channels/{channelId}/enter |
| HTTP 方法 | POST |
| 内容类型 | application/json |
路径参数
| 字段名称 | 描述 | 类型 | 必需 |
| gameIndex | Hive 游戏索引 | 整数 | 是 |
| channelId | 渠道 ID | 字符串 | 是 |
头部参数
| 字段名称 | 描述 | 类型 | 必需 |
| Authorization | API 调用的认证令牌 (Bearer) | 字符串 | 是 |
| Content-Type | 请求数据的类型 (application/json) | 字符串 | 是 |
请求体
这是请求进入频道时所需的传输数据。
| 字段名称 | 描述 | 类型 | 必填 |
| playerId | 要被接纳的用户的玩家ID Hive | long | Y |
| password | 密码(PRIVATE频道必填) | string | N |
响应主体
| 字段名称 | 描述 | 类型 |
| code | 响应结果代码 | 整数 |
| message | 结果消息 | 字符串 |
请求示例
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 |
| 直播 | 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 游戏索引 | 整数 | Y |
| channelId | 渠道 ID | 字符串 | Y |
头部参数
| 字段名称 | 描述 | 类型 | 是否必需 |
| Authorization | API 调用的认证令牌 (Bearer) | 字符串 | 是 |
| Content-Type | 请求数据的类型 (application/json) | 字符串 | 是 |
请求体
这是请求退出频道时所需的传输数据。
| 字段名称 | 描述 | 类型 | 必填 |
| playerId | 要删除的用户的玩家ID Hive | long | Y |
响应主体
| 字段名称 | 描述 | 类型 |
| code | 响应结果代码 | 整数 |
| message | 结果消息 | 字符串 |
请求示例
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 |
| 生产环境 | https://api-chat.withhive.com/api/v1/games/{gameIndex}/notice |
| 沙盒环境 | https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/notice |
| HTTP 方法 | POST |
| 内容类型 | application/json |
路径参数
| 字段名称 | 描述 | 类型 | 必需 |
| gameIndex | Hive 游戏索引 | 整数 | Y |
头部参数
| 字段名称 | 描述 | 类型 | 必需 |
| Authorization | API 调用的身份验证令牌 (Bearer) | 字符串 | Y |
| Content-Type | 请求数据的类型 (application/json) | 字符串 | Y |
请求体
这是请求发送通知消息时所需的传输数据。
| 字段名称 | 描述 | 类型 | 必需 |
| channelId | 要发送消息的频道 ID(如果未提供 channelId,则将发送到所有频道) | 字符串 | 否 |
| message | 要发送的公告消息的内容 | 字符串 | 是 |
响应主体
| 字段名称 | 描述 | 类型 |
| code | 响应结果代码 | 整数 |
| message | 描述结果消息 | 字符串 |
请求示例
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": "서버 점검이 있습니다. 잠시 후 다시 접속해 주세요."
}'
响应示例
{
"code": 0,
"message": "Success."
}
用户 API 功能
这解释了聊天服务中使用的用户 API 的 API 请求和响应,以及示例代码。
用户令牌发放
为连接到套接字服务器发放身份验证令牌。
通过发出的令牌连接到返回的套接字服务器地址。
请求 URL
| 服务器 | URL |
| 生产环境 | https://api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/token |
| 沙盒环境 | 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 | 发放的令牌 | 字符串 |
请求示例
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 |
| 直播 | https://api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/channels |
| 沙盒 | https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/channels |
| HTTP 方法 | GET |
路径参数
| 字段名称 | 描述 | 类型 | 必需 |
| gameIndex | Hive 游戏索引 | 整数 | 是 |
| playerId | Hive 玩家ID | 长整型 | 是 |
头部参数
| 字段名称 | 描述 | 类型 | 必需 |
| 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 | 渠道参与者的最大数量 | 整数 |
| regTime | 渠道创建日期和时间(基于 UTC+0,格式 yyyy-MM-dd'T'HH:mm:ss.SSSZ) | 字符串 |
| regTimeMillis | 渠道创建日期和时间(Unix时间戳毫秒) | 整数 |
请求示例
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": "길드 채팅방",
"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 |
| 直播 | https://api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/blocks |
| 沙盒 | 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 时间戳毫秒) | integer |
请求示例
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
},
// ... 차단 목록
]
}
}
用户块
用户屏蔽了特定用户。
请求 URL
| 服务器 | URL |
| 直播 | https://api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/block/{blockPlayerId} |
| 沙盒 | https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/block/{blockPlayerId} |
| HTTP 方法 | POST |
路径参数
| 字段名称 | 描述 | 类型 | 必需 |
| gameIndex | Hive 游戏索引 | 字符串 | 是 |
| playerId | Hive 玩家ID | 长整型 | 是 |
| blockPlayerId | 阻止 Hive 玩家ID | 长整型 | 是 |
头部参数
| 字段名称 | 描述 | 类型 | 必需 |
| 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 |
| 直播 | https://api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/block/{blockedPlayerId} |
| 沙盒 | https://sandbox-api-chat.withhive.com/api/v1/games/{gameIndex}/users/{playerId}/block/{blockedPlayerId} |
| HTTP 方法 | DELETE |
路径参数
| 字段名称 | 描述 | 类型 | 必需 |
| gameIndex | Hive 游戏索引 | 字符串 | Y |
| playerId | Hive 玩家ID | 长整型 | Y |
| blockedPlayerId | 解锁 Hive 玩家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."
}