如何更改电子邮件状态google api c#

Posted

技术标签:

【中文标题】如何更改电子邮件状态google api c#【英文标题】:How to change email status google api c# 【发布时间】:2019-01-27 06:22:08 【问题描述】:

我正在使用 Google API C# 代码在我的 Gmail 中按照代码将未读电子邮件标记为已读。这是代码

但我收到以下错误:

Google.Apis.Requests.RequestError Insufficient Permission [403] 错误 [Message[Insufficient Permission] Location[ - ] Reason[insufficientPermissions] Domain[global]]

如何使用 Google API C# 解决 Gmail 阅读的这个问题

【问题讨论】:

"insufficientPermissions" - 您需要查看文档以了解执行该操作所需的权限, 我已经阅读了一些文档。但是我没有找到解决这个问题的正确方法 你能告诉我们你的代码吗? 【参考方案1】:

Messages.modify 方法允许您对消息进行更改。您需要修改消息并删除 UNREAD 标签。然后该消息将显示为已读

public static Message ModifyMessage(GmailService service, String userId,
      String messageId, List<String> labelsToAdd, List<String> labelsToRemove)
  
      ModifyMessageRequest mods = new ModifyMessageRequest();
      mods.RemoveLabelIds = "UNREAD";

      try
      
          return service.Users.Messages.Modify(mods, userId, messageId).Execute();
      
      catch (Exception e)
      
          Console.WriteLine("An error occurred: " + e.Message);
      

      return null;
  

无法访问

此方法需要以下访问范围之一

https://mail.google.com/ https://www.googleapis.com/auth/gmail.modify

【讨论】:

Google.Apis.Requests.RequestError Insufficient Permission [403] 错误 [Message[Insufficient Permission] Location[ - ] Reason[insufficientPermissions] Domain[global]]

以上是关于如何更改电子邮件状态google api c#的主要内容,如果未能解决你的问题,请参考以下文章

Google 电子邮件 API 引发 400 错误。需要收件人地址 (c#)

使用 Google Data API 使用 C# 访问 Google 电子表格

如何从已发送的电子邮件中检索(google api)

我正在尝试在 asp.net c# 中使用 google API 发送电子邮件并收到错误 400 redirect_uri_mismatch

如何更改 Google 同意屏幕电子邮件?

GMAIL API 在 C# 中发送带附件的电子邮件