【问题标题】:Gmail API how to get labels ThreadsUnreadGmail API 如何获取标签 ThreadsUnread
【发布时间】:2019-03-28 00:53:03
【问题描述】:

执行 LabelsResource.ListRequest 时如何获取标签 ThreadsUnread?

在执行 Google.Apis.Gmail.v1.UsersResource.LabelsResource.ListRequest 时尝试获取 ThreadsUnread 属性 但它带有空值。

这是我的代码:

     Google.Apis.Gmail.v1.UsersResource.LabelsResource.ListRequest labelReq = service.Users.Labels.List("me");

    IList<Google.Apis.Gmail.v1.Data.Label> labels = labelReq.Execute().Labels;

我需要在请求中询问ThreadsUnreadMessagesUnread 值吗?

请求中有一个名为“字段”的属性。 可以用字符串设置。但是我在哪里可以找到该字符串的选项?

【问题讨论】:

  • 我找到了“字段”属性的语法。 “标签(名称,id,messagesTotal)”。我没有收到错误,说明语法很好。但我没有得到消息总数的结果

标签: gmail-api google-apis-explorer


【解决方案1】:

在撰写本文时(2019 年 3 月),您在制作列表时无法获得计数。您必须随后请求每个标签的详细信息以获取详细信息。非常缓慢、昂贵且坦率地说是不必要的。等效的 Microsoft Graph API 没有此限制。

【讨论】:

    【解决方案2】:

    使用Users.labels.get。在 try-it 部分执行以下操作:

    GET https://www.googleapis.com/gmail/v1/users/userId/labels/id
    

    用户ID: 我

    标识: 收件箱

    并执行,响应将类似于:

    {
     "id": "INBOX",
     "name": "INBOX",
     "messageListVisibility": "hide",
     "labelListVisibility": "labelShow",
     "type": "system",
     "messagesTotal": 1808,
     "messagesUnread": 1610,
     "threadsTotal": 454,
     "threadsUnread": 323
    }
    

    这就是您正在寻找的"threadsUnread": 323

    【讨论】:

    • 在询问之前,请尝试。
    • 它有效!谢谢。但我还是更喜欢在查询标签列表时得到它。
    猜你喜欢
    • 2015-11-02
    • 1970-01-01
    • 2018-07-22
    • 2021-08-14
    • 1970-01-01
    • 2013-02-06
    • 2015-02-26
    • 2018-09-29
    • 1970-01-01
    相关资源
    最近更新 更多