LoginSignup
2
2

More than 5 years have passed since last update.

Microsoft Teamsのために作成されたO365グループを取得する

Last updated at Posted at 2018-10-30

はじめに

MicrosoftがリリースしたTeamsはユーザー管理の基盤としてOffice365(O365)のグループを作成します。
つまり1チームにつき1つのO365グループが作成されます。O365のグループはTeams以外でも使用されますし、しかもチームはデフォルト設定でテナントユーザーであれば誰でも作りたい放題なので、情報システム部門はテナント内のO365グループを把握するのは一苦労です。
というわけでテナント内のO365グループからTeamsのために作成されたO365のグループを取得してみます。

取得の仕方

取得にはMicrosoft Graph APIを使用します。
Graph Explorerにアクセスして以下のAPIエンドポイントのURLをGETメソッドで呼び出します。

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

すると以下のようなJSONファイルが取得されます。
Graph Explorerではログインをしないとダミーデータが表示されます実際のご自身のテナントの情報を取得したい場合は画面左からテナントのアカウントで認証を行ってください。)

Groups.json
{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#groups",
    "value": [
        {
            "id": "02bd9fd6-8f93-4758-87c3-1fb73740a315",
            "description": "Welcome to the HR Taskforce team.",
            "displayName": "HR Taskforce",
            "groupTypes": [
                "Unified"
            ],
            "mailEnabled": true,
            "mailNickname": "HRTaskforce",
            "resourceBehaviorOptions": [],
            "resourceProvisioningOptions": [
                "Team"
            ],
            "securityEnabled": false,
            "visibility": "Private",
        },
        {
            "id": "8090c93e-ba7c-433e-9f39-08c7ba07c0b3",
            "description": "Welcome to the team that we've assembled to launch our product.",
            "displayName": "X1050 Launch Team",
            "groupTypes": [
                "Unified"
            ],
            "mailEnabled": true,
            "mailNickname": "X1050LaunchTeam",
            "resourceBehaviorOptions": [],
            "resourceProvisioningOptions": [],
            "securityEnabled": false,
            "visibility": "Private",
        }
        ...
    ]
}

このJSONはグループ情報の配列になっています。
そして各グループのresourceProvisioningOptionsというプロパティに"Team"という値が入っていればそのグループはTeamsのために作成されたグループであるということを表しています。

ODataクエリ

Microsoft Graph APIはODataに対応しており、以下のURLでアクセスするとresourceProvisioningOptions"Team"が含まれるグループ、つまりTeamsのために作成されたグループ情報のみが取得できます。

https://graph.microsoft.com/beta/groups/groups?$filter=resourceProvisioningOptions/Any(x:x eq 'Team')

注.このODataクエリはv1.0エンドポイントでは対応していないため、bataを使用する必要があります。

参考

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2