2016-08-17 20 views
4

我想列出所有用戶。對於每個用戶,我需要顯示特定於該用戶的角色和組。Microsoft Graph:在一個請求中列出所有用戶及其組請求

我想:

https://graph.microsoft.com/v1.0/users?$expand=memberOf 

但它給完全相同的結果爲:

https://graph.microsoft.com/v1.0/users 

按照文檔的用戶對象(http://graph.microsoft.io/en-us/docs/api-reference/v1.0/resources/user),我應該能夠列出角色並通過使用memberOf關係爲用戶分組。

我可以通過爲每個用戶執行一個請求(使用https://graph.microsoft.com/v1.0/users/{user_id}/getMemberObjects)來獲得我需要的每個用戶的角色和組,但它有點慢並且過度殺傷。

我缺少什麼?

回答

3

用戶實體的擴展導航屬性當前不適用於Microsoft Graph端點的生產版本(v1.0)。該功能在beta終端上運行。

此查詢的工作,你的願望:

https://graph.microsoft.com/beta/users?$expand=memberOf 

上有功能時從移動公測V1.0還是他們甚至會在目前的形式沒有時間表。

目前,您有3個選擇使用Microsoft Graph API。

貝塔端點

使用測試點,但明白,它可能會在功能發生改變。

多圖調用

獲取用戶的集合,然後獲取的memberOf爲每個用戶,你需要它。

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

https://graph.microsoft.com/v1.0/users/{user_id}/getMemberObjects 

展開上組

成員如果你想堅持使用V1.0端點並根據您的總體目標,你可以嘗試去尋找您想要的其他方式的信息。獲取組的集合並擴展成員導航屬性。

https://graph.microsoft.com/v1.0/groups/?$expand=members 
+0

感謝您的詳細解釋!對於以下請求, – Michael

+0

beta無法正常工作:https://graph.microsoft.com/beta/users/{id}?$expand=directReports。在v1中,它什麼都不做,在測試版中,它擴展了用戶的所有導航屬性以及所有兒童的導航屬性。將beta和select結合起來不起作用。 – Marmoy

+2

假設你與msgraph項目有關,你應該在這裏修改文檔https://developer.microsoft.com/en-us/graph/docs/overview/query_parameters以聲明不支持擴展查詢,確定它會爲開發人員節省很多頭痛。 – Marmoy

相關問題