簡體   English   中英

Microsoft Graph API:獲取用戶組織

[英]Microsoft Graph API: get user organization

我正在使用 Microsoft Graph API 來獲取用戶的一些詳細信息。 我還使用 AD 進行身份驗證和授權。

在此應用程序中,用戶在登錄后將搜索一些用戶,並需要所有與搜索匹配的用戶的詳細信息。

我使用過濾器點擊了users api ,但我沒有得到有關匹配用戶的公司名稱的任何詳細信息。

https://graph.microsoft.com/v1.0/users?$filter=startswith(displayName,'jo')

下面是同樣的回復

{
  "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users",
  "@odata.nextLink": "https://graph.microsoft.com/v1.0/users?$skiptoken=X%2744537074020001000000203A636F6D7061735F766A61407465737473636F7270696F67726F75702E6E657429557365725F33386664353661362D366361612D343939332D393264642D383439633938613039393033B900000000000000000000%27",
  "value": [
        {
            "businessPhones": [],
            "displayName": "John Doe",
            "givenName": "John",
            "jobTitle": null,
            "mail": null,
            "mobilePhone": null,
            "officeLocation": null,
            "preferredLanguage": null,
            "surname": "Doe",
            "userPrincipalName": "jdoe@mycomp.net",
            "id": "c8f63ba1-5150-44c1-b456-468040f12345"
        }
  ]
}

我需要做什么才能為我的組織的用戶獲取公司名稱?

默認情況下, user資源僅返回屬性的子集。 根據文檔

注意:獲取用戶僅返回一組默認屬性( businessPhones, displayName, givenName, id, jobTitle, mail, mobilePhone, officeLocation, preferredLanguage, surname, userPrincipalName )。 使用$select獲取用戶對象的其他屬性和關系。

換句話說,您需要將$select參數添加到您的查詢中,以列出您想要返回的屬性。 例如,如果您想檢索iduserPrincipalNamecompanyName ,您可以使用:

https://graph.microsoft.com/v1.0/users?$select=displayName,id,jobTitle,companyName

完整的可用屬性集可以在用戶資源類型文檔中找到。

我想通過一次登錄獲得所有用戶的詳細信息

這不可能。 獲取組織詳細信息的唯一方法是使用https://graph.microsoft.com/v1.0/organization api。

您需要提供訪問令牌才能調用此 api。 在您的應用程序中,您使用一位用戶登錄以獲取訪問令牌。

如果您在令牌請求 url 中使用 common,您將獲得該登錄用戶的默認組織。

如果您在請求 url 中使用特定租戶,您將獲得該租戶的組織詳細信息。

如果只想獲取用戶的companyName,可以調用https://graph.microsoft.com/beta/users/{userid}獲取。

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM