我们想知道是否有人找到一种解决方法,使用纯元数据范围时除了过滤项目符号并向用户的Gmail帐户请求完全读取范围外,还可以过滤电子邮件。
使用仅元数据范围,这使我们无法在列出电子邮件(Users.messages.list
端点)时应用过滤器,从而使我们对Gmail API的调用次数增加了10到100倍。
出于设计隐私的考虑,我们将对应用程序所需的访问权限限制为所需的最低限度。我们遇到了一个问题,我们的一位客户收到大量自动内部电子邮件,每天每用户超过5k。通常,我们只需要在调用q=
时使用Users.messages.list
参数来过滤掉该自动发件人,然后只获取剩余的电子邮件,但是元数据范围不支持q=
,即使是部分邮件也是如此元数据中可用电子邮件的数量,例如发件人。
现在我们的方法是:
列出每天为该用户发送的所有5-7k电子邮件(Users.messages.list
)
对Users.messages.get
端点进行5-7k个查询(每封电子邮件一次)(我们使用批处理,但同样的精神)
丢弃那些包含我们不想要的发件人的电子邮件
重复(超过100个)
这自然感觉效率很低。