はじめに
Power Automate の Teams コネクタには、「チームの作成」アクションがあります。
単純にチームを作成する場合はこのコネクタで要件は満たせるのですが、 メールアドレスを指定やチームプロパティを設定するなどのカスタマイズはできません 。
また、所有者はフローの実行者となるため、
「チームの作成は申請制、申請者を所有者に設定」といった運用にも一工夫が必要です。
当記事では、for 365 の範囲で(Power Automate の追加ライセンスなしで)、カスタマイズされたチームを作成する方法と、メンバーや所有者の変更方法について記載します。
- チームの作成
- メンバーの追加
- 所有者の変更(フローの実行者を所有者から外す)
1.チームの作成
上記の「チームの作成」アクションでは、指定したチーム名がメールアドレスのユーザー名として設定されます。
よって、Graph を利用し、
① Microsoft 365 グループを作成
② Microsoft 365 グループからチームを作成
の手順を踏みます。
① Microsoft 365 グループを作成
メールアドレスを指定し、Microsoft 365 グループを作成する場合は、Microsoft Graph を利用します。
[Office 365 Groups] コネクタの、[HTTP 要求 V2 を送信する] アクションで実行可能です。
■ URI
https://graph.microsoft.com/v1.0/groups
■ メソッド
POST
■ 本文
{
"description": "< 説明 >",
"displayName": "< チームの名前 >",
"groupTypes": [
"Unified"
],
"mailEnabled": true,
"mailNickname": "< mailaddress >",
"securityEnabled": false
}
< > で囲んだ部分は任意の値を入力してください。
< mailaddress > には、メールアドレスのユーザ名部分(@以前の部分)のみを入力してください。
■ Content-Type
application/json
② Microsoft 365 グループからチームを作成
Microsoft 365 グループ作成後に15分間待機が必要ですので、15分の遅延を実施します。
以下、MSDocsより。
チーム呼び出しの作成が遅延した場合は、伝達遅延のために 15 分間待機する必要がある前に、呼び出しを最大 3 回再試行できます。 グループが 15 分以内に作成された場合、レプリケーションの遅延が原因でエラー コードで 404 呼び出しが失敗する可能性があります。
[スケジュール]-[遅延] で15分の遅延設定後、[Office 365 Groups] コネクタの、[HTTP 要求 V2 を送信する] アクションで下記設定を行ってください。
■ URI
https://graph.microsoft.com/v1.0/groups/@{body('HTTP_要求_V2_を送信する')?['id']}/team
■ メソッド
PUT
■ 本文
{}
作成するチームに様々な設定を実施する場合は、以下ドキュメントに従って本文を編集してください。
https://learn.microsoft.com/ja-jp/graph/api/resources/team?view=graph-rest-1.0#properties
■ Content-Type
application/json
2.メンバーの追加
チームへのメンバー追加は、
- [Office 365 Groups] コネクタの [グループへのメンバーの追加]アクション
- [Teams] コネクタの [チームにメンバーを追加する] アクション
のどちらでも可能ですが、所有者の設定が可能な後者がおすすめです。
IDには、[カスタム値の入力]を選択したうえで、以下の値を入れてください
body('HTTP_要求_V2_を送信する')?['id']
また、3つ目のパラメータに「はい」を設定すると、登録したユーザーはチームの所有者となります。
3.所有者の変更(フローの実行者を所有者から外す)
上記の工程において作成されたチームの所有者には、フローの実行者が含まれています。
運用管理上、フローの実行者者をチーム所有者から外したい場合は、以下の手順を実施してください。
チーム所有者なしの状態にはできないため、あらかじめ 「2.メンバーの追加」 の手順で別の所有者を追加しておく必要があります。
また、所有者追加が反映されるまでに若干のラグがあるようです。
[スケジュール]-[遅延] で5分の遅延設定後(上記ラグ対応)、
[Office 365 Users]コネクタの [マイプロフィールの取得(V2)] で、フローの実行者の ID を取得し、
[Office 365 Groups] コネクタの、[HTTP 要求 V2 を送信する] アクションで下記設定を行ってください。
■ URI
https://graph.microsoft.com/v1.0/groups/@{body('HTTP_要求_V2_を送信する')?['id']}/owners/@{outputs('マイ_プロフィールの取得_(V2)')?['body/id']}/$ref
■ メソッド
DELETE
■ Content-Type
application/json
まとめ
Teams チーム作成が申請制な業務や、チームの立ち上げ時などでご活用いただければ。