Список контактов
Пространство имен: microsoft.graph
Получение коллекции контактов из папки контактов по умолчанию для выполнившего вход пользователя.
Существует два сценария, с помощью которых приложение может получить контакты из папки контактов другого пользователя:
- У приложения есть разрешения для приложений; или
- У приложения есть соответствующие делегированные разрешения от одного пользователя, а другой пользователь поделился с ним папкой контактов или предоставил ему делегированный доступ. См. подробные сведения и пример.
Этот API доступен в следующих национальных облачных развертываниях.
Глобальная служба | Правительство США L4 | Правительство США L5 (DOD) | Китай управляется 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
Разрешения
Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
Тип разрешения | Разрешения с наименьшими привилегиями | Более высокие привилегированные разрешения |
---|---|---|
Делегированные (рабочая или учебная учетная запись) | Contacts.Read | Contacts.ReadWrite |
Делегированные (личная учетная запись Майкрософт) | 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 '[email protected]')
Оператор , any
и eq
можно использовать $filter
только для подсвойства address экземпляров в коллекции emailAddresses. То есть нельзя выполнять фильтрацию по имени или любому другому подсоздачею экземпляра emailAddresses, а также нельзя применять любой другой оператор или функцию с filter
, например ne
, le
и startswith()
.
Общие сведения о параметре запроса $filter
см. в статье Параметры запроса OData.
Заголовки запросов
Заголовок | Значение |
---|---|
Авторизация | Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации. |
Текст запроса
Не указывайте текст запроса для этого метода.
Отклик
В случае успешного выполнения этот метод возвращает код отклика 200 OK
и коллекцию контактных объектов в теле отклика.
Пример
Запрос
Ниже показан пример запроса.
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"
}
]
}