Microsoft Teams 新创建团队自动加入隐藏列表的技术方案咨询
可行替代方案:直接调用Graph API的团队隐藏接口
不需要再使用归档后取消归档的迂回实现,Microsoft Graph原生提供了将指定团队隐藏到对应用户Hidden Teams列表的专用接口,稳定性更高,也不会触发你当前遇到的空引用报错。
实现步骤
- 先完成原有的团队创建、成员添加全流程
- 遍历所有已加入团队的成员ID,为每个成员单独调用如下接口:
- 请求方法:
POST - 请求路径:
/users/{用户ID}/teamwork/associatedTeams/{团队ID}/hide - 所需权限:
TeamSettings.ReadWrite.All(应用权限或委派权限均可,需提前在Azure AD应用注册中配置并获取管理员同意)
- 请求方法:
- 若使用Graph SDK实现,对应代码示例(以C#为例):
await graphClient.Users["{用户ID}"].Teamwork.AssociatedTeams["{团队ID}"].Hide.PostAsync();
补充说明
- 团队的隐藏状态是用户维度的独立配置,因此需要为每一位团队成员调用一次该接口,后续有新成员加入时,在添加成员的逻辑后追加调用即可。
- 接口调用无额外延迟,执行完成后用户刷新Teams客户端即可看到团队归入Hidden Teams分类。
- 你之前遇到的
object not set to an instance of an object错误是近期Graph API归档接口的内部逻辑变更导致的,部分租户下取消归档时如果未提前配置归档存储位置就会触发空引用异常,用原生隐藏接口可以完全规避该问题。
内容的提问来源于stack exchange,提问作者KnllBst
相关产品推荐
相关产品推荐

