Obtenir un abonnement

Espace de noms: microsoft.graph

Récupérer les propriétés et les relations d’un abonnement.

Consultez le tableau dans la section Autorisations pour la liste des ressources qui prennent en change l’abonnement aux notifications de modification.

Autorisations

En fonction du type de ressource et d’autorisation(délégué ou application) demandé, l’autorisation spécifiée dans le tableau suivant est la moins requise privilégiée pour appeler cette API. Pour en savoir plus, notamment sur les Mesures de prudence avant de choisir des autorisations plus privilégiées, recherchez ces autorisations dans Autorisations.

Ressource prise en charge Déléguée (compte professionnel ou scolaire) Déléguée (compte Microsoft personnel) Application
callRecord Non pris en charge Non pris en charge CallRecords.Read.All
canal (/teams/getAllChannels : tous les canaux d'une organisation) Non pris en charge Non pris en charge Channel.ReadBasic.All, ChannelSettings.Read.All, ChannelSettings.ReadWrite.All
canal (/teams/{id}/channels) Channel.ReadBasic.All, ChannelSettings.Read.All, ChannelSettings.ReadWrite.All Non pris en charge Channel.ReadBasic.All, ChannelSettings.Read.All, ChannelSettings.ReadWrite.All
chat (/conversations : toutes les conversations d’une organisation) Non pris en charge Non pris en charge Chat.ReadBasic.All, Chat.Read.All, Chat.ReadWrite.All
chat (/chats/{id}) Chat.ReadBasic, Chat.Read, Chat.ReadWrite Non pris en charge ChatSettings.Read.Chat , ChatSettings.ReadWrite.Chat, Chat.Manage.Chat*, Chat.ReadBasic.All, Chat.Read.All, Chat.ReadWrite.All
chatMessage (/teams/{id}/channels/{id}/messages) ChannelMessage.Read.All Non pris en charge ChannelMessage.Read.Group*, ChannelMessage.Read.All
chatMessage (/teams/getAllMessages--tous les messages de canal dans l’organisation) Non pris en charge Non pris en charge ChannelMessage.Read.All
chatMessage (/chats/{id}/messages) Non pris en charge Non pris en charge Chat.Read.All
chatMessage (/teams/getAllMessages--tous les messages de canal dans l’organisation) Non pris en charge Non pris en charge Chat.Read.All
contact Contacts.Read Contacts.Read Contacts.Read
conversationMember (/chats/getAllMembers) Non pris en charge Non pris en charge ChatMember.Read.All, ChatMember.ReadWrite.All, Chat.ReadBasic.All, Chat.Read.All, Chat.ReadWrite.All
conversationMember (/chats/{id}/members) ChatMember.Read, ChatMember.ReadWrite, Chat.ReadBasic, Chat.Read, Chat.ReadWrite Non pris en charge ChatMember.Read.Chat , Chat.Manage.Chat, ChatMember.Read.All, ChatMember.ReadWrite.All, Chat.ReadBasic.All, Chat.Read.All, Chat.ReadWrite.All
conversationMember (/teams/{id}/members) TeamMember.Read.All Non pris en charge TeamMember.Read.All
conversationMember (/teams/{id}/channels/getAllMembers) Non pris en charge Non pris en charge ChannelMember.Read.All
driveItem(OneDrive personnel de l’utilisateur) Non pris en charge Files.ReadWrite Non pris en charge
driveItem(Microsoft OneDrive Entreprise) Files.ReadWrite.All Non pris en charge Files.ReadWrite.All
event Calendars.Read Calendars.Read Calendars.Read
groupe Group.Read.All Non pris en charge Group.Read.All
Conversation de groupe Group.Read.All Non pris en charge Non pris en charge
liste Sites.ReadWrite.All Non pris en charge Sites.ReadWrite.All
message Mail.ReadBasic, Mail.Read Mail.ReadBasic, Mail.Read Mail.Read
imprimante Non pris en charge Non pris en charge Printer.Read.All, Printer.ReadWrite.All
printTaskDefinition Non pris en charge Non pris en charge PrintTaskDefinition.ReadWrite.All
alerte de sécurité SecurityEvents.ReadWrite.All Non pris en charge SecurityEvents.ReadWrite.All
teams (/teams : toutes les équipes d'une organisation) Non pris en charge Non pris en charge Team.ReadBasic.All, TeamSettings.Read.All
équipe (/teams/{id}) Team.ReadBasic.All, TeamSettings.Read.All Non pris en charge Team.ReadBasic.All, TeamSettings.Read.All
todoTask Tasks.ReadWrite Tasks.ReadWrite Non pris en charge
utilisateur User.Read.All User.Read.All User.Read.All

Remarque : les autorisations marquées d’un astérisque (*) utilisent une autorisation propre aux ressources.

chatMessage

Les abonnements chatMessage peuvent être spécifiés pour inclure des données de ressource. S’il est spécifié pour inclure des données de ressource (ncludeResourceData défini sur true), le chiffrement est nécessaire. La création de l’abonnement échoue si un encryptionCertificate n’est pas spécifié pour ces abonnements. Avant de pouvoir créer un abonnement chatMessage avec des autorisations d’application, vous devrez peut-être demander l’accès. Pour plus d’informations, consultez API protégées dans Microsoft Teams.

Vous devez utiliser l’en-tête de requête pour obtenir les Prefer: include-unknown-enum-members valeurs suivantes dans l’enum****évoluent messageType chatMessage : for systemEventMessage et /teams/{id}/channels/{id}/messages /chats/{id}/messages resource.

Notes

/teams/getAllMessages, /chats/getAllMessages, /me/chats/getAllMessages, et /users/{id}/chats/getAllMessages ont des exigences de licence et de paiement. /teams/getAllMessages et /chats/getAllMessages prennent en charge model=A et model=B les paramètres de requête, /me/chats/getAllMessages et /users/{id}/chats/getAllMessages pris en charge uniquement model=B. Si aucun modèle n’est spécifié, le mode d’évaluation sera utilisé.

conversationMember

Notes

/teams/getAllMembers et a /chats/getAllMembers des exigences de licence et de paiement. /teams/getAllMembers et /chats/getAllMembers prise en charge des model=A model=B paramètres de requête et à la fois. Si aucun modèle n’est spécifié, le mode d’évaluation sera utilisé.

Exemple de requête

Spécifiez model le paramètre de requête dans la propriété de ressource dans le corps de la requête.

POST https://graph.microsoft.com/beta/subscriptions
Content-type: application/json

{
   "changeType": "created",
   "notificationUrl": "https://webhook.azurewebsites.net/api/send/myNotifyClient",
   "resource": "chats/getAllMessages?model=A",
   "expirationDateTime":"2016-11-20T18:23:45.9356913Z",
   "clientState": "secretClientValue",
   "latestSupportedTlsVersion": "v1_2"
}

driveItem

Des limitations supplémentaires s’appliquent aux abonnements sur les éléments OneDrive. Les limitations s’appliquent à la création, ainsi que de la gestion des abonnements (prise, la mise à jour et suppression d’abonnements).

Sur un OneDrive personnel, vous pouvez vous abonner au dossier racine ou à tout sous-dossier de ce lecteur. Sur OneDrive pour les entreprises, vous pouvez vous abonner uniquement au dossier racine. Les notifications de modification sont envoyées pour les types demandés de modifications sur le dossier concerné, ou n’importe quel fichier ou dossier, ou d’autres instances driveItem dans leur hiérarchie. Vous ne pouvez pas vous abonner au lecteur ou aux instances driveItem qui ne sont pas des dossiers, tels que les fichiers individuels.

contact, événement et message

Vous pouvez vous abonner aux modifications apportées aux ressources de contacts, d’événements ou de messages d’Outlook.

La création et la gestion (obtention, mise à jour et suppression) d’un abonnement nécessitent une étendue de lecture de la ressource. Par exemple, pour recevoir des notifications de modification sur les messages, votre application a besoin de l’autorisation Mail Read. Les notifications de modification Outlook prennent en charge les étendues d’autorisation déléguées et d’application. Notez les limitations suivantes :

  • L’autorisation déléguée permet de s'abonner à des articles dans des dossiers qui se trouvent uniquement dans la boîte aux lettres de l'utilisateur connecté. Cela signifie que, par exemple, vous ne pouvez pas utiliser l’autorisation déléguée Calendars.Read pour vous abonner à des événements dans la boîte aux lettres d’un autre utilisateur.

  • Pour vous abonner afin de modifier les notifications de contacts, d’événements ou de messages dans Outlook dans dossiers partagés ou délégués:

    • Permet de s’abonner aux modifications d’éléments dans un dossier ou une boîte aux lettres de l’autorisation d’application correspondante n’importe quel utilisateur dans le client.
    • N’utilisez pas les autorisations Outlook (Contacts.Read.Shared, Calendars.Read.Shared, Mail.Read.Shared et leurs équivalents en lecture/écriture), de partage à ceux inscrits non partagés de prise en charge de l’abonnement pour modifier les notifications sur les éléments dans ou dossiers délégués.

Requête HTTP

GET /subscriptions/{id}

Paramètres facultatifs de la requête

Cette méthode prend en charge les paramètres de requête OData pour vous aider à personnaliser la réponse.

En-têtes de demande

Nom Type Description
Autorisation string Porteur {token}. Obligatoire.

Corps de la demande

N’indiquez pas le corps de la demande pour cette méthode.

Réponse

Si elle réussit, cette méthode renvoie un code de réponse 200 OK et un objet abonnement dans le corps de la réponse.

Exemple

Demande

Voici un exemple de demande.

GET https://graph.microsoft.com/v1.0/subscriptions/{id}
Réponse

Voici un exemple de réponse.

HTTP/1.1 200 OK
Content-type: application/json

{
  "id":"7f105c7d-2dc5-4530-97cd-4e7ae6534c07",
  "resource":"me/messages",
  "applicationId" : "string",
  "changeType":"created,updated",
  "clientState":"secretClientValue",
  "notificationUrl":"https://webhook.azurewebsites.net/api/send/myNotifyClient",
  "lifecycleNotificationUrl":"https://webhook.azurewebsites.net/api/send/lifecycleNotifications",
  "expirationDateTime":"2016-11-20T18:23:45.9356913Z",
  "creatorId": "string",
  "latestSupportedTlsVersion": "v1_2",
  "encryptionCertificate": "",
  "encryptionCertificateId": "",
  "includeResourceData": false,
  "notificationContentType": "application/json"
}