Type de ressource Abonnement

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.

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
Obtenir des abonnements abonnement Répertorier les abonnements actifs.
Créer un abonnement abonnement Abonnez-vous à une application d’écouteur pour recevoir des notifications de modification lorsque les données Microsoft Graph changent.
Obtenir un abonnement abonnement Lit les propriétés et les relations de l’objet d’abonnement.
Mettre à jour un abonnement abonnement Renouvelez un abonnement en mettant à jour son heure d’expiration.
Supprimer un abonnement Aucun Supprimer un objet d’abonnement.
Réautoriser Aucune 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 255 caractères. Le client peut case activée que la notification de modification provient du service en comparant la valeur de la propriété clientState envoyée avec l’abonnement à 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 Chaîne 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. Obligatoire lorsque includeResourceData a la valeur true.
    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 Chaîne 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.
    notificationContentType Chaîne Facultatif. Type de contenu souhaité pour Microsoft Graph notifications de modification pour les types de ressources pris en charge. Le type de contenu par défaut est application/json .
    notificationQueryOptions String Facultatif. Options de requête OData pour spécifier la valeur de la ressource de ciblage. 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/beta/). 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)
    Teams callRecord 4 230 minutes (moins de 3 jours)
    CallRecording Teams 4 320 minutes (3 jours)
    Teams callTranscript 4 320 minutes (3 jours)
    Canal Teams 4 320 minutes (3 jours)
    Conversation Teams 4 320 minutes (3 jours)
    chatmessage Teams 4 320 minutes (3 jours)
    conversationMember Teams 4 320 minutes (3 jours)
    Teams onlineMeeting 4 320 minutes (3 jours)
    Équipe Teams 4 320 minutes (3 jours)
    Conversation de groupe 4 230 minutes (moins de 3 jours)
    OneDrive driveItem 42 300 minutes (moins de 30 jours)
    Liste SharePoint 42 300 minutes (moins de 30 jours)
    Message Outlook, événement, contact 4 230 minutes (moins de 3 jours)
    Ressources d’utilisateur, de groupeet d’annuaire 41 760 minutes (moins de 29 jours)
    onlineMeeting 4 230 minutes (moins de 3 jours)
    présence 60 minutes (1 heure)
    Imprimer imprimante 4 230 minutes (moins de 3 jours)
    Imprimer printTaskDefinition 4 230 minutes (moins de 3 jours)
    todoTask 4 230 minutes (moins de 3 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 3 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
    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
    onlineMeeting Moins de 10 secondes 1 minute
    présence Moins de 10 secondes 1 minute
    imprimante Less than 1 minute 5 minutes
    printTaskDefinition Less than 1 minute 5 minutes
    équipe Moins de 10 secondes 60 minutes
    todoTask Moins de 2 minutes 15 minutes
    utilisateur Moins de 2 minutes 15 minutes

    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",
      "notificationContentType": "String",
      "notificationQueryOptions": "String",
      "notificationUrl": "String",
      "notificationUrlAppId": "String",
      "resource": "String"
    }