名前空間: microsoft.graph
重要
Microsoft Graph の /beta バージョンの API は変更される可能性があります。 実稼働アプリケーションでこれらの API を使用することは、サポートされていません。 v1.0 で API を使用できるかどうかを確認するには、Version セレクターを使用します。
注意
この機能を baseTask または baseTaskList と共に使用する既存のアプリは、これらのリソースに基づいて構築された To Do API セットが 2022 年 5 月 31 日に非推奨になったので、更新する必要があります。 その API セットは、2022 年 8 月 31 日にデータを戻すことを停止します。 todoTask 上に構築された API セットを使用してください。
Microsoft Graph REST API は、Webhook、Event Hubs、Event Grid など、さまざまなエンドポイントを通じてクライアントに変更通知を配信できます。 アプリケーションの通知をサブスクライブして受信する方法については、「 ユーザー データの変更に関する通知を設定する」を参照してください。
アプリは、表に一覧表示されている Microsoft Graph リソースの変更をサブスクライブできます。 アスタリスク (*) でマークされたリソースへのサブスクリプションは、 /beta エンドポイントでのみ使用できます。
注:
Microsoft Teamsリソースの場合、テナント内のすべての Teams 変更通知サブスクリプションで、organizationごとの合計サブスクリプション数 10,000 個の制限が累積的に共有されます。 これには、チャット、チャット メッセージ、通話トランスクリプト、通話記録、チャネル、チーム、会話メンバーなど、さまざまな Teams リソース用に作成されたサブスクリプションが含まれます。 これらはすべて同じ組織クォータにカウントされます。 アクティブな Teams サブスクリプションの合計数がこの制限に達すると、 Teams リソースに対する追加のサブスクリプション作成要求が失敗 し、 403 Forbidden エラーが発生します。
| リソース | サポートされているリソース パス | 制限事項 |
|---|---|---|
| クラウド印刷の printer | 印刷ジョブをダウンロードする準備ができたときに変更されます (jobFetchable イベント): /print/printers/{id}/jobs |
- |
| クラウド印刷の printTaskDefinition | キューに有効なジョブがある場合の変更 (jobStarted イベント): /print/printtaskdefinition/{id}/tasks |
- |
| Copilot aiInteraction | 特定のユーザーが参加している Copilot AI の相互作用: copilot/users/{userId}/interactionHistory/getAllEnterpriseInteractions organizationでの Copilot AI の相互作用: copilot/interactionHistory/getAllEnterpriseInteractions |
最大サブスクリプションのクォータ: |
| OneDrive (個人用) の driveItem |
任意のフォルダーの階層内のコンテンツに対する変更:/users/{id}/drive/root |
- |
| 職場または学校用の OneDrive 上の driveItem |
ルート フォルダーの階層内のコンテンツに対する変更: /drives/{id}/root 、/users/{id}/drive/root |
- |
| group | すべてのグループに対する変更: /groups 特定のグループに対する変更: /groups/{id} 特定のグループの所有者に対する変更: /groups/{id}/owners 特定のグループのメンバーに対する変更: /groups/{id}/members |
最大サブスクリプションのクォータ: Azure AD B2C テナントではサポートされていません。 メモ: グループの作成と論理的な削除によって、 updatedchangeType もトリガーされます。 |
| Microsoft Entra正常性監視アラート | すべての正常性監視アラートに対する変更: /reports/healthmonitoring/alerts 特定の種類のアラートに対する変更: 要求ペイロードの notificationQueryOptions プロパティが として設定された/reports/healthmonitoring/alert$filter=alertType eq '{alertType}' |
- |
| SharePoint サイトのリスト |
リスト内のコンテンツに対する変更:/sites/{site-id}/lists/{list-id} |
- |
| Microsoft 365 グループ会話 | グループの会話に対する変更: groups/{id}/conversations |
- |
| Outlook メッセージ | ユーザーのメールボックス内のすべてのメッセージに対する変更: /users/{id}/messages 、 /me/messages ユーザーの受信トレイ内のメッセージの変更: /users/{id}/mailFolders('inbox')/messages 、 /me/mailFolders('inbox')/messages |
すべてのアプリケーションに対して、メールボックスあたり最大 1,000 個のアクティブなサブスクリプションが許可されます。 |
| Outlook イベント | ユーザーのメールボックス内のすべてのイベントに対する変更: /users/{id}/events 、 /me/events |
すべてのアプリケーションに対して、メールボックスあたり最大 1,000 個のアクティブなサブスクリプションが許可されます。 |
| Outlook 個人用連絡先 | ユーザーのメールボックス内のすべての個人用連絡先に対する変更: /users/{id}/contacts 、 /me/contacts |
すべてのアプリケーションに対して、メールボックスあたり最大 1,000 個のアクティブなサブスクリプションが許可されます。 |
| セキュリティの警告 | 特定のアラートに対する変更: /security/alerts/{id} フィルター処理されたアラートに対する変更: /security/alerts/?$filter={parameters} |
詳細については、「アラートのSecurity API」を参照してください。 |
| Teams の承認 | テナント内のすべての承認に対する変更: /solutions/approval/approvalItems |
最大サブスクリプションのクォータ: |
| Teams callRecord | すべての通話レコードを変更する: /communications/callRecords フィルター処理された呼び出しレコードの変更: /communications/callRecords?$filter={parameters} |
詳細については、「 通話レコードの通知を変更する」を参照してください。 最大サブスクリプションのクォータ: メモ: 呼び出しレコードを作成すると、 updatedchangeType もトリガーされます。 |
| Teams callRecording | organization内のすべての録音:communications/onlineMeetings/getAllRecordings 特定の会議のすべての記録: communications/onlineMeetings/{onlineMeetingId}/recordings 特定のユーザーが開催した会議で使用できる通話記録: users/{id}/onlineMeetings/getAllRecordings 特定の Teams アプリがインストールされている会議で使用できる通話記録: appCatalogs/teamsApps/{id}/installedToOnlineMeetings/getAllRecordings * |
最大サブスクリプションのクォータ: |
| Teams callTranscript | organization内のすべてのトランスクリプト:communications/onlineMeetings/getAllTranscripts 特定の会議のすべてのトランスクリプト: communications/onlineMeetings/{onlineMeetingId}/transcripts 特定のユーザーが開催した会議で使用できる通話トランスクリプト: users/{id}/onlineMeetings/getAllTranscripts 特定の Teams アプリがインストールされている会議で使用できる通話トランスクリプト: appCatalogs/teamsApps/{id}/installedToOnlineMeetings/getAllTrancripts * |
最大サブスクリプションのクォータ: |
| Teams チャット | テナント内のすべてのチャットに対する変更: /chats 特定のチャットに対する変更: /chats/{id} notifyOnUserSpecificProperties クエリ パラメーターを使用した特定のチャットへの変更: /chats/{id}?notifyOnUserSpecificProperties={Boolean} 特定の Teams アプリがインストールされているorganization内のすべてのチャットに対する変更: /appCatalogs/teamsApps/{id}/installedToChats 特定のユーザーが参加しているすべてのチャットに対する変更: /users/{id}/chats notifyOnUserSpecificProperties クエリ パラメーターを使用して、特定のユーザーが参加しているすべてのチャットに対する変更: /users/{id}/chats?notifyOnUserSpecificProperties={Boolean} |
最大サブスクリプションのクォータ: |
| Teams chatMessage | すべてのチームのすべてのチャネルでチャット メッセージに対する変更: /teams/getAllMessages 特定のチャネルでのチャット メッセージの変更: /teams/{id}/channels/{id}/messages すべてのチャットでのチャット メッセージの変更: /chats/getAllMessages 特定のチャット内のチャット メッセージに対する変更: /chats/{id}/messages 特定のユーザーが含まれるすべてのチャット内のチャット メッセージに対する変更: /users/{id}/chats/getAllMessages 特定の Teams アプリがインストールされているorganization内のすべてのチャットに対するチャット メッセージの変更: /appCatalogs/teamsApps/{id}/installedToChats/getAllMessages |
最大サブスクリプションのクォータ: |
| Teams チャネル | すべてのチームのチャネルに対する変更: /teams/getAllChannels 特定のチームのチャネルに対する変更: /teams/{id}/channels |
最大サブスクリプションのクォータ: |
| Teams conversationMember | 特定のチームのメンバーシップの変更: /teams/{id}/members 特定のチームのすべてのチャネルのメンバーシップに対する変更: teams/{id}/channels/getAllMembers 特定のチャットでのメンバーシップの変更: /chats/{id}/members 特定の Teams アプリがインストールされているorganization内のすべてのチャットのメンバーシップに対する変更: /appCatalogs/teamsApps/{id}/installedToChats/getAllMembers すべてのチャットのメンバーシップに対する変更: /chats/getAllMembers |
最大サブスクリプションのクォータ: |
| Teams onlineMeeting* | オンライン会議の変更: /communications/onlineMeetings(joinWebUrl='{encodedJoinWebUrl}')/meetingCallEvents |
選択したプロパティのみを返す $select の使用はサポートされていません。 リッチ通知は、変更されたインスタンスのすべてのプロパティで構成されます。 オンライン会議ごとにアプリケーションごとに 1 つのサブスクリプションが許可されます。 詳細については、「 Microsoft Teams会議通話イベントの更新に関する変更通知を取得する」を参照してください。 |
| Teams プレゼンス | 1 人のユーザーのプレゼンスに対する変更: /communications/presences/{id} 複数のユーザーのプレゼンスに対する変更: /communications/presences?$filter=id in ({id},{id}...) |
複数のユーザーのプレゼンスのサブスクリプションは、650 人の個別のユーザーに制限されています。 選択したプロパティのみを返す $select の使用はサポートされていません。 リッチ通知は、変更されたインスタンスのすべてのプロパティで構成されます。 委任されたユーザーごとにアプリケーションごとに 1 つのサブスクリプションが許可されます。 詳細については、「 Microsoft Teamsでのプレゼンス更新プログラムの変更通知を取得する」を参照してください。 |
| Teams チーム | テナント内の任意のチームに対する変更: /teams 特定のチームへの変更: /teams/{id} |
最大サブスクリプションのクォータ: |
| Teams Shifts オファーShiftRequest | チーム内のオファー シフト要求に対する変更: /teams/{id}/schedule/offerShiftRequests |
最大サブスクリプションのクォータ: |
| Teams Shifts openShiftChangeRequest | チーム内のオープン シフト要求に対する変更: /teams/{id}/schedule/openShiftChangeRequests |
最大サブスクリプションのクォータ: |
| Teams Shifts シフト | チーム内の任意のシフトに対する変更: /teams/{id}/schedule/shifts |
最大サブスクリプションのクォータ: |
| Teams Shifts swapShiftsChangeRequest | チーム内のスワップ シフト要求に対する変更: /teams/{id}/schedule/swapShiftsChangeRequests |
最大サブスクリプションのクォータ: |
| Teams Shifts timeOffRequest | チーム内の任意の休暇要求に対する変更: /teams/{id}/schedule/timeOffRequests |
最大サブスクリプションのクォータ: |
| todoTask | 特定のタスク リスト内のすべてのタスクに対する変更: /me/todo/lists/{todoTaskListId}/tasks |
- |
| user | すべてのユーザーに対する変更: /users 特定のユーザーに対する変更: /users/{id} |
最大サブスクリプションのクォータ: outlook.com などの個人の Microsoft アカウントではサポートされていません。 Azure AD B2C テナントではサポートされていません。 メモ: ユーザーの作成と論理的な削除によって、 updatedchangeType もトリガーされます。 |
注:
多くのリソースには、そのリソースに対して実行できるサブスクリプションの数に関する制限またはクォータがあります。 この制限を超えると、サブスクリプションを作成しようとすると、 403 Forbidden エラー応答が発生します。 エラー応答の message プロパティは、超過した制限について説明します。
これらのリソースの一部では、リッチ通知 (リソース データを含む通知) がサポートされています。 詳細については、「 リソース データを含む変更通知を設定する」を参照してください。
注:
/users/{id}で始まるリソース パスでは、/meを受け入れて、サインインしているユーザーを参照することができます。
アクセス許可
一般に、サブスクリプション操作にはリソースへの読み取りアクセス許可が必要です。 たとえば、メッセージの通知を受信するには、アプリに Mail.Read アクセス許可が必要です。 記事「サブスクリプションを作成する」では、リソースの種類ごとに必要なアクセス許可がリストされています。 次の一覧表に、アプリが特定のリソースの種類に対して Webhook を使用するために要求できるアクセス許可の種類を示します。
| アクセス許可の種類 | サポートされているリソースの種類 |
|---|---|
| 委任 - 職場または学校アカウント | aiInteraction, アラート, callRecording, callTranscript, channel, chat, chatMessage (プレビュー), 連絡先, 会話, conversationMember, driveItem, イベント, グループ, リスト, メッセージ, offerShiftRequest, openShiftChangeRequest, プレゼンス, shift, swapShiftsChangeRequest, team、 timeOffRequest、 todoTask、 ユーザー、 baseTask (非推奨) |
| 委任 - 個人用の Microsoft アカウント | contact, driveItem, イベント, リスト, メッセージ, todoTask, baseTask (非推奨) |
| アプリケーション | aiInteraction, アラート, callRecord, 承認, callRecording, callTranscript, channel, chat, chatMessage, contact, conversationMember, driveItem, イベント, グループ, リスト, メッセージ, offerShiftRequest, onlineMeeting, openShiftChangeRequest, printer, printTaskDefinition、 shift、 swapShiftsChangeRequest、 team、 timeOffRequest、 user |