如何从Microsoft Graph查询/过滤用户所有者的所有组

时间:2018-01-08 17:11:08

标签: odata microsoft-graph

我想从Microsoft Graph查询特定用户所有者的所有组。 我尝试了以下查询:
https://graph.microsoft.com/v1.0/groups?$filter=owners/any(owner: owner/id eq '4dc60fe7-8009-4131-a4e9-80dc5e86f98f')

不幸的是,这会返回400。

有谁知道正确的OData查询?或者甚至不支持MS Graph?

谢谢!

3 个答案:

答案 0 :(得分:1)

无法对所有者进行过滤。 documentation表示哪些属性可以为$filter'。

寻找

  

支持$ filter

在每个属性的描述中。

您将必须阅读所有群组,撤出其所有者,并执行过滤客户端。

答案 1 :(得分:1)

memberOf 端点返回给定用户的所有组:

https://graph.microsoft.com/v1.0/users/{ID or email}/memberOf

将返回:

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#groups",
    "value": [
        {
            "id": "XXXX-XXXX-XXXX-XXXX",
            "displayName": "The group name",
            "...":"...",
            
        }
    ]
}

答案 2 :(得分:0)

可以使用单个API调用将所有组与所有者共享,如下所示: https://graph.microsoft.com/v1.0/groups?$ expand = owners 然后选择所有者集中具有当前用户的组。