通过O365 Rest API检索标记的电子邮件/消息

通过O365 Rest API检索标记的电子邮件/消息,rest,outlook,office365,outlook-restapi,Rest,Outlook,Office365,Outlook Restapi,有人知道如何使用Outlook REST API搜索用户标记的电子邮件吗 这里的解决方案是:似乎不再有效。我尝试过各种版本,但都不走运。该解决方案返回时不会出错,但我只收到用户收件箱中的前10封邮件。中的解决方案是在使用筛选器获取邮件时扩展邮件的flag属性,而不是使用flag属性过滤邮件。例如,在您的情况下,您将在响应中收到10条消息,每条消息可能有也可能没有“SingleValueExtendedProperties”属性,以下是规则: if(message.SingleValueExten

有人知道如何使用Outlook REST API搜索用户标记的电子邮件吗

这里的解决方案是:似乎不再有效。我尝试过各种版本,但都不走运。该解决方案返回时不会出错,但我只收到用户收件箱中的前10封邮件。

中的解决方案是在使用筛选器获取邮件时扩展邮件的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调用,我将更新我的答案。

中的解决方案是在使用筛选器获取消息时扩展消息的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调用,我将更新我的答案。

AidaNow关于引用的链接是正确的,它不是筛选器。要过滤标记的消息,建议使用API的beta版本,该版本添加了
Flag
属性。然后您可以像这样进行过滤:

GET https://outlook.office.com/api/beta/me/mailfolders/inbox/messages?$filter=Flag/FlagStatus eq 'Flagged'

AidaNow对于引用的链接是正确的,它不是筛选器。要过滤标记的消息,建议使用API的beta版本,该版本添加了
Flag
属性。然后您可以像这样进行过滤:

GET https://outlook.office.com/api/beta/me/mailfolders/inbox/messages?$filter=Flag/FlagStatus eq 'Flagged'