連絡先を一覧表示する
名前空間: microsoft.graph
サインイン中のユーザーの既定の連絡先フォルダーから連絡先コレクションを取得します。
アプリが別のユーザーの連絡先フォルダーから連絡先を取得できるシナリオは2つあります。
- アプリにアプリケーションのアクセス許可がある場合。または
- あるユーザーからアプリに適切な代理アクセス許可が付与され、別のユーザーがそのユーザーと連絡先フォルダーを共有しているか、そのユーザーに代理アクセスを付与している場合。詳細と例を参照してください。
アクセス許可
この 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/v1.0/me/contacts?$filter=emailAddresses/any(a:a/address eq 'garth@contoso.com')
$filter、anyそしてeq演算子を使用できるのは emailAddresses コレクションの address サブプロパティのみなので注意が必要です 。 すなわち、氏名 または emailAddresses の 1 つのインスタンスの他のサブ プロパティでフィルター抽出することはできませんし、filter 以下のような ne, leや startswith()その他の演算子や関数を適用したりすることはできません。
$filterクエリのパラメーターの一般的な情報については、OData クエリ パラメーターを参照してください。
要求ヘッダー
| ヘッダー | 値 |
|---|---|
| Authorization | ベアラー {token}。必須。 |
要求本文
このメソッドには、要求本文を指定しません。
応答
成功した場合、このメソッドは 200 OK 応答コードと、応答本文で Contact オブジェクトのコレクションを返します。
例
要求
以下は、要求の例です。
GET https://graph.microsoft.com/v1.0/me/contacts
応答
以下に応答の例を示します。注: ここに示す応答オブジェクトは、読みやすさのために短縮されている可能性があります。
HTTP/1.1 200 OK
Content-type: application/json
{
"value": [
{
"parentFolderId": "parentFolderId-value",
"birthday": "datetime-value",
"fileAs": "fileAs-value",
"displayName": "displayName-value",
"givenName": "givenName-value",
"initials": "initials-value"
}
]
}
フィードバック
フィードバックの送信と表示