我想知道是否可以使用 Google Apps 脚本创建草稿邮件。如果是的话,怎么可能?
问候,塞巴斯蒂安
此时,无法创建出现在您的Drafts
文件夹中的新消息。此功能之前已请求过 - 请参阅问题 985。如果您有兴趣接收任何更新,请访问并为该问题加注星标。
编辑:虽然 Google Apps 脚本本身仍不支持,但您可以使用 GMail API 创建草稿,getOAuthToken()
用于身份验证(2014 年 2 月推出)。草案支持于 2014 年 6 月添加到 API,在 GAS 中使用它的示例显示在上述问题的评论 29中。为方便起见,此处复制的代码:
function createDraft() {
var forScope = GmailApp.getInboxUnreadCount(); // needed for auth scope
var raw =
'Subject: testing Draft\n' +
//'To: test@test.com\n' +
'Content-Type: multipart/alternative; boundary=1234567890123456789012345678\n' +
'testing Draft msg\n' +
'--1234567890123456789012345678--\n';
var draftBody = Utilities.base64Encode(raw);
var params = {method:"post",
contentType: "application/json",
headers: {"Authorization": "Bearer " + ScriptApp.getOAuthToken()},
muteHttpExceptions:true,
payload:JSON.stringify({
"message": {
"raw": draftBody
}
})
};
var resp = UrlFetchApp.fetch("https://www.googleapis.com/gmail/v1/users/me/drafts", params);
Logger.log(resp.getContentText());
/*
* sample resp: {
* "id": "r3322255254535847929",
* "message": {
* "id": "146d6ec68eb36de8",
* "threadId": "146d6ec68eb36de8",
* "labelIds": [ "DRAFT" ]
* }
* }
*/
}
Google 在 2017 年 9 月增加了对生成草稿的支持。来自文档:
// The code below creates a draft email with the current date and time.
var now = new Date();
GmailApp.createDraft("mike@example.com", "current time", "The time is: " + now.toString());
不,这是不可能的。请参阅文档。