Obtenir des contacts Outlook dans un dossier partagé

Outlook permet aux clients de partager des dossiers au sein de leur organisation et d’autoriser un accès en lecture, en création, en modification ou en suppression à des dossiers de contacts individuels. Outlook permet également à un client de déléguer à un autre utilisateur la possibilité d’agir à sa place, ainsi que d’accéder à des dossiers spécifiques ou à l’intégralité de sa boîte aux lettres. Cette opération est également appelée « délégation » dans Outlook.

Microsoft Graph prend en charge par programme l’obtention de contacts dans des dossiers de contacts partagés par d’autres utilisateurs, ainsi que l’obtention des dossiers partagés proprement dits. La prise en charge s’applique également aux dossiers d’une boîte aux lettres déléguée.

Par exemple, Garth a partagé avec John un dossier de contacts personnalisé et a attribué John l’accès en lecture. Si John s’est connecté à votre application et a fourni des autorisations déléguées (Contacts.Read.Shared or Contacts.ReadWrite.Shared), votre application peut accéder au dossier de contacts personnalisé de Garth ainsi qu’aux contacts figurant dans celui-ci comme décrit ci-dessous.

Remarque : les autorisations de partage (Contacts.Read.Shared ou Contacts.ReadWrite.Shared) vous permettent de lire ou d’écrire des contacts dans un dossier partagé ou délégué. Elles ne prennent pas en charge l’abonnement aux notifications de modifications sur les éléments dans ces dossiers. Pour configurer les abonnements aux notifications de modifications sur les contacts dans un dossier de contacts partagé, délégué ou tout autre dossier de contacts utilisateur dans le client, utilisez l’autorisation d’application Contacts.Read.

Obtenir un contact dans le dossier partagé

Vous pouvez obtenir un contact spécifique dans le dossier de contacts personnalisé que Garth a partagé avec John :

GET users/{Garth-userId | Garth-userPrincipalName}/contactFolders/{folder-id}/contacts/{id}

Si l’opération réussit, vous recevez le message « HTTP 200 OK » et l’instance contact identifiée par {id} du dossier de contacts partagé de Garth.

Obtenir tous les contacts dans le dossier partagé

Obtenez tous les contacts du dossier de contacts partagé de Garth :

GET users/{Garth-userId | Garth-userPrincipalName}/contactFolders/{folder-id}/contacts

Si l’opération réussit, vous recevez le message « HTTP 200 OK » et une collection d’instances contact dans le dossier de contacts partagé de Garth.

Obtenir le dossier partagé

Obtenez le dossier de contacts que Garth a partagé avec John.

GET users/{Garth-userId | Garth-userPrincipalName}/contactFolders/{folder-id}

Si l’opération réussit, vous recevez le message « HTTP 200 OK » et une instance contactFolder représentant le dossier de contacts partagé de Garth.

Les mêmes fonctionnalités GET s’appliquent si Garth a délégué à John sa boîte aux lettres entière.

Si Garth n’a pas partagé le dossier de contacts avec John et ne lui a pas délégué sa boîte aux lettres, un message d’erreur s’affiche en cas de spécification de l’ID utilisateur ou du nom d’utilisateur principal de Garth dans ces opérations GET.

Étapes suivantes

Pour en savoir plus, voir :