如何使用Google rest API获取gmail主邮件。目前我正在使用GET https://www.googleapis.com/gmail/v1/users/userId/messages Rest API,但会提供社交和促销邮件。我在引用此网站:https://developers.google.com/gmail/api/v1/reference/users/messages/list < / p>
答案 0 :(得分:2)
在调用messages.list
时,请尝试在查询中将其添加为过滤器[in:inbox -category:{social promotions updates forums}]
只会给你带来好东西。它基本上是说除了社交,促销,更新和论坛之外,还要在收件箱中提供所有内容。
或者在我的收件箱中,我似乎也有更新,因此您需要更改为
[in:inbox -category:{social promotions forums}]
干杯
约翰
答案 1 :(得分:2)
实际上非常直接
我们可以使用标签查询邮件。标签有两种类型系统标签和用户标签。
对于主要内容,我们可以使用名为“INBOX”的系统标签,并获取属于该类别的电子邮件。还有其他系统标签,如CATEGORY_PROMOTIONS,CATEGORY_SOCIAL等。
您可以使用Try It!与Google合作测试它。
获取标签: https://developers.google.com/gmail/api/v1/reference/users/labels/list
对于给定的标签,在您的案例中说INBOX查询消息 https://developers.google.com/gmail/api/v1/reference/users/messages/list
您还可以从收件箱中获取已加星标和重要电子邮件的STARRED,CATEGORY_PERSONAL。
编辑示例代码。
链接中提供了Java代码示例,但这里有一个代码段:
public static void listLabels(Gmail service, String userId) throws IOException {
ListLabelsResponse response = service.users().labels().list(userId).execute();
List<Label> labels = response.getLabels();
for (Label label : labels) {
System.out.println(label.toPrettyString());
}
}