Skip to content

身份组 API

身份组(Role)是频道中的权限角色,用于对成员进行分组管理。

get_guild_roles

获取频道身份组列表。

源码位置: botpy/api.py 第 58 行

API 路由: GET /guilds/{guild_id}/roles

python
async def get_guild_roles(guild_id: str) -> GuildRoles
参数类型默认值说明
guild_idstr必填频道 ID

返回: GuildRoles

GuildRoles 字段:

字段类型说明
guild_idstr频道 ID
rolesList[Role]身份组列表
role_num_limitstr身份组数量限制

create_guild_role

创建频道身份组。

源码位置: botpy/api.py 第 71 行

API 路由: POST /guilds/{guild_id}/roles

python
async def create_guild_role(
    guild_id: str,
    **fields
) -> GuildRole
参数类型默认值说明
guild_idstr必填频道 ID

可选 fields:

字段类型说明
namestr身份组名称
colorintARGB 十六进制颜色值转换后的十进制数值
hoistint在成员列表中单独展示:0 否,1

返回: GuildRole

颜色转换:

python
from botpy.ext.convert_color import start

# RGB tuple → int
color = start((255, 200, 100))

# HEX string → int
color = start("#FFC864")

update_guild_role

修改频道身份组。

源码位置: botpy/api.py 第 89 行

API 路由: PATCH /guilds/{guild_id}/roles/{role_id}

python
async def update_guild_role(guild_id: str, role_id: str, **fields) -> GuildRole
参数类型默认值说明
guild_idstr必填频道 ID
role_idstr必填要修改的身份组 ID

可选 fields:

字段类型说明
namestr身份组名称
colorintARGB 颜色(十进制)
hoistint是否在成员列表单独展示(0/1)

返回: GuildRole

delete_guild_role

删除频道身份组。

源码位置: botpy/api.py 第 108 行

API 路由: DELETE /guilds/{guild_id}/roles/{role_id}

python
async def delete_guild_role(guild_id: str, role_id: str) -> str
参数类型默认值说明
guild_idstr必填频道 ID
role_idstr必填要删除的身份组 ID

返回: 成功执行返回 None

create_guild_role_member

增加频道身份组成员。

源码位置: botpy/api.py 第 122 行

API 路由: PUT /guilds/{guild_id}/members/{user_id}/roles/{role_id}

python
async def create_guild_role_member(
    guild_id: str,
    role_id: str,
    user_id: str,
    channel_id: str = None,
) -> str
参数类型默认值说明
guild_idstr必填频道 ID
role_idstr必填身份组 ID
user_idstr必填要添加到身份组的用户 ID
channel_idstrNone当身份组 ID 为 5(子频道管理员)时,需指定具体的子频道 ID

返回: 成功执行返回 None

delete_guild_role_member

删除频道身份组成员。

源码位置: botpy/api.py 第 152 行

API 路由: DELETE /guilds/{guild_id}/members/{user_id}/roles/{role_id}

python
async def delete_guild_role_member(
    guild_id: str,
    role_id: str,
    user_id: str,
    channel_id: str = None,
) -> str
参数类型默认值说明
guild_idstr必填频道 ID
role_idstr必填身份组 ID
user_idstr必填要移除的用户 ID
channel_idstrNone当身份组 ID 为 5(子频道管理员)时,需指定具体的子频道 ID

返回: 成功执行返回 None