如何使用Gmail API(节点)阅读未读电子邮件



我正在创建一个机器人程序,它将接收发送到特定帐户的电子邮件,并将其推送到discord服务器。我找到了Gmail API。我如何才能找到未读的电子邮件,并在操作后将其标记为已读?

Gmail API不会立即检测到是否有新的电子邮件到达。但是,您可以触发一个脚本来检查来自某个发件人的未读电子邮件。

例如:

var newEmails = Gmail.Users.Threads.list("me", {"q":"is:unread from:email"});
//do stuff with them

然后遍历线程并从中删除unread标签,以便在下一次搜索中不重复它们:

for (var i = 0; i < newEmails.threads.length; i++){
var threadId = newEmails.threads[i].id;
Gmail.Users.Threads.modify({"removeLabelIds":["UNREAD"]}, "me", threadId);
}

如果您正在使用应用程序脚本,请在"编辑>当前项目触发器"中创建一个触发器,每隔x分钟或小时运行一次该函数。

参考文献:

  • Gmail API列表
  • Gmail API修改
  • 应用程序脚本触发器

最新更新