如何使用Microsoft Graph

时间:2018-01-11 17:24:50

标签: azure azure-active-directory microsoft-graph

到目前为止,我找不到这个问题的答案。我真的很感激任何帮助。

我正在使用Microsoft Graph从Azure AD获取用户列表。这到目前为止有效:

此请求返回使用指定查询的用户列表:

https://graph.microsoft.com/v1.0/users/?$top=999&$select=department,id,displayname

此请求返回指定用户的管理员:

https://graph.microsoft.com/v1.0/users/{iser id}/manager

有没有办法在第一个请求中为每个用户返回一个经理?如果我写

https://graph.microsoft.com/v1.0/users/?$top=999&$select=department,id,displayname,manager

我没有收到错误,但我也没有看到经理。有什么建议? 谢谢!

1 个答案:

答案 0 :(得分:0)

您可以使用$expand参数展开用户对象的manager属性。

记录良好 here

  

注意:并非所有关系和资源都支持$ expand查询   参数。例如,您可以展开directReports,经理和   memberOf 用户上的关系,但您无法展开其活动,   消息或照片关系。并非所有资源或关系   支持在扩展项目上使用$ select。

     

使用从DirectoryObject派生的Azure AD资源,例如user   和group,$ expand仅支持beta版,通常返回a   扩展关系最多20个项目。

请注意使用beta版API的限制和要求。

所以你最后的查询是:

https://graph.microsoft.com/beta/users/?top=999&select=department,id,displayname&expand=manager

另请注意,使用api的beta版本,无需再为查询选项添加 $

<强>更新

阅读时不要跳过行。在$expand下定义了限制,例如:

  

使用从DirectoryObject派生的Azure AD资源,例如user   和group,$ expand仅支持beta版,通常返回a   扩展关系最多20个项目