次の方法で共有


連絡先を一覧表示する

名前空間: microsoft.graph

重要

Microsoft Graph の /beta バージョンの API は変更される可能性があります。 実稼働アプリケーションでこれらの API を使用することは、サポートされていません。 v1.0 で API を使用できるかどうかを確認するには、Version セレクターを使用します。

ユーザーのメールボックスで連絡先を取得します。

アプリが別のユーザーの連絡先フォルダーから連絡先を取得できるシナリオは2つあります。

  • アプリにアプリケーションのアクセス許可がある場合。または
  • アプリに「あるユーザーから適切に委任されたアクセス許可」があり、別のユーザーがそのユーザーとコンタクトフォルダーを共有しているか、そのユーザーに委任されたアクセスを付与している場合。 詳細と例を参照してください。

この API は、次の国内クラウド展開で使用できます。

グローバル サービス 米国政府機関 L4 米国政府機関 L5 (DOD) 21Vianet が運営する中国

アクセス許可

この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。 アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「 アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、 アクセス許可のリファレンスを参照してください

アクセス許可の種類 最小特権アクセス許可 特権の高いアクセス許可
委任 (職場または学校のアカウント) Contacts.Read Contacts.ReadWrite
委任 (個人用 Microsoft アカウント) Contacts.Read Contacts.ReadWrite
アプリケーション Contacts.Read Contacts.ReadWrite

HTTP 要求

ユーザーの既定の連絡先フォルダー内のすべての連絡先を取得する

GET /me/contacts
GET /users/{id | userPrincipalName}/contacts

ユーザーのメールボックス内の特定のフォルダーにある連絡先を取得する

GET /me/contactfolders/{Id}/contacts
GET /users/{id | userPrincipalName}/contactfolders/{id}/contacts

GET /me/contactFolders/{id}/childFolders/{id}/.../contacts
GET /users/{id | userPrincipalName}/contactFolders/{id}/childFolders/{id}/contacts

オプションのクエリ パラメーター

たとえば、$filter クエリ パラメーターを使って、メール アドレスに基づいて連絡先をフィルターすることができます。

GET https://graph.microsoft.com/beta/me/contacts?$filter=emailAddresses/any(a:a/address eq 'garth@contoso.com')

$filteranyそしてeq演算子を使用できるのはemailAddressesコレクションのaddressサブプロパティのみなので注意が必要です 。 すなわち、氏名 またはemailAddressesの 1 つのインスタンスの他のサブ プロパティでフィルター抽出することはできませんし、filter 以下のような ne, lestartswith()その他の演算子や関数を適用したりすることはできません。

$filterクエリのパラメーターの一般的な情報については、OData クエリ パラメーターを参照してください。

要求ヘッダー

ヘッダー
Authorization ベアラー {token}。 必須です。 認証と承認の詳細については、こちらをご覧ください。

要求本文

このメソッドには、要求本文を指定しません。

応答

成功した場合、このメソッドは 200 OK 応答コードと、応答本文の 連絡先 オブジェクトのコレクションを返します。

要求

次の例では、サインインしているユーザーの連絡先の displayName プロパティと emailAddresses プロパティを取得します。

GET https://graph.microsoft.com/beta/me/contacts?$select=displayName,emailAddresses

応答

次の例は応答を示しています。

注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。

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

{
    "@odata.context":"https://graph.microsoft.com/beta/$metadata#users('c3e1fcd2-db78-42a8-aec5-1f2cd59abb5c')/contacts(displayName,emailAddresses)",
    "value":[
        {
            "@odata.etag":"W/\"EQAAABYAAACv7At+UNVFRLhGciJGF6v5AAAve7f6\"",
            "id":"AAMkADh6v5AAAvgTCFAAA=",
            "displayName":"Elvis Blank",
            "emailAddresses":[
                {
                    "type":"personal",
                    "name":"Elvis Blank",
                    "address":"elvisb@contoso.com"
                },
                {
                    "type":"other",
                    "otherLabel":"Volunteer work",
                    "name":"Elvis Blank",
                    "address":"elvisb@contoso.com"
                }
            ]
        },
        {
            "@odata.etag":"W/\"EQAAABYAAACv7At+UNVFRLhGciJGF6v5AAAve7fn\"",
            "id":"AAMkADh6v5AAAvgTCEAAA=",
            "displayName":"Pavel Bansky",
            "emailAddresses":[
                {
                    "type":"personal",
                    "name":"Pavel Bansky",
                    "address":"pavelb@contoso.com"
                },
                {
                    "type":"other",
                    "otherLabel":"Volunteer work",
                    "name":"Pavel Bansky",
                    "address":"pavelb@contoso.com"
                }
            ]
        }
    ]
}