Partager via


Type de ressource Abonnement

Espace de noms: microsoft.graph

Représente un abonnement qui permet à une application cliente de recevoir des notifications de modification concernant les modifications apportées aux données dans Microsoft Graph.

Pour plus d’informations sur les abonnements et les notifications de modification, notamment sur les ressources qui prennent en charge les notifications de modification, consultez Configurer des notifications pour les modifications apportées aux données de ressources.

Méthodes

Méthode Type renvoyé Description
List abonnement Répertorie les abonnements actifs.
Create abonnement S’abonne à une application de lecture pour recevoir des notifications de modification lorsque les données Microsoft Graph changent. Lorsqu’un susbcription est créé et valdié avec succès, Microsoft Graph envoie à l’application au moins un objet changeNotificationCollection chaque fois qu’une modification est apportée à la ressource abonnée.
Obtenir abonnement Lit les propriétés et les relations d’un objet subscription.
Mettre à jour abonnement Mises à jour un délai d’expiration de l’abonnement pour le renouvellement et/ou met à jour la notificationUrl pour la remise.
Supprimer Aucun Supprime un objet subscription.
Réautoriser Aucun Réautorisez un abonnement lorsque vous recevez un défi de réautorisationRequired .

Propriétés

Propriété Type Description
applicationId Chaîne Facultatif. Identificateur de l’application utilisée pour créer l’abonnement. En lecture seule.
changeType Chaîne Obligatoire. Indique le type de modification dans la ressource abonnée qui déclenche une notification de modification. Les valeurs prises en charge sont : created, updated, deleted. Plusieurs valeurs peuvent être combinées à l’aide d’une liste délimitée par des virgules.

Remarque :
  • Les notifications de modification d’élément racine de lecteur et de liste prennent en charge uniquement updated le changeType.
  • Les notifications de modification d’utilisateurs et de groupes prennent en charge le changeType updated et deleted. Utilisez updated pour recevoir des notifications lors de la création, de la mise à jour ou de la suppression réversible d’un utilisateur ou d’un groupe. Utilisez deleted pour recevoir des notifications lorsque l’utilisateur ou le groupe est supprimé définitivement.
  • clientState String Facultatif. Spécifie la valeur de la propriété clientState envoyée par le service dans chaque notification de modification. La longueur maximale est de 128 caractères. Le client peut vérifier que la notification de modification provient du service en comparant la valeur de la propriété clientState envoyée avec l’abonnement et la valeur de la propriété clientState reçue avec chaque notification de modification.
    creatorId String Facultatif. Identificateur de l’utilisateur ou le principal de service qui a créé l’abonnement. Si l’application a utilisé des autorisations déléguées pour créer l’abonnement, ce champ contient l’ID de l’utilisateur connecté dont l’application a appelé le nom. Si l’application utilisait des autorisations d’application, ce champ contient l’ID du principal de service correspondant à l’application. En lecture seule.
    encryptionCertificate String Facultatif. Représentation base64 d’un certificat avec une clé publique utilisée pour chiffrer des données de ressources dans les notifications de modifications. Facultatif, mais requis lorsque includeResourceData esttrue .
    encryptionCertificateId String Facultatif. Identificateur fourni par une application personnalisée pour vous aider à identifier le certificat nécessaire au déchiffrement des données de ressource.
    expirationDateTime DateTimeOffset Obligatoire. Spécifie la date et l’heure d’expiration de l’abonnement webhook. L’heure est au format UTC et peut être une durée depuis la création d’un abonnement, qui varie pour la ressource à laquelle l’utilisateur est abonné. Pour connaître la durée maximale prise en charge de l’abonnement, consultez Durée de vie de l’abonnement.
    id String Facultatif. Identificateur unique pour l’abonnement. En lecture seule.
    includeResourceData Boolean Facultatif. Lorsque la valeur est true, les notifications de modification incluent les données de ressources (telles que le contenu d’un message de conversation).
    latestSupportedTlsVersion String Facultatif. Indique la dernière version de TLS (Transport Layer Security) que le point de terminaison de notification, spécifié par notificationUrl, prend en charge. Les valeurs possibles sont v1_0, v1_1, v1_2, v1_3.

    Pour les abonnés dont le point de terminaison de notification prend en charge une version inférieure à la version actuellement recommandée (TLS 1.2), la spécification de cette propriété par un ensemble chronologie leur permet d’utiliser temporairement leur version déconseillée de TLS avant d’effectuer leur mise à niveau vers TLS 1.2. Pour ces abonnés, le fait de ne pas définir cette propriété en raison de la chronologie entraîne l’échec des opérations d’abonnement.

    Pour les abonnés dont le point de terminaison de notification prend déjà en charge TLS 1.2, la définition de cette propriété est facultative. Dans ce cas, Microsoft Graph par défaut, la propriété est v1_2.
    lifecycleNotificationUrl String Obligatoire pour les ressources Teams si la expirationDateTime valeur est supérieure à 1 heure à partir de maintenant ; facultatif dans le cas contraire. URL du point de terminaison qui reçoit les notifications de cycle de vie, y compris subscriptionRemovedles notifications , reauthorizationRequiredet missed . Cette URL doit utiliser le protocole HTTPS. Pour plus d’informations, consultez Réduire les abonnements manquants et notifications de modification.
    notificationQueryOptions String Facultatif. Options de requête OData pour spécifier la valeur de la ressource cible Les clients reçoivent des notifications lorsque la ressource atteint l’état correspondant aux options de requête fournies ici. Avec cette nouvelle propriété dans la charge utile de création d’abonnement avec toutes les propriétés existantes, les webhooks distribuent des notifications chaque fois qu’une ressource atteint l’état souhaité mentionné dans la propriété notificationQueryOptions. Par exemple, lorsque le travail d’impression est terminé ou lorsqu’une valeur de propriété de ressource de travail isFetchable d’impression true devient, etc.

    Pris en charge uniquement pour le service d’impression universelle. Pour plus d’informations, consultez S’abonner aux notifications de modification des API d’impression cloud à l’aide de Microsoft Graph.
    notificationUrl Chaîne Obligatoire. URL du point de terminaison qui reçoit les notifications de modification. Cette URL doit utiliser le protocole HTTPS. Tout paramètre de chaîne de requête inclus dans la propriété notificationUrl est inclus dans la requête HTTP POST lorsque Microsoft Graph envoie les notifications de modification.
    notificationUrlAppId String Facultatif. ID d’application que le service d’abonnement peut utiliser pour générer le jeton de validation. La valeur permet au client de valider l’authenticité de la notification reçue.
    ressource Chaîne Obligatoire. Spécifie la ressource qui est surveillée pour les modifications. N’incluez pas l’URL de base (https://graph.microsoft.com/v1.0/). Voir les valeurs possibles de chemin d’accès ressource pour chaque ressource prise en charge.

    Durée de vie de l’abonnement

    Les abonnements ont une durée de vie limitée. Les applications doivent renouveler leurs abonnements avant l’heure d’expiration ; dans le cas contraire, ils doivent créer un nouvel abonnement. Les applications peuvent également annuler leur abonnement à tout moment pour ne plus recevoir de notifications de modifications.

    Le tableau suivant indique les durées d’expiration maximales des abonnements par ressource dans Microsoft Graph.

    Resource Délai d’expiration maximal
    Alerte de sécurité 43 200 minutes (moins de 30 jours)
    Approbations Teams 43 200 minutes (moins de 30 jours)
    Teams callRecord 4 230 minutes (moins de trois jours)
    CallRecording Teams 4 320 minutes (trois jours)
    Teams callTranscript 4 320 minutes (trois jours)
    Canal Teams 4 320 minutes (trois jours)
    Conversation Teams 4 320 minutes (trois jours)
    chatmessage Teams 4 320 minutes (trois jours)
    conversationMember Teams 4 320 minutes (trois jours)
    Teams onlineMeeting 4 320 minutes (trois jours)
    Équipe Teams 4 320 minutes (trois jours)
    Teams TeamsAppInstallation 4 320 minutes (3 jours)
    Teams Shifts offerShiftRequest 360 minutes (6 heures)
    Teams Shifts openShiftChangeRequest 360 minutes (6 heures)
    Équipes Shifts shifts 360 minutes (6 heures)
    Teams Shifts swapShiftsChangeRequest 360 minutes (6 heures)
    Teams Shifts timeOffRequest 360 minutes (6 heures)
    Conversation de groupe 4 230 minutes (moins de trois jours)
    OneDrive driveItem 42 300 minutes (moins de 30 jours)
    Liste SharePoint 42 300 minutes (moins de 30 jours)
    Message Outlook, événement, contact 10 080 minutes (moins de sept jours)
    Ressources d’utilisateur, de groupeet d’annuaire 41 760 minutes (moins de 29 jours)
    onlineMeeting 4 230 minutes (moins de trois jours)
    présence 60 minutes (1 heure)
    Imprimer imprimante 4 230 minutes (moins de trois jours)
    Imprimer printTaskDefinition 4 230 minutes (moins de trois jours)
    todoTask 4 230 minutes (moins de trois jours)

    Les webhooks pour cette ressource sont disponibles uniquement dans le point de terminaison global et non dans les clouds nationaux.
    baseTask (déconseillé) 4 230 minutes (moins de trois jours)

    Note:les applications existantes et nouvelles ne doivent pas dépasser la valeur prise en charge. À l’avenir, les demandes pour créer ou renouveler un abonnement au-delà de la valeur maximale peut échouer.

    Latence

    Le tableau suivant indique le temps de latence à prévoir entre un événement survenant dans le service et la remise de la notification de changement.

    Ressource Latence moyenne Latence maximale
    alerte1 Moins de 3 minutes 5 minutes
    Approbations Moins de 10 secondes 40 secondes
    calendar Less than 1 minute 3 minutes
    callRecord Moins de 15 minutes 60 minutes
    callRecording Moins de 10 secondes 60 minutes
    callTranscript Moins de 10 secondes 60 minutes
    canal Moins de 10 secondes 60 minutes
    conversation Moins de 10 secondes 60 minutes
    chatMessage Moins de 10 secondes 1 minute
    contact Less than 1 minute 3 minutes
    conversation Inconnu Inconnu
    conversationMember Moins de 10 secondes 60 minutes
    driveItem Less than 1 minute 5 minutes
    événement Inconnu Inconnu
    groupe Inconnu Inconnu
    liste Less than 1 minute 5 minutes
    message Less than 1 minute 3 minutes
    offerShiftRequest Less than 1 minute 60 minutes
    onlineMeeting Moins de 10 secondes 1 minute
    openShiftChangeRequest Less than 1 minute 60 minutes
    présence Moins de 10 secondes 1 minute
    imprimante Less than 1 minute 5 minutes
    printTaskDefinition Less than 1 minute 5 minutes
    shift Less than 1 minute 60 minutes
    swapShiftsChangeRequest Less than 1 minute 60 minutes
    équipe Moins de 10 secondes 60 minutes
    teamsAppInstallation Moins de 10 secondes 60 minutes
    timeOffRequest Less than 1 minute 60 minutes
    todoTask Moins de 2 minutes 15 minutes
    utilisateur Inconnu Inconnu

    1 La latence fournie pour la ressource d’alerte s’applique uniquement après la création de l’alerte. Il n’inclut pas le temps nécessaire à une règle pour créer une alerte à partir des données.

    Relations

    Aucun.

    Représentation JSON

    La représentation JSON suivante montre le type de ressource.

    {
      "@odata.type": "#microsoft.graph.subscription",
      "applicationId": "String",
      "changeType": "String",
      "clientState": "String",
      "creatorId": "String",
      "encryptionCertificate": "String",
      "encryptionCertificateId": "String",
      "expirationDateTime": "String (timestamp)",
      "id": "String (identifier)",
      "includeResourceData": "Boolean",
      "latestSupportedTlsVersion": "String",
      "lifecycleNotificationUrl": "String",
      "notificationQueryOptions": "String",
      "notificationUrl": "String",
      "notificationUrlAppId": "String",
      "resource": "String"
    }