管理频道以及频道成员

大约 44 分钟

管理频道以及频道成员

频道(Channel)是一个社区下不同子话题的讨论分区,因此一个社区下可以有多个频道。社区创建时会自动创建默认频道,该频道中添加了所有社区成员,用于承载各种系统通知。从可见性角度看,频道社区分为公开和私密频道;从功能角度看,频道分为文字频道和语聊频道。用户可以根据自己需求创建频道。

超级社区中的频道基于即时通讯 IM 的群组或聊天室(频道 ID 为群组 ID 或聊天室 ID)创建,删除群组或聊天室时需注意以下几点:

1. 在环信控制台、调用 RESTful API 或者通过客户端删除群组或聊天室、群组或聊天室加人、踢人等操作时请谨慎操作,需确保操作的群组或者聊天室不是超级社区使用的。2. 如果将超级社区使用的频道对应的群组或者聊天室删除,会出现数据不一致情况,导致用户加入不了社区、频道、在频道内发不了消息等情况发生。3. 在清理群组或者聊天室数据时,需先确认要删除的群组 ID 或聊天室 ID 与超级社区的频道 ID 是否一致。你可以调用获取频道详情 API 确认要删除的群组或聊天室是否为超级社区的频道。如果是,请不要进行删除。4. 如果需要清理超级社区数据,调用删除社区open in new window删除频道open in new window等 API。

前提条件

要调用环信即时通讯 RESTful API,请确保满足以下要求:

公共参数

请求参数

参数类型是否必需描述
hostString环信即时通讯 IM 分配的用于访问 RESTful API 的域名。详见获取环信即时通讯 IM 的信息open in new window
org_nameString环信即时通讯 IM 为每个公司(组织)分配的唯一标识。详见获取环信即时通讯 IM 的信息open in new window
app_nameString你在环信即时通讯云控制台创建应用时填入的应用名称。详见获取环信即时通讯 IM 的信息open in new window
server_idString社区 ID。
channel_idString频道 ID。
user_idString用户 ID。
roleInt频道成员的角色:
- 0:频道所有者;
- 1:频道的普通成员。

提示

对于分页获取数据列表,若查询参数中的 limitcursor 均未设置,则服务器返回首页的数据列表。

响应参数

参数类型描述
ownerString频道所有者。
nameString频道名称。
typeInt频道类型:
- 0:公开频道;
- 1:私密频道。
modeInt频道模式:
- 0:文字频道;
- 1:语聊频道。
descriptionString频道描述。
customString频道的扩展信息。
max_usersLong频道最大成员数量。
rtc_nameStringRTC 频道名称。该名称在加入 RTC 频道时使用。若使用声网 RTC,该名称还用于生成 RTC Tokenopen in new window
该参数仅在创建语聊频道时返回,若创建语聊房频道时未指定 rtc_name,服务器将使用频道 ID 作为该参数的值返回。
current_users_countInt当前在频道中的成员数,仅在获取语聊房频道详情时返回。
default_channelInt是否为社区的默认频道:
- 0:否;
- 1:是。
user_idString环信用户 ID。
roleInt频道成员的角色:
- 0:频道所有者;
- 1:频道的普通成员。
createdLong频道的创建时间,Unix 时间戳,单位为毫秒。
server_idString社区 ID。
channel_category_idString频道分组 ID。
channel_idString频道 ID。

认证方式

环信即时通讯 RESTful API 要求 Bearer HTTP 认证。每次发送 HTTP 请求时,都必须在请求头部填入如下 Authorization 字段:

Authorization:Bearer ${YourAppToken}

为提高项目的安全性,环信使用 Token(动态密钥)对即将登录即时通讯系统的用户进行鉴权。即时通讯 RESTful API 推荐使用 app token 的鉴权方式,详见 使用环信 App Token 鉴权

创建和管理频道

创建频道

每个社区最多可以创建 100 个频道。一个频道只能加入一个频道分组。

HTTP 请求

POST https://{host}/{org_name}/{app_name}/circle/channel
路径参数

参数及描述详见公共参数open in new window

请求 header
参数类型是否必需描述
Content-TypeString内容类型。请填 application/json
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。
请求 body
参数类型是否必需描述
server_idString社区 ID。
channel_category_idString频道分组 ID。如果指定频道分组 ID,创建的频道将添加到该分组下;若不指定,则频道添加至社区默认频道分组中。
nameString频道名称,长度不能超过 50 个字符。
typeInt频道类型:
- (默认)0:公开频道;
- 1:私密频道。
modeInt频道模式:
- (默认)0:文字频道;
- 1:语聊频道。
maxUsersLong频道最大成员数量。
- 对于语聊频道(即 mode1),该参数的取值范围为 [1,20],默认值为 8
- 对于文字频道,该参数的取值范围为 [1,2000],默认值为 2000。如需要提高上限请联系商务。
descriptionString频道描述,长度不能超过 500 个字符。
customString频道扩展信息,例如可以给社区添加业务相关的标记,长度不能超过 500 个字符。
rtc_nameStringRTC 频道名称,长度不能超过 50 个字符。该名称在加入 RTC 频道时使用,仅在创建语聊频道时返回。若使用声网 RTC,该名称还用于生成 RTC Tokenopen in new window
若创建语聊频道时未指定 rtc_name,服务器将使用频道 ID 作为该参数的值返回。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
channelJSON频道详情。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例

创建 IM 频道:

<YourAppToken> 替换为你在服务端生成的 App Token
curl -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel'
-d '{
    "server_id" : "19VM9oPBasxxxxxx0tvWViEsdM",
    "name" : "chat channel",
    "type" : 0,
    "mode":0,
    "max_users" : 200,
    "description" : "chat Channel",
    "custom" : "custom"
}'

创建语聊房频道:

<YourAppToken> 替换为你在服务端生成的 App Token
curl -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel'
-d '{
    "server_id" : "19KM9oPBasxxxxxx0tvWViVhgk",
    "name" : "voice chatroom channel",
    "type" : 0,
    "mode":1,
    "max_users" : 10,
    "description" : "voice chatroom Channel",
    "custom" : "custom",
    "rtc_name" : "150986"
}'
响应示例

创建 IM 频道的响应:

{
    "code": 200,
    "channel": {
        "owner": "user1",
        "name": "chat channel",
        "type": 0,
        "mode": 0,
        "description": "chat channel",
        "custom": "custom",
        "created": 1675845650856,
        "server_id": "19VM9oPBasxxxxxx0tvWViEsdM",
        "channel_category_id": "77a9860xxxxxx2b54881025861c",
        "channel_id": "2059xxxxxx1542",
        "max_users": 200,
        "default_channel": 0
    },
    "channel_id": "2059xxxxxx1542"
}

创建语聊房频道的响应:

{
    "code": 200,
    "channel": {
        "owner": "user1",
        "name": "voice chatroom Channel",
        "type": 0,
        "mode": 1,
        "description": "voice chatroom Channel",
        "custom": "custom",
        "created": 1675845650856,
        "server_id": "19VM9oPBasxxxxxx0tvWViEsdM",
        "channel_category_id": "77a9860xxxxxx2b54881025861c",
        "channel_id": "2059xxxxxx1590",
        "max_users": 10,
        "rtc_name" : "150986",
        "default_channel": 0
    },
    "channel_id": "2059xxxxxx1590"
}

修改频道信息

修改指定频道的信息。

HTTP 请求

PUT https://{host}/{org_name}/{app_name}/circle/channel/{channel_id}?serverId={server_id}
路径参数

参数及描述详见 公共参数open in new window

查询参数
参数类型是否必需描述
server_idString频道所属社区的 ID。
请求 header
参数类型是否必需描述
Content-TypeString内容类型。请填 application/json
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。
请求 body
参数类型是否必需描述
nameString频道名称,长度不能超过 50 个字符。
typeInt频道类型:
- 0:公开频道;
- 1:私密频道。
maxUsersLong频道最大成员数量。
- 对于语聊房频道,该参数的取值范围为 [1,20]。
- 对于其他模式的频道,该参数的取值范围为 [1,2000],如需要提高上限请联系商务。
descriptionString频道描述,长度不能超过 500 个字符。
customString频道的扩展信息,例如可以给社区添加业务相关的标记,长度不能超过 500 个字符。
rtc_nameString目前该名称用于使用声网 RTC 时,生成 Token 以及端上加入声网 RTC 频道时使用,长度不能超过 50 个字符。该字段目前仅在修改语聊房频道时才有效。若创建语聊房频道时未指定 rtc_name,服务器将使用频道 ID 作为 rtc_name 的值返回。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
channelJson频道详情。

其他字段及描述详见公共参数open in new window

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X PUT -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel/XXX' -d '{
 		"name" : "chat channel",
 		"max_users" : 200,
 		"description" : "chat Channel",
  	"custom" : "custom"
}'

响应示例

{
    "code": 200,
    "channel": {
        "owner": "user1",
        "name": "chat channel",
        "type": 0,
        "mode": 0,
        "description": "chat channel",
        "custom": "custom",
        "created": 1675845650856,
        "server_id": "19VM9oPBasxxxxxx0tvWViEsdM",
        "channel_category_id": "77a9860xxxxxx2b54881025861c",
        "channel_id": "2059xxxxxx1542",
        "max_users": 200,
        "default_channel": 0
    }
}

查询指定频道详情

查询指定的频道详情。

HTTP 请求

GET https://{host}/{org_name}/{app_name}/circle/channel/{channel_id}?serverId={server_id}
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否必需描述
server_idString频道所属社区的 ID。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
channelJSON频道详情。

其他字段及描述详见公共参数open in new window

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel?serverId=XXX'
响应示例

查询 IM 频道的响应:

{
    "code": 200,
    "channel": {
        "owner": "user1",
        "name": "chat channel",
        "type": 0,
        "mode": 0,
        "description": "chat channel",
        "custom": "custom",
        "created": 1675845650856,
        "server_id": "19VM9oPBasxxxxxx0tvWViEsdM",
        "channel_category_id": "77a9860xxxxxx2b54881025861c",
        "channel_id": "2059xxxxxx1542",
        "max_users": 200,
        "default_channel": 0
    }
}

查询语聊房频道的响应:

{
    "code": 200,
    "channel": {
        "owner": "user1",
        "name": "voice chatroom channel",
        "type": 0,
        "mode": 1,
        "description": "voice chatroom channel",
        "custom": "custom",
        "created": 1675845650856,
        "server_id": "19VM9oPBasxxxxxx0tvWViEsdM",
        "channel_category_id": "77a9860xxxxxx2b54881025861c",
        "channel_id": "2059xxxxxx1542",
        "rtc_name" : "150986",
        "max_users": 10,
        "current_users_count" : 2,
        "default_channel": 0
    }
}

获取单个社区下的所有公开频道

分页获取单个社区下的所有公开频道。

HTTP 请求

GET https://{host}/{org_name}/{app_name}/circle/channel/public?serverId={server_id}&limit={limit}&cursor={cursor} 
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否所需描述
server_idString频道所属社区的 ID。
limitInt每页获取的频道数量。取值范围为 [1,20],默认值为 20。该参数仅在分页查询时设置。
cursorString游标,指定查询的开始位置。该参数仅在分页查询时设置。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
countInt获取到的频道数量。
channelsList获取到的频道详情列表。
cursorString游标,指定下次查询的起始位置。

其他字段及描述详见公共参数open in new window

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel/public?serverId=XXX&limit=1&cursor=XXX'
响应示例
{
    "code": 200,
    "count": 1,
    "channels": [
        {
            "owner": "user1",
        		"name": "chat channel",
        		"type": 0,
        		"mode": 0,
        		"description": "chat channel",
        		"custom": "custom",
        		"created": 1675845650856,
        		"server_id": "19VM9oPBasxxxxxx0tvWViEsdM",
        		"channel_category_id": "77a9860xxxxxx2b54881025861c",
        		"channel_id": "2059xxxxxx1542",
        		"max_users": 200,
        		"default_channel": 0
        }
    ],
    "cursor": "ZGNiMjRmNGY1YjczYjlhYTNkYjk1MDY2YmEyNzFmODQ6aXXXXXXXXXXXXXX"
}

获取用户在社区创建的频道列表

查询用户在社区创建的频道列表。

HTTP 请求

GET https://{host}/{org_name}/{app_name}/circle/channel/user/{user_id}/created/channels?serverId={server_id}&limit={limit}&cursor={cursor}
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否必需描述
server_idString频道所属社区的 ID。
limitInt每页获取的频道数量。取值范围为 [1,20],默认值为 20。该参数仅在分页查询时设置。
cursorString游标,指定数据查询的开始位置。该参数仅在分页查询时设置。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${YourAppToken},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
countInt获取到的频道数量。
channelsList获取到的频道详情列表。
cursorString游标,指定下次查询的开始位置。

其他字段及描述详见公共参数open in new window

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel/user/XXX/created/channels?serverId=XXX&limit=1&cursor=XXX'
响应示例
{
    "code": 200,
    "count": 1,
    "channels": [
        {
            "owner": "user1",
        		"name": "chat channel",
        		"type": 0,
        		"mode": 0,
        		"description": "chat channel",
        		"custom": "custom",
        		"created": 1675845650856,
        		"server_id": "19VM9oPBasxxxxxx0tvWViEsdM",
        		"channel_category_id": "77a9860xxxxxx2b54881025861c",
        		"channel_id": "2059xxxxxx1542",
        		"max_users": 200,
        		"default_channel": 0
        }
    ],
    "cursor": "ZGNiMjRmNGY1YjczYjlhYTNkYjk1MDY2YmEyNzFmODQ6aXXXXXXXXXXXXXX"
}

获取单个用户已加入的频道列表

分页获取单个用户已加入的频道列表,包括公开和私密频道。

HTTP 请求

GET https://{host}/{org_name}/{app_name}/circle/channel/user/joined/list?userId={user_id}&serverId={server_id}&limit={limit}&cursor={cursor} 
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否所需描述
user_IdString用户 ID。
server_idString频道所属社区的 ID。
limitInt每页获取的频道数量。取值范围为 [1,20],默认值为 20。该参数仅在分页查询时设置。
cursorString游标,指定数据查询的开始位置。该参数仅在分页查询时设置。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
channelsList获取到的频道详情列表。
countInt获取到的频道数量。
cursorString游标,指定下次查询的开始位置。

其他字段及描述详见公共参数open in new window

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel/user/joined/list?userId=XXX&serverId=XXX&limit=1&cursor=XXX'
响应示例
{
    "code": 200,
    "count": 1,
    "channels": [
        {
            "owner": "user1",
        		"name": "chat channel",
        		"type": 0,
        		"mode": 0,
        		"description": "chat channel",
        		"custom": "custom",
        		"created": 1675845650856,
        		"server_id": "19VM9oPBasxxxxxx0tvWViEsdM",
        		"channel_category_id": "77a9860xxxxxx2b54881025861c",
        		"channel_id": "2059xxxxxx1542",
        		"max_users": 200,
        		"default_channel": 0
        }
    ],
    "cursor": "ZGNiMjRmNGY1YjczYjlhYTNkYjk1MDY2YmEyNzFmODQ6aXXXXXXXXXXXXXX"
}

获取单个社区下的所有私密频道

分页获取单个社区下的所有私密频道。

HTTP 请求

GET https://{host}/{org_name}/{app_name}/circle/channel/private?serverId={server_id}&limit={limit}&cursor={cursor} 
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否所需描述
server_idString频道所属社区的 ID。
limitInt每页获取的私密频道数量。取值范围为 [1,20],默认值为 20。该参数仅在分页查询时设置。
cursorString游标,指定查询的开始位置。该参数仅在分页查询时设置。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
countInt获取到的频道数量。
channelsList获取到的私密频道详情列表。
cursorString游标,指定下次查询的开始位置。

其他字段及描述详见公共参数open in new window

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel/private?serverId=XXX&limit=1&cursor=XXX'
响应示例
{
    "code": 200,
    "count": 1,
    "channels": [
        {
            "owner": "user1",
        		"name": "private chat channel",
        		"type": 1,
        		"mode": 0,
        		"description": "private chat channel",
        		"custom": "custom",
        		"created": 1675845650856,
        		"server_id": "19VM9oPBasxxxxxx0tvWViEsdM",
        		"channel_category_id": "77a9860xxxxxx2b54881025861c",
        		"channel_id": "2065xxxxxx1590",
        		"max_users": 100,
        		"default_channel": 0
        }
    ],
    "cursor": "ZGNiMjRmNGY1YjczYjlhYTNkYjk1MDY2YmEyNzFmODQ6aXXXXXXXXXXXXXX"
}

删除频道

删除指定的频道。

HTTP 请求

DELETE https://{host}/{org_name}/{app_name}/circle/channel/{channel_id}?serverId={server_id}
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否所需描述
server_idString频道所属社区的 ID。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X DELETE -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel/XXX?serverId=XXX'
响应示例
{
    "code": 200
}

发送消息

通过 RESTful API 在频道中发送消息与在群组中发送消息的方式类似,唯一的区别在于请求体中的 to 参数需要设置为频道 ID,并且发送的消息不会写入会话列表。详见 发送群聊消息

管理消息 Reaction

添加消息 Reaction

添加消息 Reaction。

HTTP 请求

POST https://{host}/{org_name}/{app_name}/circle/reaction/user/{user_id}
路径参数
参数类型是否必需描述
user_idString用户 ID。

其他参数及描述详见公共参数open in new window

请求 header
参数类型是否必需描述
Content-TypeString内容类型。请填 application/json
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。
请求 body
参数类型是否必需描述
message_idString消息 ID。
messageString表情 ID,与客户端一致。长度不可超过 128 个字符。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
reaction_idStringReaction ID。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/reaction/user/{user_id}'
-d '{
  "message_id" : "131345390",
  "message" : "message123456"
}'
响应示例
{
  "code" : 200,
  "reaction_id" : "15890012560"
}

获取指定消息的 Reaction

获取指定消息的 Reaction。

HTTP 请求

GET https://{host}/{org_name}/{app_name}/circle/reaction/user/{user_id}?msgIdList={message_id}&channelId={channel_id}
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否必需描述
msgIdListStringReaction 所属消息的 ID。
channelIdString消息所属频道的 ID。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
countIntReaction 数量。
reactions.msgIdStringReaction 所属消息的 ID。
reactionListListReaction 列表及其详细信息。
reactionList.reactionIdStringReaction ID。
reactionList.messageStringReaction 名称。
reactionList.stateBool发送该请求的用户是否向消息添加了 Reaction:
- true:是;
- false:否。
reactionList.countInt向消息添加了该 Reaction 的用户数量。
reactionList.userListList添加了该 Reaction 的用户 ID 列表。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X DELETE -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/reaction/user/XXX?msgIdList=XXX&channelId=XXX'
响应示例
{
    "code":200,
    "count" : 1,
    "reactions":[
        {
            "msgId":"131345390",
            "reactionList":[
                {
                    "reactionId":"944330310986837168",
                    "message":"message123456",
                    "count":2,
                    "state":"该用户是否追加了此 reaction",
                    "userList":[
                        "user1",
                        "user2"
                    ]
                }
            ]
        }
    ]
}

删除指定消息的 Reaction

删除指定消息的 Reaction。

HTTP 请求

DELETE https://{host}/{org_name}/{app_name}/circle/reaction/user/{user_id}?messageId={message_id}&message={message}
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否必需描述
message_idStringReaction 所属消息的 ID。
messageString要移除的表情的 ID。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X DELETE -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/reaction/user/XXX?messageId=XXX&message=XXX'
响应示例
{
  "code" : 200
}

管理频道成员

将用户加入频道

将用户加入频道。

HTTP 请求

POST https://{host}/{org_name}/{app_name}/circle/channel/{channel_id}/join?userId={user_id}&serverId={server_id}
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否必需描述
user_idString用户 ID。
server_idString社区 ID。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
channelJSON频道详情。

其他字段及描述详见公共参数open in new window

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X POST -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel/XXX/join?userId=XXX&serverId=XXX'
响应示例
{
    "code": 200,
    "channel": {
        "owner": "user1",
        "name": "chat channel",
        "type": 0,
        "mode": 0,
        "description": "chat channel",
        "custom": "custom",
        "created": 1675845650856,
        "server_id": "19VM9oPBasxxxxxx0tvWViEsdM",
        "channel_category_id": "77a9860xxxxxx2b54881025861c",
        "channel_id": "2059xxxxxx1542",
        "max_users": 200,
        "default_channel": 0
    }
}

将成员移出频道

将指定成员移出频道。

HTTP 请求

POST https://{host}/{org_name}/{app_name}/circle/channel/{channel_id}/user/remove?userId={user_id}&serverId={server_id}
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否必需描述
user_idString用户 ID。
server_idString社区 ID。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X POST -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel/XXX/user/remove?userId=XXX&serverId=XXX'
响应示例
{
    "code": 200
}

批量移除频道成员

一次移除多名频道成员。如果所有被移除用户均不是频道成员,则移除失败,并返回错误。移除后,这些成员也会被移除其在该频道中加入的子区。

单个请求最多可移除 20 个频道成员。

HTTP 请求

POST https://{host}/{org_name}/{app_name}/circle/channel/{channel_id}/users/remove
路径参数

参数及描述详见公共参数open in new window

请求 header
参数类型是否必需描述
Content-TypeString内容类型。请填 application/json
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。
请求 body
参数类型是否必需描述
server_idString社区 ID。
usernamesList被移除频道成员的用户 ID 列表,不能超过 20 个。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
dataList批量移除频道成员的信息,包含被移除的频道成员的用户 ID 和移除结果。
data.userString被移除的频道成员的用户 ID。
data.resultBool频道成员是否被成功移除:
- true:移除成功;
- false:移除失败。失败的原因可能是用户不在频道所属的社区中、用户不在频道中、用户为频道所有者等。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
// 将 <YourAppToken> 替换为你在服务端生成的 App Token
curl -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel/XXX/users/remove'
-d '{
    "server_id" : "19VM9oPBasxxxxxx0tvWViEsdM",
    "usernames" : [
    	"u1",
    	"u3",
    	"u5"
    ]
}'
响应示例
{
    "code": 200,
    "data": [
        {
            "user": "u1",
            "result": true
        },
        {
            "user": "u5",
            "result": true
        },
        {
            "user": "u3",
            "result": true
        }
    ]
}

查询用户是否在频道

查询用户是否在频道中。

HTTP 请求

GET https://{host}/{org_name}/{app_name}/circle/channel/{channel_id}/user/{user_id}?serverId={server_id}
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否所需描述
server_idString频道所属社区的 ID。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
resultBoolean查询结果:
- true:用户在频道中;
- false:用户不在频道中。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel/XXX/user/XXX?serverId=XXX'
响应示例
{
    "code": 200,
    "result": true
}

查询频道中指定成员的社区角色

查询频道中指定成员的社区角色。社区角色包社区所有者、管理员和普通成员。

HTTP 请求

GET https://{host}/{org_name}/{app_name}/circle/channel/{channel_id}/user/role?serverId={server_id}&userId={user_id}
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否必需描述
server_idString频道所属社区的 ID。
user_idInt需要查询角色的用户 ID。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
roleInt用户在社区中的角色:
- 0: 所有者;
- 1:管理员;
- 2:普通成员。

其他字段及描述详见公共参数open in new window

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
// 将 <YourAppToken> 替换为你在服务端生成的 App Token
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel/XXX/user/role?serverId=XXX&userId=XXX'
响应示例
{
    "code": 200,
    "role": 2
}

获取频道的成员列表

获取指定频道的成员列表:

  • 创建语聊频道时,创建者不加入频道。因此,频道创建者不算入频道成员数量,查询频道成员列表时不返回频道创建者。

  • 创建文字频道时,创建者直接加入频道。因此,频道创建者算入频道成员数量,查询频道成员列表返回频道创建者。

HTTP 请求

GET https://{host}/{org_name}/{app_name}/circle/channel/{channel_id}/users?serverId={server_id}&limit={limit}&cursor={cursor} 
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否所需描述
server_idString频道所属社区的 ID。
limitInt每页获取的成员数量。取值范围为 [1,20],默认值为 20。该参数仅在分页查询时设置。
cursorString游标,指定查询的开始位置。该参数仅在分页查询时设置。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
countInt获取到的成员数量。
usersList获取到的成员详情列表。
users.user_idString用户 ID
users.roleInt用户在社区中的角色:
- 0: 所有者;
- 1:管理员;
- 2:普通成员。
cursorString游标,指定下次数据查询的起始位置。

其他字段及描述详见公共参数open in new window

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel/XXX/users?serverId=XXX&limit=1&cursor=XXX'
响应示例
{
    "code": 200,
    "count": 1,
    "users": [
        {
            "user_id" : "user1",
            "role" : 0
        }
    ],
    "cursor": "ZGNiMjRmNGY1YjczYjlhYTNkYjk1MDY2YmEyNzFmODQ6aXXXXXXXXXXXXXX"
}

获取频道的禁言列表

获取频道的禁言列表。

HTTP 请求

GET https://{host}/{org_name}/{app_name}/circle/channel/{channel_id}/user/mute/list?serverId={server_id}&limit={limit}&cursor={cursor}
路径参数
参数类型是否所需描述
server_idString频道所属社区的 ID。

其他参数及描述,详见公共参数open in new window

查询参数
参数类型是否必需描述
server_idString频道所属社区的 ID。
limitInt每页获取频道内被禁言的用户数量。取值范围为 [1,20],默认值为 20。该参数仅在分页查询时设置。
cursorString查询游标,指定下次查询的开始位置。该参数仅在分页查询时设置。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
mute_usersList被禁言用户的详情列表。
mute_users.expireLong禁言的到期时间,Unix 时间戳,单位为毫秒。
mute_users.userString被禁言的成员的用户 ID。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel/XXX/user/mute/list?serverId=XXX&limit=1&cursor=XXX'
响应示例
{
  "code" : 200,
  "count" : 2,
  "mute_users" : [
    {
      "expire" : 86400000,
      "user" : "u1"
    },
    {
      "expire" : 86400000,
      "user" : "u2"
    }
  ]
}

将成员加入频道禁言列表

将成员加入频道禁言列表。成员被禁言后,将无法在频道中发送消息。

HTTP 请求

POST https://{host}/{org_name}/{app_name}/circle/channel/{channel_id}/user/mute
路径参数

其它参数及描述详见公共参数open in new window

请求 header
参数类型是否必需描述
Content-TypeString内容类型。请填 application/json
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。
请求 body
参数类型是否必需备注
server_idString社区 ID。
user_idString被禁言的成员的用户 ID。
durationLong禁言时长,单位为毫秒。若不传该参数为永久禁言。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel/XXX/user/mute' -d '{
  "server_id" : "19UyPIsiwxxxxxxxgLrfI9Z",
  "user_id" : "u1",
  "duration" : 86400
}'
响应示例
{
    "code": 200
}

将成员移出频道禁言列表

将成员移出频道禁言列表。成员被解除禁言后,可以在频道中发送消息。

HTTP 请求

DELETE https://{host}/{org_name}/{app_name}/circle/channel/{channel_id}/user/mute?serverId={server_id}&userId={user_id}
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否必需描述
server_idString频道所属社区的 ID。
user_idString要禁言的用户 ID。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。

其他字段及描述详见公共参数open in new window

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X DELETE -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/channel/XXX/user/mute?serverId=XXX&userId=XXX'
响应示例
{
    "code": 200
}

管理子区

创建子区

创建子区。

HTTP 请求

POST https://{host}/{org_name}/{app_name}/circle/thread
路径参数

参数及描述详见公共参数open in new window

请求 header
参数类型是否必需描述
Content-TypeString内容类型。请填 application/json
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。
请求 body
参数类型是否必需备注
channel_idString频道 ID。
user_idString用户 ID。
nameString子区名称。
message_idString消息 ID。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
thread_idString子区 ID。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/thread' -d '{
  "channel_id" : "156900086",
  "user_id" : "user1",
  "message_id" : 0,
  "name" : "thread-name"
}'
响应示例
{
  "code" : 200,
  "thread_id" : "15890012560"
}

修改子区信息

修改指定子区的信息。

HTTP 请求

PUT https://{host}/{org_name}/{app_name}/circle/thread/{thread_id}
路径参数

参数及描述详见公共参数open in new window

请求 header
参数类型是否必需描述
Content-TypeString内容类型。请填 application/json
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。
请求 body
参数类型是否必需备注
nameString子区名称。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X PUT -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/thread/XXX' -d '{
  "name" :"thread-name"
}'
响应示例
{
  "code" : 200
}

查询子区的详情

查询指定子区的详情。

HTTP 请求

GET https://{host}/{org_name}/{app_name}/circle/thread/{thread_id}
路径参数

其它参数及描述详见公共参数open in new window

请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
idString子区 ID。
msgIdString子区的父消息 ID。
channelIdString子区所属频道的 ID。
ownerString子区创建者的用户 ID。
createdLong子区创建时间,Unix 时间戳,单位为毫秒。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/thread/XXX'
响应示例
{
    "code": 200,
    "id" : "1895600",
    "msgId" : "198008034121000",
    "channelId" : "156009089",
    "owner" : "user1",
    "created" : 1650856033420
}

删除子区

删除指定的子区。

HTTP 请求

DELETE https://{host}/{org_name}/{app_name}/circle/thread/{thread_id}
路径参数

参数及描述详见公共参数open in new window

请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X DELETE -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/thread/XXX'
响应示例
{
    "code": 200
}

加入子区

加入指定的子区。

HTTP 请求

POST https://{host}/{org_name}/{app_name}/circle/thread/{thread_id}/user/join?userId={user_id}
路径参数

参数及描述详见公共参数open in new window

请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X POST -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/thread/XXX/user/join?userId=XXX'
响应示例
{
  "code" : 200
}

将成员移出子区

将成员移出指定的子区。

HTTP 请求

POST https://{host}/{org_name}/{app_name}/circle/thread/{thread_id}/user/remove?userId={user_id}
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否必需描述
user_idString要移出子区的用户 ID。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X POST -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/thread/XXX/user/remove?userId=XXX'
响应示例
{
  "code" : 200
}

用户获取自己创建的子区

用户获取自己创建的子区。

HTTP 请求

GET https://{host}/{org_name}/{app_name}/circle/thread/created?userId={user_id}&channelId={channel_id}&limit={limit}&cursor={cursor}
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否所需描述
user_idString用户 ID。
channel_idString子区所属频道的 ID。
limitInt每页获取的频道数量。取值范围为 [1,20],默认值为 20。该参数仅在分页查询时设置。
cursorString游标,指定查询的开始位置。该参数仅在分页查询时设置。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
threadsList获取到的子区详情列表。
countInt获取到的子区数量。
threads.idString子区 ID。
threads.msgIdString子区的父消息 ID。
threads.channelIdString子区所属频道的 ID。
threads.ownerString子区创建者的用户 ID。
threads.createdLong子区创建时间,Unix 时间戳,单位为毫秒。
cursorString游标,指定下次查询的开始位置。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/thread/created?userId=XXX&channelId=XXX&limit=1&cursor=XXX'
响应示例
{
  "code" : 200,
  "threads" : [
    {
      "id" : "1895600",
      "msgId" : "198008034121000",
      "channelId" : "156009089",
      "owner" : "user1",
      "created" : 1650856033420
    }
    ],
     "cursor" : "ZGNiMjRmNGY1YjczYjlhYTNkYjk1MDY2YmEyNzFmODQ6aW06ZGlzY29yZDo2MjI0MjEwMiM5MDoy"
}

用户获取频道中的子区

分页获取频道中的子区。

HTTP 请求

curl -X GET https://{host}/{org_name}/{app_name}/circle/thread/list?channelId={channel_id}&limit={limit}&cursor={cursor}
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否所需描述
channel_idString子区所属频道的 ID。
limitInt每页获取的子区数量。取值范围为 [1,20],默认值为 20。该参数仅在分页查询时设置。
cursorString游标,指定查询的开始位置。该参数仅在分页查询时设置。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
threadsList获取到的子区详情列表。
threads.idString子区 ID。
threads.msgIdString子区的父消息 ID。
threads.channelIdString子区所属频道的 ID。
threads.ownerString子区创建者的用户 ID。
threads.createdLong子区创建时间,Unix 时间戳,单位为毫秒。
cursorString游标,指定下次查询的开始位置。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/thread/list?channelId=XXX&limit=1&cursor=XXX'
响应示例
{
  "code" : 200,
  "threads" : [
    {
       "id" : "1895600",
       "msgId" : "198008034121000",
       "channelId" : "156009089",
       "owner" : "user1",
       "created" : 1650856033420
    }
    ],
     "cursor" : "ZGNiMjRmNGY1YjczYjlhYTNkYjk1MDY2YmEyNzFmODQ6aW06ZGlzY29yZDo2MjI0MjEwMiM5MDoy"
}

用户获取频道中加入的子区

用户获取频道中加入的子区。

HTTP 请求

GET https://{host}/{org_name}/{app_name}/circle/thread/joined?userId={user_id}&channelId={channel_id}&limit={limit}&cursor={cursor}
路径参数

参数及描述详见公共参数open in new window

查询参数
参数类型是否所需描述
user_idString用户 ID。
channel_idString子区所属频道的 ID。
limitInt每页获取的子区数量。取值范围为 [1,20],默认值为 20。该参数仅在分页查询时设置。
cursorString游标,指定查询的开始位置。该参数仅在分页查询时设置。
请求 header
参数类型是否必需描述
AcceptString内容类型。请填 application/json
AuthorizationString该管理员的鉴权 token,格式为 Bearer ${token},其中 Bearer 是固定字符,后面加英文空格,再加获取到的 token 值。

HTTP 响应

响应 body

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
codeInt环信超级社区的服务状态码。
threadsList获取到的子区详情列表。
threads.idString子区 ID。
threads.msgIdString子区的父消息 ID。
threads.channelIdString子区所属频道的 ID。
threads.ownerString子区创建者的用户 ID。
threads.createdLong子区创建时间,Unix 时间戳,单位为毫秒。
cursorString游标,指定下次查询的开始位置。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考响应状态码open in new window了解可能的原因。

示例

请求示例
<YourAppToken> 替换为你在服务端生成的 App Token
curl -X GET -H 'Accept: application/json' -H 'Authorization: Bearer <YourAppToken>' 'http://XXX/XXX/XXX/circle/thread/joined?userId={user_id}&channelId=XXX&limit=1&cursor=XXX'
响应示例
{
  "code" : 200,
  "threads" : [
    {
        "id" : "1895600",
        "msgId" : "198008034121000",
        "channelId" : "156009089",
        "owner" : "user1",
        "created" : 1650856033420
    }
    ],
     "cursor" : "ZGNiMjRmNGY1YjczYjlhYTNkYjk1MDY2YmEyNzFmODQ6aW06ZGlzY29yZDo2MjI0MjEwMiM5MDoy"
}