Utilisez l’API Graph de Microsoft pour obtenir les notifications de modification
Espace de noms: microsoft.graph
Importante
Les API sous la version /beta
dans Microsoft Graph sont susceptibles d’être modifiées. L’utilisation de ces API dans des applications de production n’est pas prise en charge. Pour déterminer si une API est disponible dans v1.0, utilisez le sélecteur Version .
Attention
Les applications existantes qui utilisent cette fonctionnalité avec baseTask ou baseTaskList doivent être mises à jour, car l’ensemble d’API de tâches basé sur ces ressources est déconseillé à compter du 31 mai 2022. Cet ensemble d'API cessera de renvoyer des données le 31 août 2022. Utilisez l’ensemble d’API basé sur todoTask.
L’API REST Microsoft Graph peut envoyer des notifications de modification aux clients via différents points de terminaison, notamment des webhooks, Event Hubs et Event Grid. Pour savoir comment s’abonner et recevoir des notifications pour votre application, consultez Configurer des notifications pour les modifications apportées aux données utilisateur.
Une application peut s’abonner aux modifications apportées aux ressources Microsoft Graph répertoriées dans le tableau.
Remarque
Les abonnements aux ressources marqués avec un astérisque (*
) sont uniquement disponibles sur le point de /beta
terminaison.
Resource | Chemins d’accès aux ressources pris en charge | Limitations |
---|---|---|
Imprimante pour impression cloud | Modifications lorsqu’un travail d’impression est prêt à être téléchargé (événement jobFetchable) : /print/printers/{id}/jobs |
- |
Impression Cloud printTaskDefinition | Change lorsqu’il y a un travail valide dans la file d’attente (événement jobStarted) : /print/printtaskdefinition/{id}/tasks |
- |
driveItem sur OneDrive (personnel) | Modifications apportées au contenu dans la hiérarchie d’un dossier : /users/{id}/drive/root |
- |
driveItem sur OneDrive pour le travail ou l’établissement scolaire | Modifications apportées au contenu dans la hiérarchie du dossier racine : /drives/{id}/root , /users/{id}/drive/root |
- |
groupe | Modifications apportées à tous les groupes : /groups Modifications apportées à un groupe spécifique : /groups/{id} Modifications apportées aux propriétaires d’un groupe spécifique : /groups/{id}/owners Modifications apportées aux membres d’un groupe spécifique : /groups/{id}/members |
Quotas maximaux d'abonnement : Non pris en charge pour les locataires Azure AD B2C. NOTE: La création et la suppression réversible de groupes déclenchent également le updated changeType. |
Une liste sous un site SharePoint | Modifications apportées au contenu de la liste : /sites/{site-id}/lists/{list-id} |
- |
Conversation de groupe Microsoft 365 | Modifications apportées aux conversations d’un groupe : groups/{id}/conversations |
- |
message Outlook | Modifications apportées à tous les messages dans la boîte aux lettres d’un utilisateur : /users/{id}/messages , /me/messages Modifications apportées aux messages dans la boîte de réception d’un utilisateur : /users/{id}/mailFolders('inbox')/messages , /me/mailFolders('inbox')/messages |
Un maximum de 1 000 abonnements actifs par boîte aux lettres pour toutes les applications est autorisé. |
événement Outlook | Modifications apportées à tous les événements dans la boîte aux lettres d’un utilisateur : /users/{id}/events , /me/events |
Un maximum de 1 000 abonnements actifs par boîte aux lettres pour toutes les applications est autorisé. |
contact personnel Outlook | Modifications apportées à tous les contacts personnels dans la boîte aux lettres d’un utilisateur : /users/{id}/contacts , /me/contacts |
Un maximum de 1 000 abonnements actifs par boîte aux lettres pour toutes les applications est autorisé. |
Alerte de sécurité | Modifications apportées à une alerte spécifique : /security/alerts/{id} Modifications apportées aux alertes filtrées : /security/alerts/?$filter={parameters} |
Pour plus d’informations, consultez alertes API de sécurité. |
Approbations Teams | Modifications apportées à toutes les approbations dans un locataire : /solutions/approval/approvalItems |
Quotas maximaux d'abonnement : |
Teams callRecord | Modifications apportées à tous les enregistrements d’appels : /communications/callRecords Modifications apportées aux enregistrements d’appels filtrés : /communications/callRecords?$filter={parameters} |
Pour plus d’informations, consultez Notifications de modification pour les enregistrements d’appels. Quotas maximaux d'abonnement : NOTE: La création d’enregistrements d’appel déclenche également le updated changeType. |
CallRecording Teams | Tous les enregistrements d’un organization :communications/onlineMeetings/getAllRecordings Tous les enregistrements d’une réunion spécifique : communications/onlineMeetings/{onlineMeetingId}/recordings Enregistrement d’appel qui devient disponible dans une réunion organisée par un utilisateur spécifique : users/{id}/onlineMeetings/getAllRecordings Enregistrement d’appel qui devient disponible dans une réunion où une application Teams particulière est installée : appCatalogs/teamsApps/{id}/installedToOnlineMeetings/getAllRecordings * |
Quotas maximaux d'abonnement : |
Teams callTranscript | Toutes les transcriptions d’un organization :communications/onlineMeetings/getAllTranscripts Toutes les transcriptions d’une réunion spécifique : communications/onlineMeetings/{onlineMeetingId}/transcripts Transcription d’appel qui devient disponible dans une réunion organisée par un utilisateur spécifique : users/{id}/onlineMeetings/getAllTranscripts Transcription d’appel qui devient disponible dans une réunion où une application Teams particulière est installée : appCatalogs/teamsApps/{id}/installedToOnlineMeetings/getAllTrancripts * |
Quotas maximaux d'abonnement : |
Conversation Teams | Modifications apportées à n’importe quelle conversation dans le locataire : /chats Modifications apportées à une conversation spécifique : /chats/{id} Modifications apportées à une conversation spécifique avec le paramètre de requête notifyOnUserSpecificProperties : /chats/{id}?notifyOnUserSpecificProperties={Boolean} Modifications apportées à toutes les conversations dans un organization où une application Teams particulière est installée : /appCatalogs/teamsApps/{id}/installedToChats Modifications apportées à toutes les conversations dont un utilisateur particulier fait partie : /users/{id}/chats Modifications apportées à toutes les conversations auxquelles un utilisateur particulier fait partie avec le paramètre de requête notifyOnUserSpecificProperties : /users/{id}/chats?notifyOnUserSpecificProperties={Boolean} |
Quotas maximaux d'abonnement : |
chatmessage Teams | Modifications apportées aux messages de conversation dans tous les canaux de toutes les équipes : /teams/getAllMessages Modifications apportées aux messages de conversation dans un canal spécifique : /teams/{id}/channels/{id}/messages Modifications apportées aux messages de conversation dans toutes les conversations : /chats/getAllMessages Modifications apportées aux messages de conversation dans une conversation spécifique : /chats/{id}/messages Modifications apportées aux messages de conversation dans toutes les conversations dont un utilisateur particulier fait partie : /users/{id}/chats/getAllMessages Modifications apportées aux messages de conversation pour toutes les conversations dans un organization où une application Teams particulière est installée : /appCatalogs/teamsApps/{id}/installedToChats/getAllMessages |
Quotas maximaux d'abonnement : |
Canal Teams | Modifications apportées aux canaux dans toutes les équipes : /teams/getAllChannels Modifications apportées au canal dans une équipe spécifique : /teams/{id}/channels |
Quotas maximaux d'abonnement : |
conversationMember Teams | Modifications apportées à l’appartenance à une équipe spécifique : /teams/{id}/members Modifications apportées à l’appartenance à tous les canaux d’une équipe spécifique : teams/{id}/channels/getAllMembers Modifications apportées à l’appartenance à une conversation spécifique : /chats/{id}/members Modifications apportées à l’appartenance à toutes les conversations dans un organization où une application Teams particulière est installée : /appCatalogs/teamsApps/{id}/installedToChats/getAllMembers Modifications apportées à l’appartenance à toutes les conversations : /chats/getAllMembers |
Quotas maximaux d'abonnement : |
Teams onlineMeeting* | Modifications apportées à une réunion en ligne : /communications/onlineMeetings(joinWebUrl='{encodedJoinWebUrl}')/meetingCallEvents |
Ne prend pas en charge l’utilisation $select de pour retourner uniquement les propriétés sélectionnées. La notification enrichie se compose de toutes les propriétés du instance modifié. Un abonnement autorisé par application et par réunion en ligne. Pour plus d’informations, consultez Obtenir des notifications de modification pour les mises à jour des événements d’appel de réunion Microsoft Teams. |
présenceTeams | Modifications apportées à la présence d’un seul utilisateur : /communications/presences/{id} Modifications apportées à la présence de plusieurs utilisateurs : /communications/presences?$filter=id in ({id},{id}...) |
L’abonnement pour la présence de plusieurs utilisateurs est limité à 650 utilisateurs distincts. Ne prend pas en charge l’utilisation $select de pour retourner uniquement les propriétés sélectionnées. La notification enrichie se compose de toutes les propriétés du instance modifié. Un abonnement autorisé par application et par utilisateur délégué. Pour plus d’informations, consultez Obtenir des notifications de modification pour les mises à jour de présence dans Microsoft Teams. |
Équipe Teams | Modifications apportées à n’importe quelle équipe dans le locataire : /teams Modifications apportées à une équipe spécifique : /teams/{id} |
Quotas maximaux d'abonnement : |
Teams Shifts offerShiftRequest | Modifications apportées à toute demande de shift d’offre dans une équipe : /teams/{id}/schedule/offerShiftRequests |
Quotas maximaux d'abonnement : |
Teams Shifts openShiftChangeRequest | Modifications apportées à toute demande de shift ouverte dans une équipe : /teams/{id}/schedule/openShiftChangeRequests |
Quotas maximaux d'abonnement : |
Équipes Shifts shifts | Modifications apportées à n’importe quel changement dans une équipe : /teams/{id}/schedule/shifts |
Quotas maximaux d'abonnement : |
Teams Shifts swapShiftsChangeRequest | Modifications apportées à toute demande de shift d’échange dans une équipe : /teams/{id}/schedule/swapShiftsChangeRequests |
Quotas maximaux d'abonnement : |
Teams Shifts timeOffRequest | Modifications apportées à toute demande de congé dans une équipe : /teams/{id}/schedule/timeOffRequests |
Quotas maximaux d'abonnement : |
todoTask | Modifications apportées à toutes les tâches d’une liste de tâches spécifique : /me/todo/lists/{todoTaskListId}/tasks |
- |
utilisateur | Modifications apportées à tous les utilisateurs : /users Modifications apportées à un utilisateur spécifique : /users/{id} |
Quotas maximaux d'abonnement : Non pris en charge pour les comptes Microsoft personnels tels que outlook.com. Non pris en charge pour les locataires Azure AD B2C. NOTE: La création et la suppression réversible d’utilisateurs déclenchent également le updated changeType. |
Remarque
De nombreuses ressources ont des limites ou des quotas sur le nombre d’abonnements qui peuvent être effectués sur cette ressource. En cas de dépassement de cette limite, les tentatives de création d’un abonnement entraînent une 403 Forbidden
réponse d’erreur.
La propriété message de la réponse d’erreur explique la limite qui a été dépassée.
Certaines de ces ressources prennent en charge les notifications enrichies (notifications avec des données de ressources). Pour plus d’informations sur les ressources qui prennent en charge les notifications enrichies, consultez Configurer des notifications de modification qui incluent des données de ressources.
Remarque : les chemins d’accès aux ressources qui commencent par
/users/{id}
peuvent également accepter/me
pour référencer l’utilisateur connecté.
Autorisations
En règle générale, les opérations d’abonnement nécessitent l’autorisation d’accès en lecture à la ressource. Par exemple, pour recevoir des notifications pour les messages, votre application requiert l’autorisation Mail.Read
. L’article create subscription répertorie les autorisations nécessaires pour chaque type de ressource. Le tableau suivant répertorie les types d’autorisations que votre application peut demander pour utiliser des Webhooks pour des types de ressources spécifiques.
Type d’autorisation | Types de ressources pris en charge |
---|---|
Délégué : compte professionnel ou scolaire | alert, callRecording, callTranscript, channel, chat, chatMessage (préversion), contact, conversation, conversationMember, driveItem, event, group, list, message, offerShiftRequest, openShiftChangeRequest, presence, shift, swapShiftsChangeRequest, team, timeOffRequest, todoTask, user, baseTask (déconseillé) |
Délégué : compte Microsoft personnel | contact, driveItem, event, list, message, todoTask, baseTask (déconseillé) |
Application | alert, callRecord, approvals, callRecording, callTranscript, channel, chat, chatMessage, contact, conversationMember, driveItem, event, group, list, message, offerShiftRequest, onlineMeeting, openShiftChangeRequest, printer, printTaskDefinition, shift, swapShiftsChangeRequest, team, timeOffRequest, user |