如何使用 Gmail "Mark as Read" 在 Gmail 中发送电子邮件 API?

How to "Mark as Read" an Email in Gmail using Gmail API?

我已经使用 Gmail API 阅读邮件,而且运行良好。我成功地做到了这一点。但是当我通过 Gmail API 阅读该电子邮件时,我希望该特定电子邮件为 "Mark as Read"(注意:"Mark as Read" 未在此处应用标签),我无法这样做。实际上,我没有找到任何通过 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);