我有一个共享点站点,它是在MS Teams中创建团队时自动生成的。我是团队的所有者,因此也是sharepoint网站的所有者。在sharepoint站点中,我列出了一个列表,所有团队成员都可以在其中添加新行。在Power Automate中,我制作了一个与此列表交互的流程。在这个流程中,我想检查运行流程的人是否是Teams网站的所有者。
我找到了以下REST调用来执行此操作。其中,我当然用我的电子邮件地址代替<user email>
,用所有者组名称(Sharepoint group(代替<group name>
。
_api/web/sitegroups/getByName('<group name>')/Users?$filter=Email eq '<user email>'
不幸的是,输出是空的,而我真的应该成为团队的一员,因为我在团队中被列为所有者!
现在,显然Sharepoint组和Office 365组(使用团队创建(之间存在差异。因此,我的问题是:在Power Automate中是否有一种非高级的方法来检查用户是否是Office 365组的一部分?因为检查用户是否是Sharepoint组的一部分对我来说不起作用。
您应该能够使用以下端点使用图形进行检查:https://learn.microsoft.com/en-us/graph/api/group-list-members?view=graph-rest-1.0&tabs=http
我研究了您的用例。首先,什么是你的流量触发器。
您还可以获取用户的详细信息(运行流的用户(,如ID或电子邮件。
现在关于团队,有一个开箱即用的连接器可以自动供电,但不幸的是,它不会派上用场。因为它不提供团队成员的团队管理员等信息。
您必须查询API(microsoft Graph API(。你图形API,你会很容易找到团队所有者等。
一旦你有了这些deatils,你就会很容易弄清楚你的电子邮件或UserId是否有问题。
sampel-api调用
GET https://graph.microsoft.com/v1.0/teams/{id}
但是通过这个团队的图形api,你会发现
另外,要与Graph API对话,您将需要Bearer令牌。
图形API与电源自动化