【问题标题】:How to fetch Emails from child label in Gmail API?如何从 Gmail API 中的子标签获取电子邮件?
【发布时间】:2021-08-14 08:13:59
【问题描述】:

我想从用户创建的特定标签中获取电子邮件,我可以为自定义标签获取电子邮件,但是当我尝试为子标签获取电子邮件时,它对我不起作用。

这是我的标签层次结构,我可以从“测试 1”和“测试 2”标签中获取邮件,但是当我尝试从“子文件夹 1”标签中获取邮件时,它总是返回一个空白的电子邮件数组.

这是我用来从“测试 1”标签获取电子邮件的 API 查询。

https://www.googleapis.com/gmail/v1/users/me/messages?q=in:Test%201%20&maxResults=20

对于“子文件夹 1”标签,我已经形成了如下所示的 URL。

https://www.googleapis.com/gmail/v1/users/me/messages?q=in:Test%201/Child%20Folder%201%20&maxResults=20

Gmail 文档参考:https://developers.google.com/gmail/api/guides/filtering

任何帮助将不胜感激。

【问题讨论】:

    标签: gmail gmail-api


    【解决方案1】:

    如何使用 GMail API 从嵌套标签中检索电子邮件

    有几种方法可以解决这个问题。

    假设我有这些标签:

    每个都有一些消息。

    方法一

    您可以转到 GET user.labels.list,它将返回所有标签的列表。使用标签id 然后您可以转到user.messages.list 并提出请求

    https://gmail.googleapis.com/gmail/v1/users/me/messages?labelIds=[LABEL_ID]&key=[YOUR_API_KEY]'
    

    方法二

    使用查询参数,就像您所做的那样。查询是:

    in:test/nested label
    

    网址编码为

    q=in%3Atest%2Fnested%20label
    

    所以最终的请求是

    https://gmail.googleapis.com/gmail/v1/users/me/messages?q=in%3Atest%2Fnested%20label&key=[YOUR_API_KEY]'
    

    所以也许您的问题是您没有将查询中的/ URL 编码为%2F

    参考

    【讨论】:

      猜你喜欢
      • 2018-11-03
      • 2018-11-02
      • 2019-07-12
      • 2012-10-09
      • 2014-09-07
      • 2019-08-04
      • 2014-08-19
      • 1970-01-01
      • 2019-02-10
      相关资源
      最近更新 更多