共有フォルダー内にある Outlook の連絡先を取得する

Outlook では、ユーザーがフォルダーを互いに共有し、個々の連絡先フォルダーに対する読み取り、作成、変更、削除のアクセス権を与えることができます。 Outlook を使用すると、顧客は別のユーザーを委任して顧客の代わりに行動し、特定のフォルダーまたは顧客のメールボックス全体にアクセスすることもできます。これは Outlook の 委任 とも呼ばれます。

Microsoft Graph では、他のユーザーによって共有された連絡先フォルダーの連絡先を取得したり、共有フォルダー自体を取得したりする機能がプログラムとしてサポートされています。 また、委任メールボックスのフォルダーにもサポートが適用されます。

たとえば、Garth が John とカスタム連絡先フォルダーを共有し、John に読み取りアクセス権を与えたとします。 John がアプリにサインインし、委任されたアクセス許可 (Contacts.Read.Shared または Contacts.ReadWrite.Shared) を提供した場合、アプリは Garth のカスタム連絡先フォルダーとそのフォルダー内の連絡先にアクセスできます。 詳細については、次のセクションを参照してください。

注:

共有アクセス許可 (Contacts.Read.Shared または Contacts.ReadWrite.Shared) を使用すると、共有フォルダーまたは委任されたフォルダー内の連絡先の読み取りまたは書き込みを行うことができます。 そのようなフォルダーでアイテムの変更通知をサブスクライブすることはできません。 テナントで共有フォルダー、委任フォルダー、その他のユーザーの連絡先フォルダーに含まれている連絡先に変更通知サブスクリプションを設定するには、アプリケーション アクセス許可の Contacts.Read を使用します。

共有フォルダー内の連絡先を取得

Garth が John と共有したカスタム連絡先フォルダーの特定の連絡先を取得できます。

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

正常に終了すると、HTTP 200 OK となり、Garth の共有連絡先フォルダー{id}によって識別される連絡先インスタンスが取得されます。

共有フォルダー内の全連絡先を取得

Garth の共有フォルダー内の全連絡先を取得します。

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

正常に終了すると、HTTP 200 OK となり、Garth の共有連絡先フォルダーにある連絡先インスタンスのコレクションが取得されます。

共有フォルダーを取得

Garth が John と共有した連絡先フォルダーを取得します。

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

正常に終了すると、HTTP 200 OK となり、Garth の共有連絡先フォルダーを表す contactFolder インスタンスを取得します。

Garth が John に対して自分のメールボックス全体を John に委任していた場合も、同じ GET 機能が適用されます。

Garth が連絡先フォルダーを John と共有していない場合、またメールボックスを John に委任していない場合は、それらの GET 操作で Garth のユーザー ID またはユーザー プリンシパル名を指定するとエラーが返されます。

次の手順

詳細情報: