Microsoft Graph API - найти сообщение по интернет-сообщению

Мне нужно найти разговор для обмена электронной почтой между двумя пользователями - Джоном и Гарри. По моему сценарию:

  1. Джон отправляет сообщение Гарри.
  2. У меня есть метаданные электронной почты из электронной почты, которую Джон отправил, например,verstationId, internetMessageId, messageId (специфичный для пользователя m $ graph).
  3. Теперь я хотел бы ответить от Гарри. К сожалению, разговор о Гарри отличается от разговора с Джоном, поэтому я не могу его использовать. То, что я хотел бы сделать, это найти объект сообщения электронной почты в папке "Входящие" Гарри и использовать его chatId.
  4. Имея действительный идентификатор разговора, я смогу позвонить answerAll от имени Гарри.

Могу ли я сделать вызов как: GET /me/messages?$ Filter=internetMessageId eq abcd

1 ответ

Решение

Да, вы можете позвонить GET в предложенной вами форме - пробовали ли вы это? Граф API поддерживает стандартные параметры запроса ODATA.

В графе API проводника у меня работает следующий вызов:

https://graph.microsoft.com/v1.0/me/messages?$filter=internetMessageId eq '<1430948481468.34600@THCIE7Dev2.onmicrosoft.com>'

Это работает

https://graph.microsoft.com/v1.0/me/messages?$filter=internetMessageId eq '<1430948481468.34600@THCIE7Dev2.onmicrosoft.com>'

НО

URL-адрес должен кодировать internetMessageId

Таким образом

https://graph.microsoft.com/v1.0/me/messages?$filter=internetMessageId eq '%3C1430948481468.34600%40THCIE7Dev2.onmicrosoft.com%3E'
Другие вопросы по тегам