本記事はWeb API Advent Calendar 2021の14日目の記事です。
リモートワークの普及でチャットツールが導入された会社も多いと思います。
小さい会社だとChatworkやSlackを利用することが多いと思いますが、大企業を中心にTeamsを利用するほうが多いのかなと思います。
今回は外部システムからAPIを使ってTeamsを更新する方法を説明します。
#前提条件
##環境構築
Teamsで連携するにはMicrosoftTeams のチーム(紛らわしい)が必要になります。
Microsoftには個人アカウント(マイクロソフトアカウント)と組織アカウント(学校/企業アカウント)があります。
組織アカウントをテストで試す用に取得する方法は限られるようで一応こちらを参考ください。
##連携方法について
今回連携方法を二種類紹介しますが両方Microsoft Teams APIという技術を使っていることに変わりはないです。
ただ実現方法が別なので別の方法として紹介させてください
#API連携の方法
1.Incoming Webhookを使う
2.Microsoft Graphを使う
##Incoming Webhookを使う
Incoming Webhookについてはこちらの記事がとても参考になりました。
Microsoft Teams APIを使ってこちらの方法で作られたIncoming Webhookコネクタを使います
特徴としてはURLを発行して認証などもなく簡単に連携が可能なことです。
#Microsoft Graphを使う
Microsoft GraphはMicrosoft 365をAPI操作するための方法です。
なのでMicrosoft Teams APIはMicrosoft Graphの機能の一つということになります。
Microsoft GraphにはGraph Explorerという試用環境があります。
このようにいろいろなAPI連携の方法があります。
Teamsの場合はベータ版を除くとこのような操作ができ、ベータ版があるということは今後拡充されていくと思います。
Graph Explorerを使ってAPIテストを実施してあとは呼び出し処理を実装していく形になります。
こちらはTeams側の設定は特に必要ないです。
今後の予定としてはローコード、ERPなどの他ツールからAPI連携してTeamsに通知を出すアプリを作ってみようと思います。