Obtenir les messages Outlook dans un dossier partagé ou délégué

Outlook permet aux clients de partager des dossiers de courriers électroniques au sein de leur organisation et d’accéder en lecture, création, modification ou suppression à des dossiers individuels. Outlook permet également à un client de déléguer des tâches à un autre utilisateur afin d’agir au nom du client et d’accéder aux dossiers de courriers électroniques spécifiques ou à l’intégralité de la boîte aux lettres du client. Cette opération porte aussi le nom de « délégation » dans Outlook.

Par programme, Microsoft Graph prend en charge l’obtention de messages dans des dossiers de courrier qui ont été partagés par d’autres utilisateurs et l’obtention des dossiers partagés eux-mêmes. La prise en charge s’applique également aux dossiers délégués.

Par exemple, Garth a partagé et donné un accès en lecture à sa boîte de réception à John. Si John se connecte à votre application et fournit des autorisations déléguées (Mail.Read.Shared ou Mail.ReadWrite.Shared), votre application accède à la messagerie de Garth et à la boîte de réception de Garth, comme décrit dans cet article.

Autorisations de Microsoft Graph

Utilisez les autorisations déléguées, Mail.Read.Shared ou Mail.ReadWrite.Shared, pour respectivement lire ou écrire des messages dans un dossier partagé ou délégué.

Ces deux autorisations ne prennent pas en charge l’abonnement aux notifications de modification sur les éléments des dossiers partagés ou délégués. Pour configurer les abonnements aux notifications de modifications sur les messages dans un dossier de messagerie partagé, délégué ou tout autre dossier de messagerie utilisateur dans le client, utilisez l’autorisation d’application, Mail.Read.

Pour plus d’informations, reportez-vous à la rubrique Autorisations de messagerie.

Réception d’un message dans le dossier partagé

Vous pouvez recevoir un message spécifique de la boîte de réception de Claude :

GET users/{Garth-userId | Garth-userPrincipalName}/mailfolders('Inbox')/messages/{id}

Une fois l’opération terminée, vous obtenez HTTP 200 OK et le message instance identifié par {id} à partir de la boîte de réception de Garth.

Obtention de tous les messages dans le dossier partagé

Recevez tous les messages de la boîte de réception de Claude :

GET users/{Garth-userId | Garth-userPrincipalName}/mailfolders('Inbox')/messages

Une fois l’opération terminée, vous obtenez HTTP 200 OK et une collection d’instances de message dans la boîte de réception de Garth.

Réception du dossier partagé

Recevez le dossier (boîte de réception) que Claude a partagé avec John.

GET users/{Garth-userId | Garth-userPrincipalName}/mailfolders('Inbox')

Une fois l’opération terminée, vous obtenez HTTP 200 OK et un instance mailFolder qui représente le dossier Boîte de réception de Garth.

Les mêmes fonctionnalités GET s’appliquent si Claude délègue à John des accès supplémentaires à sa boîte de réception, ou si Claude délègue à John la totalité de sa boîte aux lettres.

Si Garth n’a pas partagé sa boîte de réception avec John, ni délégué sa boîte aux lettres à John, la spécification de l’ID utilisateur ou du nom d’utilisateur principal de Garth dans ces opérations GET renvoie une erreur.

Étapes suivantes