名前空間: microsoft.graph
ユーザーの上司として割り当てられているユーザーまたは組織の連絡先を返します。 オプションで、管理者のチェーンをルートノードまで拡張できます。
この API は、次の国内クラウド展開で使用できます。
グローバル サービス |
米国政府機関 L4 |
米国政府機関 L5 (DOD) |
21Vianet が運営する中国 |
✅ |
✅ |
✅ |
✅ |
アクセス許可
この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。
アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、「アクセス許可のリファレンス」を参照してください。
アクセス許可の種類 |
最小特権アクセス許可 |
より高い特権のアクセス許可 |
委任 (職場または学校のアカウント) |
User.Read.All |
Directory.Read.All、Directory.ReadWrite.All、User.ReadWrite.All |
委任 (個人用 Microsoft アカウント) |
サポートされていません。 |
サポートされていません。 |
アプリケーション |
サポートされていません。 |
サポートされていません。 |
重要
アプリケーションが directoryObject 型のコレクションを返すリレーションシップをクエリするときに、特定のリソース型を読み取るアクセス許可がない場合、その型のメンバーが返されますが、情報は限られます。 たとえば、@odata.type プロパティでは、オブジェクト型と ID だけが返され、その他のプロパティは null
と表示されます。 この動作により、アプリケーションは、Directory.* 権限が付与されたアクセス許可のセットに依存するのではなく、必要な最小限のアクセス許可を要求できます。 詳細については、「アクセスできないメンバー オブジェクトについて、限定された情報が返される」を参照してください。
HTTP 要求
マネージャーを入手する:
GET /me/manager
GET /users/{id | userPrincipalName}/manager
注:
/me
エンドポイントの呼び出しにはサインインしているユーザーが必要であり、そのため委任されたアクセス許可が必要です。
/me
エンドポイントを使用する場合、アプリケーションのアクセス許可はサポートされません。
管理チェーンを入手する:
GET /users?$expand=manager
GET /users/{id | userPrincipalName}/?$expand=manager($levels=n)
オプションのクエリ パラメーター
このメソッドは、応答をカスタマイズするための $select
および $expand
OData クエリ パラメーターをサポートします。
$expand
クエリ パラメーターを使用する場合:
-
$levels
の n
値は、max
(すべてのマネージャーを返す) か、1 から 1000 までの間の数字にすることができます。
-
$levels
パラメーターが指定されていない場合、直属のマネージャーのみが返されます。
-
$expand
内の$select
を指定して、個々のマネージャーのプロパティ ($expand=manager($levels=max;$select=id,displayName)
) を選択できます。
-
$levels
パラメーターは、ユーザーの一覧全体ではなく、単一のユーザー (/users/{id}
または me
エンドポイント) でのみサポートされます。
-
$levels
を使用するには、ConsistencyLevel ヘッダーを eventual
に設定する必要があります。
ConsistencyLevel の使用方法の詳細については、「ディレクトリ オブジェクトの詳細クエリ機能」を参照してください。
ヘッダー |
値 |
Authorization |
ベアラー {token}。 必須です。
認証と認可についての詳細をご覧ください。 |
ConsistencyLevel |
最終的。 要求に $expand クエリ パラメーターに$levels=n が含まれている場合に必要です。 |
要求本文
このメソッドには、要求本文を指定しません。
応答
成功した場合、このメソッドは 200 OK
応答コードと、応答本文で user オブジェクトを返します。 ユーザーにマネージャーが割り当てられていない場合、このメソッドは 404 Not Found
エラー コードを返します。
例
例 1: マネージャーの取得
次の例は、マナエージャーを取得する要求を示しています。
要求
GET https://graph.microsoft.com/v1.0/users/{id|userPrincipalName}/manager
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Users["{user-id}"].Manager.GetAsync();
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
//other-imports
)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
manager, err := graphClient.Users().ByUserId("user-id").Manager().Get(context.Background(), nil)
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
DirectoryObject result = graphClient.users().byUserId("{user-id}").manager().get();
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
const options = {
authProvider,
};
const client = Client.init(options);
let directoryObject = await client.api('/users/{id|userPrincipalName}/manager')
.get();
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
<?php
use Microsoft\Graph\GraphServiceClient;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$result = $graphServiceClient->users()->byUserId('user-id')->manager()->get()->wait();
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
result = await graph_client.users.by_user_id('user-id').manager.get()
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
応答
次の例は応答を示しています。
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
HTTP/1.1 200 OK
Content-type: application/json
{
"id": "7d54cb02-aaa3-4016-9f9c-a4b49422dd9b",
"displayName": "Sara Davis",
"jobTitle": "Finance VP",
"mail": "SaraD@contoso.com",
"userPrincipalName": "SaraD@contoso.com"
}
例 2: マネージャー チェーンをルート レベルまで取得する
次の例は、マネージャー チェーンをルート レベルに上げる要求を示しています。
要求
GET https://graph.microsoft.com/v1.0/me?$expand=manager($levels=max;$select=id,displayName)&$select=id,displayName
ConsistencyLevel: eventual
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Me.GetAsync((requestConfiguration) =>
{
requestConfiguration.QueryParameters.Expand = new string []{ "manager($levels=max;$select=id,displayName)" };
requestConfiguration.QueryParameters.Select = new string []{ "id","displayName" };
requestConfiguration.Headers.Add("ConsistencyLevel", "eventual");
});
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
mgc users get --user-id {user-id} --select "id,displayName" --expand "manager(\$levels=max;\$select=id,displayName)" --consistency-level "eventual"
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
abstractions "github.com/microsoft/kiota-abstractions-go"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphusers "github.com/microsoftgraph/msgraph-sdk-go/users"
//other-imports
)
headers := abstractions.NewRequestHeaders()
headers.Add("ConsistencyLevel", "eventual")
requestParameters := &graphusers.MeRequestBuilderGetQueryParameters{
Expand: [] string {"manager($levels=max;$select=id,displayName)"},
Select: [] string {"id","displayName"},
}
configuration := &graphusers.MeRequestBuilderGetRequestConfiguration{
Headers: headers,
QueryParameters: requestParameters,
}
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
me, err := graphClient.Me().Get(context.Background(), configuration)
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
User result = graphClient.me().get(requestConfiguration -> {
requestConfiguration.queryParameters.expand = new String []{"manager($levels=max;$select=id,displayName)"};
requestConfiguration.queryParameters.select = new String []{"id", "displayName"};
requestConfiguration.headers.add("ConsistencyLevel", "eventual");
});
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
const options = {
authProvider,
};
const client = Client.init(options);
let user = await client.api('/me')
.header('ConsistencyLevel','eventual')
.expand('manager($levels=max;$select=id,displayName)')
.select('id,displayName')
.get();
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Me\MeRequestBuilderGetRequestConfiguration;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestConfiguration = new UserItemRequestBuilderGetRequestConfiguration();
$headers = [
'ConsistencyLevel' => 'eventual',
];
$requestConfiguration->headers = $headers;
$queryParameters = UserItemRequestBuilderGetRequestConfiguration::createQueryParameters();
$queryParameters->expand = ["manager(\$levels=max;\$select=id,displayName)"];
$queryParameters->select = ["id","displayName"];
$requestConfiguration->queryParameters = $queryParameters;
$result = $graphServiceClient->me()->get($requestConfiguration)->wait();
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
Import-Module Microsoft.Graph.Users
# A UPN can also be used as -UserId.
Get-MgUser -UserId $userId -ExpandProperty "manager(`$levels=max;`$select=id,displayName)" -Property "id,displayName" -ConsistencyLevel eventual
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.me.me_request_builder import MeRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
query_params = MeRequestBuilder.MeRequestBuilderGetQueryParameters(
expand = ["manager($levels=max;$select=id,displayName)"],
select = ["id","displayName"],
)
request_configuration = RequestConfiguration(
query_parameters = query_params,
)
request_configuration.headers.add("ConsistencyLevel", "eventual")
result = await graph_client.me.get(request_configuration = request_configuration)
プロジェクトに SDK を追加し、authProvider インスタンスを作成する方法の詳細については、SDK のドキュメントを参照してください。
応答
次の例は応答を示しています。 推移性のマネージャーは階層的に表示されます。
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
HTTP/1.1 200 OK
Content-type: application/json
{
"id": "a97733ce-92a4-4e7e-8d45-8e1f3e6a69d8",
"displayName": "Individual Contributor",
"manager": {
"id": "7d54cb02-aaa3-4016-9f9c-a4b49422dd9b",
"displayName": "Alex Wilber",
"manager": {
"id": "343a3f95-377c-47a9-b697-480487bfcdf7",
"displayName": "Bianca Pisani",
"manager": {
"id": "8e07b731-5ba7-4081-b482-15e6eca35c45",
"displayName": "Patti Fernandez"
}
}
}
}