グラフ API を使用して会議のトランスクリプトと記録を取得する

重要

2025 年 8 月 25 日以降、この記事に記載されている Teams API は従量制課金を廃止し、これらの API を使用するための課金構成は必要ありません。 アプリケーションが課金用に構成されている場合、操作は必要ありません。 この記事は、従量制課金制 Microsoft Teams API の最終課金サイクルが終了する際の参照用に提供されます。

会議または通話の終了後に Microsoft Teams のトランスクリプトとレコーディングを取得するようにアプリを構成できるようになりました。 アプリは、Microsoft Graph REST API を使用して、次のインスタンスに対して生成されたトランスクリプトとレコーディングにアクセスし、取得できます。

  • スケジュール済みのオンライン会議
  • アドホックな呼び出し

ユース ケース

Graph API を使用して会議のトランスクリプトとレコーディングを取得するユース ケースをいくつか次に示します。

ユース ケース 説明 API がどのように役立つか
オンライン会議などの スケジュールされたインスタンス の会議のトランスクリプトとレコーディングを自動的に取得する 営業マネージャーとして、営業分野全体の複数のミーティングから意味のあるインサイトをキャプチャするためのトランスクリプトと録音を取得する必要があります。 すべての会議を把握し、そこから会議のトランスクリプトや記録を手動で取得して有用な情報を取得するのは、時間がかかり、非効率的です。 アプリで Graph API を使用して、目的に関連するすべての会議から会議のトランスクリプトとレコーディングを自動的に取得します。 アプリは会議通知を受信し、会議が終了した後に生成された文字起こしとレコーディングを取得します。
その後、このデータを使用して次の情報を取得できます。
• 集計された分析情報とインテリジェンス分析
• 新しい潜在顧客とハイライト
• 会議のフォローアップと概要
オンライン会議などの スケジュール済みインスタンス の会議後にトランスクリプトとレコーディングを取得する 人事イニシアチブとして、従業員の健康と生産性を理解し、改善するためのブレーンストーミング セッションを開催しています。 終了後は、ディスカッションを分析して、改善計画のためのデータ ポイントを収集する必要があります。 会議後のサマリーを作成するために継続的にメモを取らなければならないと、思考の流れが妨げられ、貴重な提案をすべて捉えられない可能性があります。 アプリで Graph API を使用して会議後のトランスクリプトとレコーディングを取得すると、あなたと参加者が完全にディスカッションに集中できるようになります。 会議のトランスクリプトと記録のコンテンツは、次の目的で使用できます。
• エンゲージメントとセンチメントの分析
• タスクまたは問題のリスト
• フォローアップ会議と通知
オンライン会議などの スケジュールされたインスタンス 用にパーソナライズされたアプリを作成する 大手テクノロジー企業の営業担当者として、クライアントとつながり、取引を成立させる必要があります。 Teams や Outlook の予定表を通じて多数の会議がスケジュールされているため、すべての通話に参加し、ディスカッションや最新の更新プログラムを常に最新の状態に保つことが重要です。 次の機能を備えたアプリを作成します。
• Teams または Outlook 予定表を使用して会議がスケジュールされている場合に通知します。
• アプリがこれらの会議の AutoRecording=true を設定できるようにします。
• ボットを会議参加者として追加して、会議が記録され、コンテンツが分析のためにアプリによって使用されることを示すバナーを表示します。
• アプリが会議のレコーディングとトランスクリプトにアクセスすることを許可します。
• OnlineMeetingRecording.Read.All アクセス許可に対する管理者の承認を得るには時間がかかる場合があるため、これらのアクセス許可について管理者の承認を必要とせずにアプリを許可します。
このユース ケース シナリオを示す サンプル アプリ を次に示します。
アドホック インスタンスの会議後のトランスクリプトとレコーディングを取得する プロジェクト マネージャーの役割では、自発的なグループ通話や 1 対 1 の通話を行う必要がありますが、事前にスケジュールすることはできません。 会議出席依頼がないと、会議 ID が生成されないため、トランスクリプトやレコーディングにアクセスできません。 大量のメモを書き留めると、重要なアクション アイテムを見逃す余地が大きくなります。 アプリでグラフ API を使用して、会議後にトランスクリプトとレコーディングを取得すると、自分と参加者が完全にディスカッションに集中できるようになります。 CallTranscripts.Read.AllとCallRecordings.Read.Allのアクセス許可を使用することで、通話トランスクリプトは次の目的で利用できます。
• 重要なアクション アイテムのキャプチャ
• To Do や問題のリスト
• フォローアップ会議と通知
PSTN 通話の通話後にトランスクリプトと録音を取得する コール センターがあり、人間のアシスタントが Microsoft Teams を使用した PSTN 通話の着信または発信を使用してカスタマー サポートを提供します。 通話が終了した後、アシスタントは、各通話のメモを使用して外部の記録システムを手動で更新する必要があります。 アプリで Graph API を使用して通話後にトランスクリプトと録音を取得すると、各アシスタントがレコードを更新するために必要な手動作業が削減されます。 また、アプリは通話記録を使用して自動化をトリガーできます。

会議や通話のトランスクリプトと録音を取得する

特定の会議と通話のトランスクリプトとレコーディングを取得するには:

  1. トランスクリプトとレコーディングにアクセスするための Microsoft Entra ID のアクセス許可を構成する
  2. 会議のトランスクリプトとレコーディングが利用可能になったときに通知を受け取る
  3. Graph API を使用してトランスクリプトをフェッチする
  4. Graph API を使用して記録を取得する

トランスクリプトとレコーディングにアクセスするための Microsoft Entra ID のアクセス許可を構成する

アプリには、トランスクリプトとレコーディングを取得するために必要なアクセス許可が必要です。 特定の会議に対するorganization全体のアプリケーションのアクセス許可またはリソース固有の同意 (RSC) アプリケーションのアクセス許可を使用して、Teams 会議のトランスクリプトとレコーディングにアクセスして取得できます。

さらに、トランスクリプトとトランスクリプト変更通知へのアクセスは、次の 2 つの独立したテナント管理者設定によって管理されます。

  • トランスクリプトへの Graph API アクセス。 無効にすると、要求された形式に関係なく、すべてのトランスクリプト要求 (メタデータ、metadataContent、content) は、GraphAccessToTranscriptsDisabled内部エラー コードと共に403 Forbiddenを返します。

  • 話者の帰属。 無効にすると、 application/vnd.microsoft.graph.transcript+text 形式の話者情報がない場合のみ、トランスクリプト コンテンツを取得できます。

詳細については、 変更通知サブスクリプション と Get callTranscript 操作に関するドキュメントのテナント管理者制御に関するセクションを参照してください。

注:

  • 上記のリソースには、 adhocCalls ( OnlineMeetings と並列) の新しいアクセス許可が必要です。
  • 適切にスコープが設定された 2 つの別個のリソース (1 つは onlineMeetings 用、もう 1 つは adhocCalls 用) にサブスクライブします。 これらのリソースは、データの取得に使用する URL を提供します。

組織全体のアプリケーションのアクセス許可を使用する

オンライン会議と通話の場合、テナント全体で会議のトランスクリプトとレコーディングにアクセスするようにアプリを構成できます。 この場合、会議の開催者は Teams 会議チャットにアプリをインストールする必要はありません。 管理者が organization 全体のアプリケーションのアクセス許可を承認すると、アプリはテナント内のすべての会議のトランスクリプトとレコーディングの読み取りとアクセスが可能になります。

アプリに付与できるorganization全体のアプリケーションアクセス許可の詳細については、「オンライン会議のアクセス許可」を参照してください。

注:

アドホック通話では、アプリ ベースのアクセス許可とユーザーによって委任されたアクセス許可が許可されます。

会議固有の RSC アプリケーションのアクセス許可を使用する

アプリがインストールされている Teams 会議のトランスクリプトとレコーディングのみを取得できるようにする場合は、アプリの会議固有の RSC アクセス許可を構成します。 承認されたユーザーは、会議チャットでアプリをインストールできます。 会議が終了した後、アプリは API 呼び出しを実行して、その会議のトランスクリプトと記録を取得できます。

会議固有の RSC アクセス許可の詳細については、「 チャットまたは会議の RSC アクセス許可」を参照してください。

注:

アドホック呼び出しに対する RSC ベースのアクセス許可が有効になっていません。

トランスクリプトまたはレコーディングが利用可能になったときに通知を受け取る

アクセス許可を構成したら、利用可能な場合はトランスクリプトとレコーディングの変更通知 を受け取る か、関連するすべての会議とアドホック通話を受信するようにアプリを構成します。 オンライン会議の場合、通知には会議 ID と開催者 ID が含まれ、トランスクリプトのコンテンツへのアクセスとレコーディングに役立ちます。 アプリは、会議の終了後に生成された会議のトランスクリプトとレコーディングを取得できます。 アドホック通話の場合、これらは自発的なイベント (PSTN、1:1、グループ通話) であるため、会議 ID は使用できません。 アドホック呼び出しの通知パスに制限はありませんが、 getAll API はアドホック呼び出しインスタンスでも使用できません (呼び出しレベルでの成果物の一覧表示など)。 トランスクリプトの内容は、 .vtt ファイルとして入手できます。 会議の記録は、 .mp4 ファイルとして使用できます。

アプリでは、次の種類の変更通知を使用できます。

サブスクリプションのスコープ 説明 サポートされるリソースのパス
テナントのレベル トランスクリプトまたは録音は、テナントのオンライン会議または通話で使用できます。 All transcripts in an organization:
• オンライン会議の場合: communications/onlineMeetings/getAllTranscripts
• 通話の場合: communications/adhocCalls/getAllTranscripts

すべてのレコーディング organization:
• オンライン会議の場合: communications/onlineMeetings/getAllRecordings
• 通話の場合: communications/adhocCalls/getAllRecordings
会議または通話レベル 特定の会議または通話でトランスクリプトまたは録音を使用できます。
特定の会議のすべてのトランスクリプト: communications/onlineMeetings/{onlineMeetingId}/transcripts

特定の会議のすべての記録: communications/onlineMeetings/{onlineMeetingId}/recordings

特定のアドホック通話のすべてのトランスクリプト: /communications/adhocCalls/{callId}/transcripts

特定のアドホック呼び出しのすべての録音: /communications/adhocCalls/{callId}/recordings
ユーザー スコープ トランスクリプトまたは録音は、特定のユーザーによって開催されたオンライン会議またはアドホック通話で使用できます。 特定のユーザーによって開催された会議、または特定のユーザーによって文字起こしが開始された通話で利用可能になる通話のトランスクリプト:
• オンライン会議の場合: users/{userId}/onlineMeetings/getAllTranscripts
• アドホック コールの場合: users/{userId}/adhocCalls/getAllTranscripts

特定のユーザーによって開催された会議、または特定のユーザーによって文字起こしが開始された通話で利用可能になる通話記録:
• オンライン会議の場合: users/{userId}/onlineMeetings/getAllRecordings
• アドホック コールの場合: users/{userId}/adhocCalls/getAllRecordings
アプリ スコープ トランスクリプトまたは記録は、特定の Teams アプリがインストールされているすべての会議で使用できます。 アドホック呼び出しには適用されません。 特定の Teams アプリがインストールされている会議で利用可能になる通話記録:
• オンライン会議の場合: appCatalogs/teamsApps/{id}/installedToOnlineMeetings/getAllTranscripts

特定の Teams アプリがインストールされている会議で利用可能になる通話録音:
• オンライン会議の場合: appCatalogs/teamsApps/{id}/installedToOnlineMeetings/getAllRecordings

オンライン会議またはアドホック通話の終了後にトランスクリプトまたはレコーディングが利用可能なタイミングをアプリで認識する方法の詳細については、「 トランスクリプトとレコーディングが使用可能になったときに通知を受ける」を参照してください。

アプリで会議の終了日時を把握する方法の詳細については、「 変更通知のサブスクライブとBot Framework を使用して会議 ID と開催者 ID を取得する」を参照してください。

重要

  • グラフ API を呼び出してトランスクリプトとレコーディングにアクセスして取得するプロセスは、会議固有の RSC アプリケーションのアクセス許可とorganization全体のアプリケーションのアクセス許可の両方で同じです。
  • これらの API は、プライベート チャット会議、チャネル会議、アドホック通話をベータ版でのみサポートします。
  • アドホック呼び出しの場合:

オンライン会議インスタンス用に AI で生成された会議の要約を取得する

アプリは、会議 AI 分析情報 API を使用して、会話の概要、アクション アイテム、メンションなどの AI によって生成された会議のAI 分析情報を直接取得できます。 詳細については、「会議 AI 分析情報 API を使用して会議の分析情報を取得する」を参照してください。

コード サンプル

サンプルの名前 説明 Node.js C# Python
ボット会議 このサンプルでは、Microsoft Teams でリアルタイムの会議イベントを処理し、会議のトランスクリプトを取得する方法を示します。 表示 表示 表示
オンライン会議のトランスクリプトのレコーディング このサンプル アプリは、Graph API を使用して Teams 会議のトランスクリプトとレコーディングを取得します。 表示 表示 該当なし
アドホック通話のトランスクリプトと録音 このサンプル アプリは、PSTN、1:1、グループ通話などのアドホック通話用のグラフ API を使用して、会議のトランスクリプトと録音を取得します。 表示 該当なし 該当なし

次の手順

関連項目