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

如何通过API统计G Suite SMTP中继方式发送的邮件数量?

统计G Suite SMTP中继发送的邮件数量

嘿,我来帮你理清这个问题的解决方案:

首先,你提到的Gmail Report API确实存在延迟(通常24-48小时),而且没法精准过滤SMTP中继的邮件——这是因为它的统计维度偏向用户邮箱的整体收发行为,而非针对中继通道的细分统计。

另外,你在管理控制台里用到的「邮件日志搜索」,对应的其实是Admin SDK的Reports API中的邮件日志模块,而非Email Audit API。Email Audit API的核心功能是创建邮件监控器,用来追踪特定用户的邮件内容,并不适合做批量的发送量统计,所以这不是你需要的工具。

正确的解决方式:用Admin SDK Reports API过滤SMTP中继邮件

你可以通过Admin SDK的reports.users.messages.list接口,配合精准的筛选条件来统计SMTP中继发送的邮件数量,而且数据延迟很低(通常几分钟内),完全能满足你当日统计的需求。

具体操作步骤:

  1. 权限准备

    • 先在G Suite管理控制台启用Admin SDK
    • 给你的服务账号授权「查看审核日志」和「查看报表」权限,确保它能访问邮件日志数据
  2. 构造API请求
    调用接口时,需要指定以下关键参数来筛选SMTP中继的发送邮件:

    • eventName=sending:只统计发送出去的邮件
    • filters=delivery_method:smtp_relay:精准定位通过SMTP中继发送的邮件
    • startTime和endTime:设置当日的时间范围(格式示例:2024-05-20T00:00:00Z到2024-05-20T23:59:59Z)

    示例GET请求:

    GET https://admin.googleapis.com/admin/reports/v1/activity/users/all/applications/gmail?eventName=sending&filters=delivery_method:smtp_relay&startTime=2024-05-20T00:00:00Z&endTime=2024-05-20T23:59:59Z
    
  3. 统计邮件数量

    • API返回的响应中,items数组就是符合条件的邮件列表,直接统计数组长度即可得到数量
    • 如果结果超过100条,响应会包含nextPageToken,你需要循环请求直到没有下一页,累加所有页面的邮件数量

额外说明

这个方式和你在管理控制台里的邮件日志搜索逻辑完全一致,只是通过API实现了自动化统计,数据时效性和控制台同步,能完美满足你实时统计当日SMTP中继邮件量的需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 04:51:34