有谁知道如何使用Outlook REST API搜索用户标记的电子邮件?
此处的解决方案:Flagged messages via Office 365 REST API?似乎不再起作用。我试过它的各种版本没有运气。该解决方案确实返回没有错误,但我得到的只是用户收件箱中的前10条消息。
答案 0 :(得分:2)
AidaNow对引用的链接是正确的,它不是过滤器。要过滤标记的邮件,建议的方法是使用API的beta版本,该版本添加了Flag
属性。然后你可以像这样过滤:
GET https://outlook.office.com/api/beta/me/mailfolders/inbox/messages?$filter=Flag/FlagStatus eq 'Flagged'
答案 1 :(得分:1)
referenced link中的解决方案是在使用过滤器获取消息时扩展消息的flag属性,而不是使用flag属性过滤消息。例如,在您的情况下,您将在响应中收到10条消息,并且每条消息可能有也可能没有< SingleValueExtendedProperties'财产,这是规则:
if(message.SingleValueExtendedProperties == undefined){
console.log(email has not been flagged/unflagged)
}else if(message.SingleValueExtendedProperties[0].Value == 2){
console.log('email is flagged')
}else if(message.SingleValueExtendedProperties[0].Value == 1){
console.log('email has been unflagged')
}
回到你关于使用flag属性过滤的问题,我没有看到任何api调用,但如果我发现任何api,我会更新。