Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Пространство имен: microsoft.graph
Важно!
API версии /beta
в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.
Получение контактов в почтовом ящике пользователя.
Существует два сценария, с помощью которых приложение может получить контакты из папки контактов другого пользователя:
- У приложения есть разрешения для приложений; или
- У приложения есть соответствующие делегированные разрешения от одного пользователя, а другой пользователь поделился с ним папкой контактов или предоставил ему делегированный доступ. См. подробные сведения и пример.
Этот 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/beta/me/contacts?$filter=emailAddresses/any(a:a/address eq '[email protected]')
Обратите внимание, что вы можете использовать оператор $filter
, any
, и eq
только для дочернего свойства address для экземпляров коллекции emailAddresses. Т.е. вы не можете выполнять фильтрацию с помощью дочернего свойства name или другого дочернего свойства экземпляра emailAddresses, как и не можете применять другие операторы или функции с filter
, такие как ne
, le
и startswith()
.
Общие сведения о параметре запроса $filter
см. в статье Параметры запроса OData.
Заголовки запросов
Заголовок | Значение |
---|---|
Авторизация | Bearer {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":"[email protected]"
},
{
"type":"other",
"otherLabel":"Volunteer work",
"name":"Elvis Blank",
"address":"[email protected]"
}
]
},
{
"@odata.etag":"W/\"EQAAABYAAACv7At+UNVFRLhGciJGF6v5AAAve7fn\"",
"id":"AAMkADh6v5AAAvgTCEAAA=",
"displayName":"Pavel Bansky",
"emailAddresses":[
{
"type":"personal",
"name":"Pavel Bansky",
"address":"[email protected]"
},
{
"type":"other",
"otherLabel":"Volunteer work",
"name":"Pavel Bansky",
"address":"[email protected]"
}
]
}
]
}