2

尝试仅检索发送给我的消息(而不是我的外发消息),在这种情况下,我已经发送了一封电子邮件并且它已被回复。当我使用以下请求时,我会根据需要获得仅包含传入消息的线程:

"https://www.googleapis.com/gmail/v1/users/me/threads?q=-from%3Ame+in%3Ainbox&access_token=" + thisToken

但是,当我从返回中获取消息 ID 并将其插入到单个消息请求中时:

"https://www.googleapis.com/gmail/v1/users/me/messages/" + messageId + "?access_token=" + thisToken

返回的消息是线程中的第一条消息,在这种情况下是我的传出消息。我在下面的API Explorer中演示了这一点。是否可以仅获取传入消息的消息 ID?Thread API Explorer 能够解决它的事实让我相信这是可能的......

(我是新手。衷心感谢任何帮助,感谢您的宝贵时间。)


具有所需返回的线程 API Explorer 示例

线

使用相同 ID 出现意外返回的消息 API Explorer 示例

线

4

1 回答 1

7

您传递给 message.get() 调用的 id 是线程 ID。这是因为对于线程中的第一条消息,线程 ID 和消息 ID 相同。对于线程中的后续消息,它们是不同的。

您可以使用查询调用 thread.list() 以检索感兴趣的线程 ID,然后调用 thread.get() 以检索给定线程中的所有消息 ID。然后为每个检索到的消息 ID 调用 message.get() 并检查每个消息的 labelIds。排除具有 labelId“SENT”的那些。

于 2015-07-09T22:56:37.487 回答