Skip to Content
OpenAPI 接入成员与邀请管理

成员与邀请管理

查询团队成员

  • 请求方法:GET
  • 请求路径:/geo/team/member/list

说明:include_brand_permissions 控制是否返回成员的品牌权限摘要;该接口不支持按 brand_id 筛选。

请求参数:

入参类型含义是否必填
team_idstring团队 ID是
pageint页码,默认 1否
page_sizeint默认 20,最大 500否
keywordstring成员搜索关键字否
roleint角色筛选:1=管理员;2=成员;3 为已废弃历史角色否
include_brand_permissionsbool是否返回品牌权限摘要否

请求示例:

{ "team_id": 2001, "page": 1, "page_size": 20, "include_brand_permissions": true }

响应参数:

返回值类型含义
codeint0 表示成功
msgstring返回消息
data.membersobject 数组成员列表
data.members[].user_id / user_namestring成员 UID / 名称
data.members[].roleint1=管理员;2=成员
data.members[].joined_atstring加入时间;内网为 YYYY-MM-DD,海外为 UTC RFC 3339
data.members[].brand_permissionsobject 数组按请求返回的品牌权限摘要
data.members[].brand_permissions[].brand_id / brand_namestring品牌 ID / 名称
data.members[].brand_permissions[].brand_role / effective_brand_roleint配置 / 生效品牌角色:1=管理员,2=编辑,3=查看者,0=无权限
data.totalstring (int64)成员总数

响应示例:

{ "code": 0, "msg": "success", "data": { "members": [ { "user_id": "4001", "user_name": "测试成员A", "role": 2, "joined_at": "2026-10-14", "brand_permissions": [ { "brand_id": "1001", "brand_name": "测试品牌A", "brand_role": 3, "effective_brand_role": 3 } ] } ], "total": "1" } }

查询成员有效品牌权限

  • 请求方法:POST
  • 请求路径:/geo/team/member/permissions/get

请求参数:

入参类型含义是否必填
team_idstring团队 ID是
target_uidstring目标成员 UID是

请求示例:

{ "team_id": "2001", "target_uid": "4001" }

响应参数:

返回值类型含义
codeint0 表示成功
msgstring返回消息
data.team_roleint团队角色:1=管理员;2=成员
data.permissionsobject 数组各品牌权限
data.permissions[].brand_id / brand_namestring品牌 ID / 名称
data.permissions[].configured_brand_role / effective_brand_roleint配置 / 生效角色:1=管理员,2=编辑,3=查看者,0=无权限
data.permissions[].sourcestringteam_admin、direct、legacy_fallback 或 none

响应示例:

{ "code": 0, "msg": "success", "data": { "team_role": 2, "permissions": [ { "brand_id": "1001", "brand_name": "测试品牌A", "configured_brand_role": 3, "effective_brand_role": 3, "source": "direct" } ] } }

修改成员团队角色

  • 请求方法:POST
  • 请求路径:/geo/team/member/role/update

请求参数:

入参类型含义是否必填
team_idstring团队 ID是
target_uidstring目标成员 UID是
roleint1 管理员;2 成员。省略或传 0 按成员处理,可能将管理员降为成员;请显式传入目标角色否

请求示例:

{ "team_id": "2001", "target_uid": "4001", "role": 2 }

响应参数:

返回值类型含义
codeint0 表示成功
msgstring返回消息
dataobject成功时为空对象

响应示例:

{ "code": 0, "msg": "success", "data": {} }

移除团队成员

  • 请求方法:POST
  • 请求路径:/geo/team/member/remove

说明:不能移除团队的最后一个成员或最后一个管理员。

请求参数:

入参类型含义是否必填
team_idstring团队 ID是
target_uidstring目标成员 UID是

请求示例:

{ "team_id": "2001", "target_uid": "4001" }

响应参数:

返回值类型含义
codeint0 表示成功
msgstring返回消息
dataobject成功时为空对象

响应示例:

{ "code": 0, "msg": "success", "data": {} }

查询团队邀请记录

  • 请求方法:GET
  • 请求路径:/geo/team/invite/list

请求参数:

入参类型含义是否必填
team_idstring团队 ID是

请求示例:

{ "team_id": 2001 }

响应参数:

返回值类型含义
codeint0 表示成功
msgstring返回消息
dataobject 数组邀请列表;data 直接为数组
data[].invite_codestring邀请码;撤销时作为 invite_id 传入
data[].roleint团队角色:1=管理员;2=成员
data[].expired_atstring过期时间;内网为 YYYY-MM-DD,海外为 UTC RFC 3339
data[].used_count / max_usedint已使用次数 / 最大次数
data[].statusint1=有效;0=无效
data[].brand_grantsobject 数组品牌授权;每项含 brand_id:string、brand_role:int

响应示例:

{ "code": 0, "msg": "success", "data": [ { "invite_code": "7001", "role": 2, "expired_at": "2026-10-21", "used_count": 0, "max_used": 10, "status": 1, "brand_grants": [ { "brand_id": "1001", "brand_role": 3 } ] } ] }

撤销团队邀请

  • 请求方法:POST
  • 请求路径:/geo/team/invite/delete

请求参数:

入参类型含义是否必填
invite_idstring邀请列表中的 invite_code;字段名虽为 invite_id,当前实现按邀请码处理是

请求示例:

{ "invite_id": "7001" }

响应参数:

返回值类型含义
codeint0 表示成功
msgstring返回消息
dataobject成功时为空对象

响应示例:

{ "code": 0, "msg": "success", "data": {} }
Answerbit - AI搜索可见度追踪平台