在Gmail API中搜索包含特定threadId的邮件

时间:2014-07-01 17:56:51

标签: search gmail messages gmail-api

使用新的gmail api(https://developers.google.com/gmail/api/)我想搜索带有特定threadId的邮件。

我的用例是,我想在一个没有附件但不是草稿的帖子上找到所有邮件。而不是使用thread.get获取线程中的所有消息,然后检查每条消息以检查其是否为草稿或具有附件(非常重要),而不是仅在&的messages.list上发出查询。 34; -has:attachment -is:draft threadId:FOO"。

虽然我似乎无法在执行搜索时找到如何指定一个threadid。有任何想法吗?

2 个答案:

答案 0 :(得分:3)

Google实际上提供了一个API,用于检索具有任何给定线程ID的邮件列表。因此,如果您已经拥有ThreadID,为什么不直接使用此API?

不确定您使用的是哪种语言,但在.NET中可以这样做:

var threadMessages = gService.Users.Threads.Get("me", "*YourThreadID*").Execute();

其中gService是您之前创建的GmailService。那么为什么不直接通过线程中的消息来调用那些带附件等的那些消息?

可以找到一些快速入门文档来设置here

答案 1 :(得分:1)

“支持与Gmail搜索框相同的查询格式。” (来自:https://developers.google.com/gmail/api/v1/reference/users/messages/list

此处记录了Gmail搜索框支持的搜索查询格式: https://support.google.com/mail/answer/7190?hl=en

(简短的回答是不支持。)