获取主要邮件的Google Rest api

时间:2014-08-01 05:54:39

标签: api email

如何使用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>

2 个答案:

答案 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()); } }