php - 如何使用 Gmail API "Mark as Read"Gmail 中的电子邮件?

标签 php gmail-api

我已经使用 Gmail API 阅读邮件,并且运行良好。我成功地做到了这一点。但是,当我通过 Gmail API 阅读该电子邮件时,我希望将该特定电子邮件标记为“标记为已读”(注意:“标记为已读”不适用于此处的标签),但我无法这样做。实际上,我没有找到任何通过 Gmail API 执行此操作的方法。有什么办法吗?

PS:我在这个过程中使用 PHP。

最佳答案

你必须 modify邮件,并删除 UNREAD 标签。

POST https://www.googleapis.com/gmail/v1/users/me/messages/{MESSAGE_ID}/modify?access_token={ACCESS_TOKEN}

{
 "removeLabelIds": [
  "UNREAD"
 ]
}

使用 Gmail API PHP 客户端,您可以执行如下操作:

$mods = new Google_Service_Gmail_ModifyMessageRequest();
$mods->setRemoveLabelIds(array("UNREAD"));
$message = $service->users_messages->modify($userId, $messageId, $mods);

关于php - 如何使用 Gmail API "Mark as Read"Gmail 中的电子邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36518296/

相关文章:

php - mysql_fetch_array($result_type=MYSQL_BOTH) 如何返回关联索引和数字索引?

php - 这是存储过程吗?

javascript - 尽管出现成功消息,为什么用户输入不会进入数据库?

go - Gmail API在发送电子邮件时忽略 “FROM” header

javascript - 如何使用 javascript 从 gmail api 下载附件?

node.js - meteor 中的 gmail 发送 api 失败,错误代码为 400

php - PHP 和 Oracle 在企业环境中的配合程度如何?

php - 未找到元素 FF - 在 Firebug 中可见错误

c# - 由于授权无效,无法从服务帐户使用 GMail Api

gmail - 如何从 gmail api 获取 "All Mail"标签?