remitente rango por nombre mover mail frases filtrar fechas fecha exactas correos busqueda buscar año avanzada adjunto outlook office365 office365api office365-restapi

rango - outlook buscar por remitente



Captar mensajes filtrados por conversationId a través de la API de Office365 (1)

Tengo problemas para encontrar la forma de usar la api de office365 para buscar mensajes con una ID de conversationId .

Digamos que mi conversationId es AAQkADlkOGJmMTFmLTc2NjMtMKL3My04ZDhkLTVmZWNjMzA1ODY0NAAQAB11Xh2opSpBiXifMEJjhow=

Haré una solicitud como

https://outlook.office.com/api/v1.0/me/Messages?$filter=ConversationId%20eq%20AAQkADlkOGJmMTFmLTc2NjMtMKL3My04ZDhkLTVmZWNjMzA1ODY0NAAQAB11Xh2opSpBiXifMEJjhow=

Esto da como resultado una respuesta de 400 como esta:

{ "error": { "code": "RequestBroker-ParseUri", "message": "Syntax error at position 98 in ''ConversationId eq AAQkADlkOGJmMTFmLTc2NjMtMKL3My04ZDhkLTVmZWNjMzA1ODY0NAAQAB11Xh2opSpBiXifMEJjhow=''." } }

AAQkADlkOGJmMTFmLTc2NjMtMKL3My04ZDhkLTVmZWNjMzA1ODY0NAAQAB11Xh2opSpBiXifMEJjhow%3D otras cosas, como la URL que codifica la conversación AAQkADlkOGJmMTFmLTc2NjMtMKL3My04ZDhkLTVmZWNjMzA1ODY0NAAQAB11Xh2opSpBiXifMEJjhow%3D para AAQkADlkOGJmMTFmLTc2NjMtMKL3My04ZDhkLTVmZWNjMzA1ODY0NAAQAB11Xh2opSpBiXifMEJjhow%3D que da como resultado el mismo error.

También probé simplemente eliminando el = que parece ser el personaje que está volviendo loco

https://outlook.office.com/api/v1.0/me/Messages?$filter=ConversationId%20eq%20AAQkADlkOGJmMTFmLTc2NjMtMKL3My04ZDhkLTVmZWNjMzA1ODY0NAAQAB11Xh2opSpBiXifMEJjhow

pero eso da como resultado el siguiente error

{ "error": { "code": "RequestBroker-ParseUri", "message": "Could not find a property named ''AAQkADlkOGJmMTFmLTc2NjMtMKL3My04ZDhkLTVmZWNjMzA1ODY0NAAQAB11Xh2opSpBiXifMEJjhow'' on type ''Microsoft.OutlookServices.Message''." } }

También he intentado jugar con el uso de mayúsculas de la URL y el uso de signos + lugar de %20 para la cadena de filtro, pero siempre recibo 400 errores.

Sin embargo, puedo filtrar por otros campos. Por ejemplo

https://outlook.office.com/api/v1.0/me/Messages?$filter=IsRead%20eq%20true

devuelve los mensajes filtrados como era de esperar.

¿Alguna idea de lo que podría estar pasando con el filtro ConversationId ?


Debe ajustar el ConversationId con comillas simples. Así es como formo mi pedido en C #

string finalUrl = "https://outlook.office.com/api/beta/me/Messages?$filter=" + HttpUtility.UrlEncode(string.Format("ConversationId eq ''{0}''", conversationId));