You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Microsoft Graph API筛选含PidTagDeferredSendTime的邮件?

解决Microsoft Graph API筛选含PidTagDeferredSendTime属性的邮件问题

正确筛选请求格式

要获取所有包含PidTagDeferredSendTime(属性ID:0x3FEF,类型:SystemTime)的邮件,使用以下请求即可:

GET https://graph.microsoft.com/v1.0/me/messages?$filter=singleValueExtendedProperties/Any(ep: ep/id eq 'SystemTime 0x3FEF')&$expand=singleValueExtendedProperties($filter=id eq 'SystemTime 0x3FEF')

之前请求失败的原因

  1. 时间范围筛选失效:Graph API不支持直接对singleValueExtendedProperties的时间类型value进行ge这类范围比较,扩展属性的value在筛选阶段被当作字符串处理,无法自动转换为时间类型做逻辑判断。
  2. contains函数限制:对扩展属性的value使用contains函数的场景支持有限,部分情况下会触发API筛选规则限制导致失败。
  3. 属性ID格式错误:第三个请求中错误地将属性ID写成String {SystemTime 0x3FEF},正确格式应为SystemTime 0x3FEF,无需额外包裹。

按时间筛选的替代方案

如果需要按PidTagDeferredSendTime的时间值过滤,由于API端不支持直接筛选,可按以下步骤操作:

  1. 先用上述正确请求获取所有包含该属性的邮件。
  2. 在客户端对返回结果中的singleValueExtendedProperties.value字段进行时间解析和过滤(例如转换为DateTime类型后对比时间范围)。

权限注意事项

确保调用API的应用已获得Mail.Read权限(委派权限或应用权限均可)。

内容的提问来源于stack exchange,提问作者John Park

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 03:17:30