Class GmailDraft

Gmail 草稿

用户 Gmail 帐号中用户创建的邮件草稿。

方法

方法返回类型简介
deleteDraft()void删除此草稿消息。
getId()String获取此草稿消息的 ID。
getMessage()GmailMessage返回表示此草稿的 GmailMessage。
getMessageId()String返回代表此草稿的 GmailMessage 的 ID。
send()GmailMessage发送此草稿电子邮件。
update(recipient, subject, body)GmailDraft替换此草稿消息的内容。
update(recipient, subject, body, options)GmailDraft使用可选参数替换此草稿消息的内容。

详细文档

deleteDraft()

删除此草稿消息。

var draft = GmailApp.getDrafts()[0]; // The first draft message in the drafts folder
draft.deleteDraft();
draft.getMessage(); // Throws exception.

授权

使用此方法的脚本需要通过以下范围相关 REST API 的适当范围进行授权:

  • https://mail.google.com/

getId()

获取此草稿消息的 ID。

var draft = GmailApp.getDrafts()[0]; // The first draft message in the drafts folder
var draftId = draft.getId();
var draftById = GmailApp.getDraft(draftId);
Logger.log(draft.getMessage().getSubject() == draftById.getMessage().getSubject());

返回

String - 草稿 ID

授权

使用此方法的脚本需要通过以下范围相关 REST API 的适当范围进行授权:

  • https://mail.google.com/

getMessage()

返回表示此草稿的 GmailMessage。

var draft = GmailApp.getDrafts()[0]; // The first draft message in the drafts folder
var message = draft.getMessage();
Logger.log(message.getSubject());

返回

GmailMessage - 表示此草稿内容的消息

授权

使用此方法的脚本需要通过以下范围相关 REST API 的适当范围进行授权:

  • https://mail.google.com/

getMessageId()

返回表示此草稿的 GmailMessage 的 ID。

var draft = GmailApp.getDrafts()[0]; // The first draft message in the drafts folder
var messageId = draft.getMessageId();
Logger.log(messageId == draft.getMessage().getId());

返回

String - 消息 ID

授权

使用此方法的脚本需要通过以下范围相关 REST API 的适当范围进行授权:

  • https://mail.google.com/

send()

发送此草稿电子邮件。电子邮件(包括标头)的大小有配额限制

var draft = GmailApp.getDrafts()[0]; // The first draft message in the drafts folder
var msg = draft.send(); // Send it
Logger.log(msg.getDate()); // Should be approximately the current timestamp

返回

GmailMessage - 新发送的消息

授权

使用此方法的脚本需要通过以下范围相关 REST API 的适当范围进行授权:

  • https://mail.google.com/

update(recipient, subject, body)

替换此草稿消息的内容。电子邮件(包括标头)的大小有配额限制

// The code below will update a draft email with the current date and time.
var draft = GmailApp.getDrafts()[0]; // The first draft message in the drafts folder
var now = new Date();
draft.update("mike@example.com", "current time", "The time is: " + now.toString());

参数

名称类型说明
recipientString使用英文逗号分隔的电子邮件地址列表
subjectString电子邮件的主题(最多 250 个字符)
bodyString电子邮件的正文

返回

GmailDraft - 新更新的草稿

授权

使用此方法的脚本需要通过以下范围相关 REST API 的适当范围进行授权:

  • https://mail.google.com/

另请参阅


update(recipient, subject, body, options)

使用可选参数替换此草稿消息的内容。该电子邮件可以包含纯文本或 HTML 正文。电子邮件(包括标头)的大小有配额限制

// Update a draft email with a file from Google Drive attached as a PDF.
var draft = GmailApp.getDrafts()[0]; // The first draft message in the drafts folder
var file = DriveApp.getFileById('1234567890abcdefghijklmnopqrstuvwxyz');
draft.update('mike@example.com', 'Attachment example', 'Please see attached file.', {
    attachments: [file.getAs(MimeType.PDF)],
    name: 'Automatic Emailer Script'
});

参数

名称类型说明
recipientString使用英文逗号分隔的电子邮件地址列表
subjectString电子邮件的主题(最多 250 个字符)
bodyString电子邮件的正文
optionsObject一个 JavaScript 对象,用于指定高级参数,如下所示

高级参数

名称类型说明
attachmentsBlobSource[]使用电子邮件发送的一组文件
bccString密送至电子邮件地址的逗号分隔列表
ccString抄送抄送地址的逗号分隔列表
fromString发送电子邮件的地址,必须是 GmailApp.getAliases() 返回的值之一
htmlBodyString设置后,能够呈现 HTML 的设备将使用它(而非必需的正文参数);如果您有内嵌的电子邮件图片,则可以在 HTML 正文中添加可选的 inlineImages 字段
inlineImagesObject一个 JavaScript 对象,包含从图片键 (String) 到图片数据 (BlobSource) 的映射;此示例假设使用 htmlBody 参数并包含对图片的引用(格式为 <img src="cid:imageKey" />
nameString电子邮件发件人的姓名(默认:用户姓名)
replyToString用作默认回复地址的电子邮件地址(默认:用户的电子邮件地址)

返回

GmailDraft - 新更新的草稿

授权

使用此方法的脚本需要通过以下范围相关 REST API 的适当范围进行授权:

  • https://mail.google.com/

另请参阅