我正在尝试此请求:
https://graph.microsoft.com/v1.0/users?
$filter=assignedLicenses/any(d:d/skuid eq 28d45cd1-ad8b-15cd-a9e1-52e6a5c24328)
但是我收到了这个错误:
BadRequest - ')'或','预期在'assignedLicenses / any的第71位(d:d / skuid eq 28d45cd1-ad8b-15cd-a9e1-52e6a5c24328'。
我做错了吗?这个查询可能吗?
答案 0 :(得分:2)
一般情况下,只有那些文档中所说的"支持$ filter"可以过滤。
E.g。在user
对象上,可以过滤accountEnabled
。
由于assignedLicenses
属性没有说出来,并且assignedLicense
resource type没有在skuId
属性上记录,我不认为你可以执行该查询。
答案 1 :(得分:1)
只需更新一下,它现在是受支持的API调用。正确的语法是:
https://graph.microsoft.com/v1.0/users?$filter=assignedLicenses/any(x:x/skuId eq e578b273-6db4-4691-bba0-8d691f4da603)
在此示例中,
e578b273-6db4-4691-bba0-8d691f4da603是学院A3 SKU
答案 2 :(得分:0)
我在GRAPH API的“测试版”上尝试了类似的方法。我需要按assignPlan进行过滤。
https://graph.microsoft.com/beta/users?&$filter=assignedPlans/any(d:d/service eq 'SharePoint')
这是我收到的错误消息:
{
"error": {
"code": "Request_UnsupportedQuery",
"message": "Complex query on property assignedPlans is not supported.",
"innerError": {
"request-id": "c3fad564-e61d-4066-8bef-548afghtyu",
"date": "2018-12-10T16:43:36"
}
}
}
因此,我想没有任何选项可以通过AssignedLicenses或Plan预先过滤用户。 至少还没有...