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 Certification Key): 用于 API 调用的认证令牌
- Hive 控制台 > 应用中心 > 项目管理 > 游戏详情 > 基本信息 中可以查看
- 游戏索引(Game Index): Hive 控制台 > 应用中心 > 项目管理 中创建的游戏的索引
渠道类型
在HTTP API传输时,使用的通道类型如下。
类型 | 描述 |
PUBLIC | 任何人都可以进入的频道 |
PRIVATE | 需要输入密码才能进入的频道 |
GROUP | 只有特定用户可以参与的频道 (例如:公会频道) |
请求 URL
服务器 | URL |
直播 | api-chat.withhive.com |
沙盒 | 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 | 用户不在会话中。 | 用户不在会话中(未连接到 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 ) | 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 | 每页查询的频道数量 (最少 10 个 ~ 最多 100 个,默认值 10) | integer | N |
page | 查询的页码 (从 1 开始,默认值 1) | integer | N |
响应体
字段名 | 说明 | 类型 |
code | 响应结果代码 | integer |
message | 结果消息 | string |
data | 响应数据 | object |
响应主体 > 数据
字段名 | 说明 | 类型 |
content | 渠道列表 | array |
page | 页面信息 | object |
响应体 > 数据 > 内容
字段名 | 说明 | 类型 |
channelId | 渠道 ID | 字符串 |
type | 渠道类型 (PRIVATE , PUBLIC , GROUP ) | 字符串 |
gameIndex | Hive 游戏索引 | 整数 |
owner | 渠道所有者的 Hive 玩家 ID | 字符串 |
channelName | 渠道名称 | 字符串 |
maxMemberCount | 最大渠道参与人数 | 整数 |
regTime | 渠道创建时间 (UTC+0 基准, yyyy-MM-dd'T'HH:mm:ss.SSSZ 格式) | 字符串 |
响应主体 > 数据 > 页面
字段名 | 说明 | 类型 |
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": "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 |
直播 | 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 游戏索引 | 整数 | Y |
channelId | 查询的频道 ID | 字符串 | Y |
头部参数
字段名 | 描述 | 类型 | 是否必需 |
Authorization | 用于API调用的认证令牌 (Bearer ) | string | Y |
响应主体
字段名 | 说明 | 类型 |
code | 响应结果代码 | integer |
message | 结果消息 | string |
data | 响应数据 | object |
响应主体 > 数据
字段名 | 说明 | 类型 |
info | 渠道信息 | object |
members | 参与者列表 | array |
响应主体 > 数据 > 信息
字段名 | 说明 | 类型 |
channelId | 渠道 ID | 字符串 |
type | 渠道类型 (PRIVATE , PUBLIC , GROUP ) | 字符串 |
gameIndex | Hive 游戏索引 | 整数 |
owner | 渠道所有者 | 字符串 |
channelName | 渠道名称 | 字符串 |
maxMemberCount | 最大渠道参与人数 | 整数 |
regTime | 渠道创建时间 (UTC+0 基准, yyyy-MM-dd'T'HH:mm:ss.SSSZ 格式) | 字符串 |
响应体 > 数据 > 成员
字段名 | 描述 | 类型 |
playerId | Hive 玩家 ID | long |
extraData | 附加数据 (UTF-8 标准) (最大 256 字节) | 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": "Open chat room",
"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 |
直播 | 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 ) | string | Y |
响应主体
字段名 | 说明 | 类型 |
code | 响应结果代码 | integer |
message | 结果消息 | string |
data | 响应数据 | object |
响应主体 > 数据
字段名 | 说明 | 类型 |
members | 渠道参与者列表 | array |
响应体 > 数据 > 成员
字段名 | 说明 | 类型 |
playerId | Hive 玩家 ID | long |
extraData | 附加数据 (UTF-8 基准) (最大 256 字节) | 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,则owner将为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 ) | 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 |
直播 | 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 ) | string | 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 游戏索引 | 整数 | Y |
channelId | 渠道 ID | 字符串 | Y |
头部参数
字段名 | 描述 | 类型 | 是否必需 |
Authorization | 用于API调用的认证令牌 (Bearer ) | string | Y |
Content-Type | 请求数据的类型 (application/json ) | string | Y |
请求体
频道进入请求时所需的传输数据。
字段名 | 说明 | 类型 | 是否必需 |
playerId | 进入的用户的 Hive 玩家 ID | 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 游戏索引 | 整数 | 是 |
channelId | 渠道 ID | 字符串 | 是 |
头部参数
字段名 | 描述 | 类型 | 必需性 |
Authorization | 用于API调用的认证令牌 (Bearer ) | string | Y |
Content-Type | 请求数据的类型 (application/json ) | string | Y |
请求体
频道退出请求时,需要的传输数据。
字段名 | 描述 | 类型 | 是否必需 |
playerId | 要退出的用户的 Hive 玩家 ID | 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 ) | string | Y |
Content-Type | 请求数据的类型 (application/json ) | string | 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": "Server maintenance is in progress. Please try connecting again later."
}'
响应示例
{
"code": 0,
"message": "Success."
}
用户 API 功能
解释用于聊天服务的用户 API 的功能、API 请求和响应以及示例代码。
用户令牌发放
发放用于连接 Socket 服务器的认证令牌。
通过获取的令牌连接到返回的 Socket 服务器地址。
请求 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 游戏索引 | 整数 | 是 |
playerId | Hive 玩家 ID | 长整型 | 是 |
头部参数
字段名 | 说明 | 类型 | 必填 여부 |
Authorization | 用于API调用的认证令牌 (Bearer ) | string | Y |
响应主体
字段名 | 描述 | 类型 |
code | 响应结果代码 | 整数 |
message | 结果消息 | 字符串 |
data | 响应数据 | 对象 |
响应主体 > 数据
字段名 | 说明 | 类型 |
gameIndex | Hive 游戏索引 | 整数 |
socketAddress | Socket 服务器地址 | 字符串 |
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 游戏索引 | 整数 | Y |
playerId | Hive 玩家 ID | 长整型 | Y |
头部参数
字段名 | 说明 | 类型 | 必填 |
Authorization | 用于API调用的认证令牌 (Bearer ) | string | Y |
响应主体
字段名 | 说明 | 类型 |
code | 响应结果代码 | integer |
message | 结果消息 | string |
data | 响应数据 | object |
响应主体 > 数据
字段名 | 说明 | 类型 |
gameIndex | Hive 游戏索引 | 整数 |
playerId | Hive 玩家 ID | 长整型 |
channels | 渠道列表 | 数组 |
响应体 > 数据 > 渠道
字段名 | 说明 | 类型 |
channelId | 渠道 ID | 字符串 |
type | 渠道类型 (PRIVATE , PUBLIC , GROUP ) | 字符串 |
gameIndex | Hive 游戏索引 | 整数 |
owner | 渠道所有者 | 字符串 |
channelName | 渠道名称 | 字符串 |
maxMemberCount | 最大渠道参与人数 | 整数 |
regTime | 渠道创建时间 (UTC+0 基准, yyyy-MM-dd'T'HH:mm:ss.SSSZ 格式) | 字符串 |
请求示例
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"
}
// ... Channel
]
}
}
用户屏蔽列表查询
查询用户已阻止的用户列表。
请求 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 游戏索引 | 字符串 | 是 |
playerId | Hive 玩家 ID | 长整型 | 是 |
头部参数
字段名 | 说明 | 类型 | 是否必需 |
Authorization | 用于API调用的认证令牌 (Bearer ) | string | Y |
响应主体
字段名 | 说明 | 类型 |
code | 响应结果代码 | integer |
message | 结果消息 | string |
data | 响应数据 | object |
响应主体 > 数据
字段名 | 说明 | 类型 |
gameIndex | Hive 游戏索引 | 整数 |
playerId | Hive 玩家 ID | 长整型 |
blockedUsers | 阻止列表 | 数组 |
响应主体 > 数据 > 块
字段名 | 说明 | 类型 |
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"
},
// ... Block list
]
}
}
用户阻止
用户屏蔽特定用户。
请求 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 ) | string | 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}/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 | 响应结果代码 | 整数 |
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."
}