API контактов списка графиков Microsoft возвращает контакты, которые не отображаются в пользовательском интерфейсе Outlook - PullRequest
1 голос
/ 22 марта 2019

Outlook UI

Вы можете видеть, что я сделал три тестовых контакта в пользовательском интерфейсе, доступном здесь: https://outlook.live.com/people/

API списка контактов Microsoft Graph

Когда я вызываю API списка контактов (https://graph.microsoft.com/beta/me/contacts?$orderby=createdDateTime desc&$top=50), я получаю список контактов, который намного обширнее, чем список, видимый в пользовательском интерфейсе. Эти контакты, кажется, кто-то, кто послал мне по электронной почте или кому-то, кого я послал по электронной почте.

Проблема

Если я захочу провести опрос по конечной точке GET /me/contacts, чтобы получить какие-либо данные при каждом новом контакте, я получу уведомление каждый раз, когда кто-то новый отправляет мне электронное письмо или каждый раз, когда я отправляю кому-то новое электронное письмо ( даже если я не создал контакт вручную).

Это намеренно? Если да, есть ли какие-либо фильтры, которые я мог бы добавить, чтобы указать, что я не хочу получать контакты, которые не были созданы мной вручную? Просматривая JSON-представление контакта , я не вижу ничего, что можно отфильтровать.

Возможное решение

Я думал только, что заметил, что созданные для меня контакты существуют в папке, которая не возвращается в конечную точку API contactFolders . Я мог бы теоретически сделать вызов этой конечной точке, взять список возвращенных контактов и проверить, существует ли там parentFolderId. Если это так, возможно, это потому, что мы создали контакт, а если нет, то это сделано для нас. Это кажется ужасно хакерским.

Спасибо за помощь!

1 Ответ

0 голосов
/ 09 апреля 2019

Это проблема с API бета-версии Microsoft Graph. Переключение на v1.0 API REST Graph решило эту проблему.

...