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

如何配置Msgraph的notificationQueryOptions过滤批量邮件,仅接收非批量邮件通知

正确配置方案

你原配置失效的核心原因是Microsoft Graph无法直接识别原始邮件头作为过滤字段,BCL值存储在指定的单值扩展属性中,需要按以下规则调整配置:


配置逻辑说明

  • 批量投诉级别(BCL)在Graph API中对应单值扩展属性PidTagBulkComplaintLevel,属性ID为Integer 0x4037,无需解析完整X-Microsoft-Antispam邮件头即可直接读取值
  • 需要先在资源路径中声明要加载的扩展属性,再在过滤规则中用集合运算符匹配属性值

可用配置示例

{
    "changeType": "created",
    "resource": "me/mailFolders('Inbox')/messages?$expand=singleValueExtendedProperties($filter=id eq 'Integer 0x4037')",
    "clientState": "secret",
    "notificationUrl": "https://...",
    "notificationQueryOptions": "$filter=singleValueExtendedProperties/any(p: p/id eq 'Integer 0x4037' and p/value eq 0)",
    "expirationDateTime": "2021-09-12T22:42:09Z"
}

过滤规则解释

  • resource字段中的$expand参数用于预加载BCL对应的扩展属性,确保消息触发时Graph可以读取到该属性值用于规则校验
  • notificationQueryOptions中的any运算符用于遍历消息的单值扩展属性集合,匹配属性ID为Integer 0x4037且值为0的消息,仅符合条件的消息才会触发通知

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 05:00:04