提供对 Gmail 会话、邮件和标签的访问权限。
方法
详细文档
createDraft(recipient, subject, body)
创建电子邮件草稿。电子邮件(包括标头)的大小有配额限制。
// 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());
参数
名称 | 类型 | 说明 |
---|---|---|
recipient | String | 使用英文逗号分隔的电子邮件地址列表 |
subject | String | 电子邮件的主题 |
body | String | 电子邮件的正文 |
返回
GmailDraft
- 新创建的 Gmail 草稿
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
createDraft(recipient, subject, body, options)
创建电子邮件电子邮件(可选参数)。该电子邮件可以包含纯文本或 HTML 正文。电子邮件的大小(包括标头,但不包括附件)受到配额限制。
// Create a draft email with a file from Google Drive attached as a PDF. var file = DriveApp.getFileById('1234567890abcdefghijklmnopqrstuvwxyz'); GmailApp.createDraft('mike@example.com', 'Attachment example', 'Please see attached file.', { attachments: [file.getAs(MimeType.PDF)], name: 'Automatic Emailer Script' });
参数
名称 | 类型 | 说明 |
---|---|---|
recipient | String | 收件人的地址 |
subject | String | 主题行 |
body | String | 电子邮件的正文 |
options | Object | 一个 JavaScript 对象,用于指定高级参数,如下所示 |
高级参数
名称 | 类型 | 说明 |
---|---|---|
attachments | BlobSource[] | 使用电子邮件发送的一组文件 |
bcc | String | 密送至电子邮件地址的逗号分隔列表 |
cc | String | 抄送抄送地址的逗号分隔列表 |
from | String | 发送电子邮件的地址,必须是 getAliases() 返回的值之一 |
htmlBody | String | 设置后,能够呈现 HTML 的设备将使用它(而非必需的正文参数);如果您有内嵌的电子邮件图片,则可以在 HTML 正文中添加可选的 inlineImages 字段 |
inlineImages | Object | 一个 JavaScript 对象,包含从图片键 (String ) 到图片数据 (BlobSource ) 的映射;此示例假设使用 htmlBody 参数并包含对图片的引用(格式为 <img src="cid:imageKey" /> ) |
name | String | 电子邮件发件人的姓名(默认:用户姓名) |
replyTo | String | 用作默认回复地址的电子邮件地址(默认:用户的电子邮件地址) |
返回
GmailDraft
- 新创建的 Gmail 草稿
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
createLabel(name)
创建具有指定名称的新用户标签。
// Creates the label @FOO and logs label: FOO Logger.log("label: " + GmailApp.createLabel("FOO"));
参数
名称 | 类型 | 说明 |
---|---|---|
name | String | 新标签的名称 |
返回
GmailLabel
- 新创建的标签
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
deleteLabel(label)
删除指定的标签。
// Have to get the label by name first var label = GmailApp.getUserLabelByName("FOO"); GmailApp.deleteLabel(label);
参数
名称 | 类型 | 说明 |
---|---|---|
label | GmailLabel | 要删除的标签 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
getAliases()
获取在 Gmail 中被设置为此帐号别名的电子邮件列表。
您可以使用可选参数“from”从任何别名发送邮件。
// Log the aliases for this Gmail account and send an email as the first one. var me = Session.getActiveUser().getEmail(); var aliases = GmailApp.getAliases(); Logger.log(aliases); if (aliases.length > 0) { GmailApp.sendEmail(me, 'From an alias', 'A message from an alias!', {'from': aliases[0]}); } else { GmailApp.sendEmail(me, 'No aliases found', 'You have no aliases.'); }
返回
String[]
- 此帐号的别名数组
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
getDraft(draftId)
按 ID 检索电子邮件草稿。
将此功能与 Gmail 草稿中的 getId() 结合使用。
// Get the first draft message in your drafts folder var draft = GmailApp.getDrafts()[0]; // Get its ID var draftId = draft.getId(); // Now fetch the same draft using that ID. var draftById = GmailApp.getDraft(draftId); // Should always log true as they should be the same message Logger.log(draft.getMessage().getSubject() == draftById.getMessage().getSubject());
参数
名称 | 类型 | 说明 |
---|---|---|
draftId | String | 要检索的草稿的 ID |
返回
GmailDraft
- 具有指定 ID 的草稿
抛出
Error
- 如果找不到具有指定 ID 的草稿
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getDraftMessages()
检索所有草稿邮件。
// Logs the number of draft messages var drafts = GmailApp.getDraftMessages(); Logger.log(drafts.length);
返回
GmailMessage[]
- 一组草稿的 Gmail 邮件
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getDrafts()
获取所有 Gmail 草稿邮件。
var drafts = GmailApp.getDrafts(); for (var i = 0; i < drafts.length; i++) { Logger.log(drafts[i].getId()); }
返回
GmailDraft[]
- 一组 Gmail 草稿邮件
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getInboxThreads()
检索所有收件箱,而不考虑标签。
当所有线程都太大而无法由系统处理时,此调用将失败。如果线程大小未知且可能非常大,请使用 'paged' 调用,并在每次调用中指定要检索的线程范围。
// Log the subject lines of your Inbox var threads = GmailApp.getInboxThreads(); for (var i = 0; i < threads.length; i++) { Logger.log(threads[i].getFirstMessageSubject()); }
返回
GmailThread[]
- 收件箱中的一系列 Gmail 会话
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getInboxThreads(start, max)
检索一系列收件箱会话,而不考虑标签。
// Log the subject lines of up to the first 50 emails in your Inbox var threads = GmailApp.getInboxThreads(0, 50); for (var i = 0; i < threads.length; i++) { Logger.log(threads[i].getFirstMessageSubject()); }
参数
名称 | 类型 | 说明 |
---|---|---|
start | Integer | 要检索的第一个线程的索引 |
max | Integer | 要检索的线程数上限 |
返回
GmailThread[]
- 收件箱中的一系列 Gmail 会话
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getInboxUnreadCount()
获取收件箱中的未读会话数量。
Logger.log("Messages unread in inbox: " + GmailApp.getInboxUnreadCount());
返回
Integer
- 收件箱中有未读邮件的会话数量
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getMessageById(id)
用于根据 ID 获取消息。
将此方法与 Gmail 邮件中的 getId() 结合使用。
// Get the first message in the first thread of your inbox var message = GmailApp.getInboxThreads(0, 1)[0].getMessages()[0]; // Get its ID var messageId = message.getId(); // Now fetch the same message using that ID. var messageById = GmailApp.getMessageById(messageId); // Should always log true as they should be the same message Logger.log(message.getSubject() == messageById.getSubject());
参数
名称 | 类型 | 说明 |
---|---|---|
id | String | 要检索的消息的 ID |
返回
GmailMessage
- 具有指定 ID 的消息
抛出
Error
- 如果找不到具有指定 ID 的邮件
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
getMessagesForThread(thread)
检索指定会话中的所有邮件。
// Log all the subject lines in the first thread of your inbox var thread = GmailApp.getInboxThreads(0, 1)[0]; var messages = GmailApp.getMessagesForThread(thread); for (var i = 0 ; i < messages.length; i++) { Logger.log("subject: " + messages[i].getSubject()); }
参数
名称 | 类型 | 说明 |
---|---|---|
thread | GmailThread | 要检索的消息会话 |
返回
GmailMessage[]
- 与此线程对应的消息数组
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
getMessagesForThreads(threads)
检索指定会话中的所有邮件。
// Log the subject lines of all messages in the first two threads of your inbox var thread = GmailApp.getInboxThreads(0, 2); var messages = GmailApp.getMessagesForThreads(thread); for (var i = 0 ; i < messages.length; i++) { for (var j = 0; j < messages[i].length; j++) { Logger.log("subject: " + messages[i][j].getSubject()); } }
参数
名称 | 类型 | 说明 |
---|---|---|
threads | GmailThread[] | 要检索的消息会话 |
返回
GmailMessage[][]
- 一组消息数组,其中外部数组中的每一项都对应一个线程,而内部数组包含相应线程中的消息
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
getPriorityInboxThreads()
检索所有收件箱(无论标签为何)。
当所有线程都太大而无法由系统处理时,此调用将失败。如果线程大小未知且可能非常大,请使用 'paged' 调用,并在每次调用中指定要检索的线程范围。
Logger.log("# of messages in your Priority Inbox: " + GmailApp.getPriorityInboxThreads().length);
返回
GmailThread[]
- 优先收件箱中的一组 Gmail 会话
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getPriorityInboxThreads(start, max)
检索一系列收件箱,而不考虑标签。
// Will log some number 2 or less Logger.log("# of messages in your Priority Inbox: " + GmailApp.getPriorityInboxThreads(0, 2).length);
参数
名称 | 类型 | 说明 |
---|---|---|
start | Integer | 要检索的第一个线程的索引 |
max | Integer | 要检索的线程数上限 |
返回
GmailThread[]
- 优先收件箱中的一组 Gmail 会话
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getPriorityInboxUnreadCount()
获取优先收件箱中未读会话的数量。
Logger.log("Number of unread emails in your Priority Inbox : " + GmailApp.getPriorityInboxUnreadCount());
返回
Integer
- 优先收件箱中包含未读邮件的会话数量
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getSpamThreads()
检索所有标签,而不考虑标签。
当所有线程都太大而无法由系统处理时,此调用将失败。如果线程大小未知且可能非常大,请使用 'paged' 调用,并在每次调用中指定要检索的线程范围。
Logger.log("# of total spam threads: " + GmailApp.getSpamThreads().length);
返回
GmailThread[]
- 垃圾邮件文件夹中的一系列 Gmail 会话
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getSpamThreads(start, max)
检索一系列垃圾邮件会话,而不考虑标签。
// Will log a number at most 5 Logger.log("# of total spam threads: " + GmailApp.getSpamThreads(0, 5).length);
参数
名称 | 类型 | 说明 |
---|---|---|
start | Integer | 要检索的第一个线程的索引 |
max | Integer | 要检索的线程数上限 |
返回
GmailThread[]
- 垃圾邮件文件夹中的一系列 Gmail 会话
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getSpamUnreadCount()
获取未读的垃圾帖子数量。
// Unless you actually read stuff in your spam folder, this should be the same as // the number of messages in your spam folder. Logger.log("# unread threads that are spam: " + GmailApp.getSpamUnreadCount());
返回
Integer
- 包含未读邮件的垃圾帖子数量
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getStarredThreads()
检索所有已加星标的会话,无论标签如何。
当所有线程都太大而无法由系统处理时,此调用将失败。如果线程大小未知且可能非常大,请使用 'paged' 调用,并在每次调用中指定要检索的线程范围。
// Logs the number of starred threads Logger.log("# Starred threads: " + GmailApp.getStarredThreads().length);
返回
GmailThread[]
- 一组已加星标的 Gmail 会话
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getStarredThreads(start, max)
检索一系列已加星标的会话,而不考虑标签。
// Logs the number of starred threads to a maximum of 5 Logger.log("# Starred threads: " + GmailApp.getStarredThreads(0, 5).length);
参数
名称 | 类型 | 说明 |
---|---|---|
start | Integer | 要检索的第一个线程的索引 |
max | Integer | 要检索的线程数上限 |
返回
GmailThread[]
- 一组已加星标的 Gmail 会话
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getStarredUnreadCount()
获取已加星标的未读会话数量。
Logger.log("# unread and starred: " + GmailApp.getStarredUnreadCount());
返回
Integer
- 包含未读消息的已加星标会话的数量
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getThreadById(id)
按 ID 获取线程。
在 Gmail 线程中与 getId() 结合使用。
// Thread IDs can also be found in the location bar when you have a thread open in Gmail // get first inbox thread var firstThread = GmailApp.getInboxThreads(0,1)[0]; // Get the same thread by ID var threadById = GmailApp.getThreadById(firstThread.getId()); // Verify they are the same Logger.log(firstThread.getFirstMessageSubject() == threadById.getFirstMessageSubject());
参数
名称 | 类型 | 说明 |
---|---|---|
id | String | 要检索的线程的 ID |
返回
GmailThread
- 具有指定 ID 的线程;如果未找到,则为 null
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
getTrashThreads()
检索所有标签的会话,无论标签如何。
当所有线程都太大而无法由系统处理时,此调用将失败。如果线程大小未知且可能非常大,请使用 'paged' 调用,并在每次调用中指定要检索的线程范围。
Logger.log("# of total trash threads: " + GmailApp.getTrashThreads().length);
返回
GmailThread[]
- 已删除邮件中的 Gmail 会话数组
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getTrashThreads(start, max)
检索一系列已删除邮件,而不考虑标签。
// Will log a number at most 5 Logger.log("# of total trash threads: " + GmailApp.getTrashThreads(0, 5).length);
参数
名称 | 类型 | 说明 |
---|---|---|
start | Integer | 要检索的第一个线程的索引 |
max | Integer | 要检索的线程数上限 |
返回
GmailThread[]
- 已删除邮件中的 Gmail 会话数组
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getUserLabelByName(name)
根据标签名称检索标签。
var labelObject = GmailApp.getUserLabelByName("myLabel");
参数
名称 | 类型 | 说明 |
---|---|---|
name | String | 要检索的标签的名称 |
返回
GmailLabel
- 具有指定名称的 Gmail 标签
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
getUserLabels()
检索用户创建的标签的列表。
// Logs all of the names of your labels var labels = GmailApp.getUserLabels(); for (var i = 0; i < labels.length; i++) { Logger.log("label: " + labels[i].getName()); }
返回
GmailLabel[]
- 用户创建的标签数组
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
markMessageRead(message)
将此消息标记为已读,并强制刷新。
// Mark the first message in the first thread of your inbox as read var message = GmailApp.getInboxThreads(0, 1)[0].getMessages()[0]; GmailApp.markMessageRead(message);
参数
名称 | 类型 | 说明 |
---|---|---|
message | GmailMessage | 要标记为已读的消息 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
markMessageUnread(message)
将此消息标记为未读,并强制刷新。
// Mark the first message in the first thread of your inbox as unread var message = GmailApp.getInboxThreads(0, 1)[0].getMessages()[0]; GmailApp.markMessageUnread(message);
参数
名称 | 类型 | 说明 |
---|---|---|
message | GmailMessage | 要标记为未读的消息 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
markMessagesRead(messages)
将这些消息标记为已读,并强制刷新这些消息。
// Mark first three messages in the first inbox thread as read. // Assumes that the first inbox thread has 3 messages in it. var threadMessages = GmailApp.getInboxThreads(0, 1)[0].getMessages(); var messages = [threadMessages[0], threadMessages[1], threadMessages[2]]; GmailApp.markMessagesRead(thread.getMessages());
参数
名称 | 类型 | 说明 |
---|---|---|
messages | GmailMessage[] | 要标记为已读的消息数组 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
markMessagesUnread(messages)
将这些消息标记为未读,并强制刷新这些消息。
// Mark first three messages in the first inbox thread as unread. // Assumes that the first inbox thread has 3 messages in it var threadMessages = GmailApp.getInboxThreads(0, 1)[0].getMessages(); var messages = [threadMessages[0], threadMessages[1], threadMessages[2]]; GmailApp.markMessagesUnread(thread.getMessages());
参数
名称 | 类型 | 说明 |
---|---|---|
messages | GmailMessage[] | 一组标记为未读的消息 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
markThreadImportant(thread)
将此线程标记为重要并强制此线程进行刷新。
// Marks first inbox thread as important var thread = GmailApp.getInboxThreads(0, 1)[0]; GmailApp.markThreadImportant(thread);
参数
名称 | 类型 | 说明 |
---|---|---|
thread | GmailThread | 标记为重要的会话 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
markThreadRead(thread)
将此线程标记为已读并强制线程刷新。
// Marks first inbox thread as read var thread = GmailApp.getInboxThreads(0, 1)[0]; GmailApp.markThreadRead(thread);
参数
名称 | 类型 | 说明 |
---|---|---|
thread | GmailThread | 要标记为已读的线程 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
markThreadUnimportant(thread)
将此线程标记为不重要,并强制线程刷新。
// Marks first inbox thread as unimportant var thread = GmailApp.getInboxThreads(0, 1)[0]; GmailApp.markThreadUnimportant(thread);
参数
名称 | 类型 | 说明 |
---|---|---|
thread | GmailThread | 标记为不重要的会话 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
markThreadUnread(thread)
将此线程标记为未读并强制此线程进行刷新。
// Marks first inbox thread as unread var thread = GmailApp.getInboxThreads(0, 1)[0]; GmailApp.markThreadUnread(thread);
参数
名称 | 类型 | 说明 |
---|---|---|
thread | GmailThread | 标记为未读的会话 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
markThreadsImportant(threads)
将这些线程标记为重要并强制刷新这些线程。
// Marks first two threads in inbox as important var threads = GmailApp.getInboxThreads(0, 2); GmailApp.markThreadsImportant(threads);
参数
名称 | 类型 | 说明 |
---|---|---|
threads | GmailThread[] | 一组标记为重要的线程 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
markThreadsRead(threads)
将这些线程标记为已读并强制线程刷新。
// Marks first two threads in inbox as read var threads = GmailApp.getInboxThreads(0, 2); GmailApp.markThreadsRead(threads);
参数
名称 | 类型 | 说明 |
---|---|---|
threads | GmailThread[] | 要标记为已读的线程数组 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
markThreadsUnimportant(threads)
将这些线程标记为不重要并强制刷新这些线程。
// Marks first two threads in inbox as unimportant var threads = GmailApp.getInboxThreads(0, 2); GmailApp.markThreadsUnimportant(threads);
参数
名称 | 类型 | 说明 |
---|---|---|
threads | GmailThread[] | 一组标记为不重要的线程 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
markThreadsUnread(threads)
将这些线程标记为未读并强制这些线程进行刷新。
// Marks first two threads in inbox as unread var threads = GmailApp.getInboxThreads(0, 2); GmailApp.markThreadsUnread(threads);
参数
名称 | 类型 | 说明 |
---|---|---|
threads | GmailThread[] | 一组标记为未读的线程 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
moveMessageToTrash(message)
将邮件移至“已删除邮件”,并强制其刷新。
// Move the first message in your inbox to trash var firstThread = GmailApp.getInboxThreads(0,1)[0]; var firstMessage = firstThread.getMessages()[0]; GmailApp.moveMessageToTrash(firstMessage);
参数
名称 | 类型 | 说明 |
---|---|---|
message | GmailMessage | 要移至回收站的邮件 |
返回
GmailApp
- Gmail 服务(用于链接)
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
moveMessagesToTrash(messages)
将指定的邮件移至“已删除邮件”,并强制这些邮件刷新。
// Move first two messages in your inbox to trash var firstThread = GmailApp.getInboxThreads(0,1)[0]; var messages = firstThread.getMessages(); var toDelete = [messages[0], messages[1]]; GmailApp.moveMessagesToTrash(toDelete);
参数
名称 | 类型 | 说明 |
---|---|---|
messages | GmailMessage[] | 要移至“已删除邮件”的邮件 |
返回
GmailApp
- Gmail 服务(用于链接)
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
moveThreadToArchive(thread)
将此线程移至归档,并强制刷新该线程。
// Archive the first thread in your inbox var firstThread = GmailApp.getInboxThreads(0,1)[0]; GmailApp.moveThreadToArchive(firstThread);
参数
名称 | 类型 | 说明 |
---|---|---|
thread | GmailThread | 要归档的会话 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
moveThreadToInbox(thread)
将此会话移至收件箱,并强制刷新会话。
// Find a thread not already in your inbox var thread = GmailApp.search("-in:inbox")[0]; // Get the first one GmailApp.moveThreadToInbox(thread);
参数
名称 | 类型 | 说明 |
---|---|---|
thread | GmailThread | 要移至收件箱的会话 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
moveThreadToSpam(thread)
将此会话移至“垃圾邮件”并强制此会话进行刷新。
// Tag first thread in inbox as spam var firstThread = GmailApp.getInboxThreads(0,1)[0]; GmailApp.moveThreadToSpam(firstThread);
参数
名称 | 类型 | 说明 |
---|---|---|
thread | GmailThread | 要移至“垃圾邮件”会话 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
moveThreadToTrash(thread)
将此线程移至回收站并强制此线程被刷新。
// Move first thread in inbox to trash var firstThread = GmailApp.getInboxThreads(0,1)[0]; GmailApp.moveThreadToTrash(firstThread);
参数
名称 | 类型 | 说明 |
---|---|---|
thread | GmailThread | 要移至回收站的会话 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
moveThreadsToArchive(threads)
将这些线程移至归档并强制这些线程进行刷新。
// Move first two threads in your inbox to the archive var firstTwoThreads = GmailApp.getInboxThreads(0,2); GmailApp.moveThreadsToArchive(firstTwoThreads);
参数
名称 | 类型 | 说明 |
---|---|---|
threads | GmailThread[] | 要归档的线程数组 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
moveThreadsToInbox(threads)
将这些会话移至收件箱,并强制刷新会话。
// Find two threads not already in your inbox var firstTwoThreads = GmailApp.search("-in:inbox", 0, 2); GmailApp.moveThreadsToInbox(firstTwoThreads);
参数
名称 | 类型 | 说明 |
---|---|---|
threads | GmailThread[] | 要移至收件箱的一系列会话 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
moveThreadsToSpam(threads)
将这些线程移至“垃圾邮件”并强制这些线程进行刷新。
// Move first two threads in your inbox to spam var firstTwoThreads = GmailApp.getInboxThreads(0,2); GmailApp.moveThreadsToSpam(firstTwoThreads);
参数
名称 | 类型 | 说明 |
---|---|---|
threads | GmailThread[] | 一组要移至“垃圾内容”会话的讨论帖 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
moveThreadsToTrash(threads)
将这些线程移至回收站并强制刷新这些线程。
// Move first two threads in your inbox to trash var firstTwoThreads = GmailApp.getInboxThreads(0,2); GmailApp.moveThreadsToTrash(firstTwoThreads);
参数
名称 | 类型 | 说明 |
---|---|---|
threads | GmailThread[] | 一系列要移至回收站的线程 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
refreshMessage(message)
从 Gmail 重新加载邮件和关联状态(在标签、阅读状态等发生变化时非常有用)。
var firstThread = GmailApp.getInboxThreads(0,1)[0]; var firstMessage = firstThread.getMessages()[0]; // ...Do something that may take a while here.... GmailApp.refreshMessage(firstMessage); // ...Do more stuff with firstMessage...
参数
名称 | 类型 | 说明 |
---|---|---|
message | GmailMessage | 要刷新的消息 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
refreshMessages(messages)
从 Gmail 重新加载邮件和关联状态(在标签、读取状态等发生变化时非常有用)。
var firstThread = GmailApp.getInboxThreads(0,1)[0]; var coupleOfMessages = firstThread.getMessages().slice(0, 2); // ...Do something that may take a while here.... GmailApp.refreshMessages(coupleOfMessages); // ...Do more stuff with coupleOfMessages...
参数
名称 | 类型 | 说明 |
---|---|---|
messages | GmailMessage[] | 要刷新的消息 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
refreshThread(thread)
从 Gmail 重新加载线程和关联状态(在标签、读取状态等发生变化时非常有用)。
var firstThread = GmailApp.getInboxThreads(0,1)[0]; // ...Do something that may take a while here.... GmailApp.refreshThread(firstThread); // ... Do more stuff with the thread ...
参数
名称 | 类型 | 说明 |
---|---|---|
thread | GmailThread | 要刷新的会话 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
refreshThreads(threads)
从 Gmail 重新加载线程和关联状态(在标签、读取状态等发生变化时非常有用)。
var threads = GmailApp.getInboxThreads(0, 3); // ...Do something that may take a while here.... GmailApp.refreshThreads(threads); // ... Do more stuff with threads ...
参数
名称 | 类型 | 说明 |
---|---|---|
threads | GmailThread[] | 要刷新的讨论帖 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
search(query)
在 Gmail 中搜索指定的查询。
当所有线程都太大而无法由系统处理时,此调用将失败。如果线程大小未知且可能非常大,请使用 'paged' 调用,并在每次调用中指定要检索的线程范围。
// Find starred messages with subject IMPORTANT var threads = GmailApp.search('is:starred subject:"IMPORTANT"');
参数
名称 | 类型 | 说明 |
---|---|---|
query | String | 就像您在 Gmail 中输入搜索查询一样 |
返回
GmailThread[]
- 与此查询匹配的 Gmail 会话数组
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
search(query, start, max)
在 Gmail 中搜索指定的查询。
// Find starred messages with subject IMPORTANT and return second batch of 10. // Assumes there are at least 11 of them, otherwise this will return an empty array. var threads = GmailApp.search('is:starred subject:"IMPORTANT"', 10, 10);
参数
名称 | 类型 | 说明 |
---|---|---|
query | String | 就像您在 Gmail 中输入搜索查询一样 |
start | Integer | 起始线程的索引 |
max | Integer | 要返回的线程数上限 |
返回
GmailThread[]
- 与此查询匹配的 Gmail 会话数组
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
sendEmail(recipient, subject, body)
发送电子邮件。电子邮件(包括标头)的大小有配额限制。
// The code below will send an email with the current date and time. var now = new Date(); GmailApp.sendEmail("mike@example.com", "current time", "The time is: " + now.toString());
参数
名称 | 类型 | 说明 |
---|---|---|
recipient | String | 使用英文逗号分隔的电子邮件地址列表 |
subject | String | 电子邮件的主题(最多 250 个字符) |
body | String | 电子邮件的正文 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
sendEmail(recipient, subject, body, options)
发送带有可选参数的电子邮件。该电子邮件可以包含纯文本或 HTML 正文。电子邮件的大小(包括标头,但不包括附件)受到配额限制。
// Send an email with a file from Google Drive attached as a PDF. var file = DriveApp.getFileById('1234567890abcdefghijklmnopqrstuvwxyz'); GmailApp.sendEmail('mike@example.com', 'Attachment example', 'Please see the attached file.', { attachments: [file.getAs(MimeType.PDF)], name: 'Automatic Emailer Script' });
参数
名称 | 类型 | 说明 |
---|---|---|
recipient | String | 收件人的地址 |
subject | String | 主题行(最多 250 个字符) |
body | String | 电子邮件的正文 |
options | Object | 一个 JavaScript 对象,用于指定高级参数,如下所示 |
高级参数
名称 | 类型 | 说明 |
---|---|---|
attachments | BlobSource[] | 使用电子邮件发送的一组文件 |
bcc | String | 密送至电子邮件地址的逗号分隔列表 |
cc | String | 抄送抄送地址的逗号分隔列表 |
from | String | 发送电子邮件的地址,必须是 getAliases() 返回的值之一 |
htmlBody | String | 设置后,能够呈现 HTML 的设备将使用它(而非必需的正文参数);如果您有内嵌的电子邮件图片,则可以在 HTML 正文中添加可选的 inlineImages 字段 |
inlineImages | Object | 一个 JavaScript 对象,包含从图片键 (String ) 到图片数据 (BlobSource ) 的映射;此示例假设使用 htmlBody 参数并包含对图片的引用(格式为 <img src="cid:imageKey" /> ) |
name | String | 电子邮件发件人的姓名(默认:用户姓名) |
noReply | Boolean | 如果电子邮件应通过无回复常规电子邮件地址发送,以防止收件人回复电子邮件,请使用 true ;此选项仅适用于 Google Workspace 帐号,不适用于 Gmail 用户 |
replyTo | String | 用作默认回复地址的电子邮件地址(默认:用户的电子邮件地址) |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
setCurrentMessageAccessToken(accessToken)
设置可让脚本访问当前 GmailMessage
属性的当前消息访问令牌。
只有使用 Gmail 当前邮件范围的 Google Workspace 插件项目才需要此方法。
function handleAddonActionEvent(e) { var accessToken = e.messageMetadata.accessToken; var messageId = e.messageMetadata.messageId; GmailApp.setCurrentMessageAccessToken(accessToken); var mailMessage = GmailApp.getMessageById(messageId); // Do something with mailMessage }
参数
名称 | 类型 | 说明 |
---|---|---|
accessToken | String | 从 Gmail 插件操作事件对象中获取的临时访问令牌。 |
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
starMessage(message)
为此消息加注星标,并强制刷新。
// Stars the first message in the first thread in your inbox var firstThread = GmailApp.getInboxThreads(0,1)[0]; var message = firstThread.getMessages()[0]; GmailApp.starMessage(message);
参数
名称 | 类型 | 说明 |
---|---|---|
message | GmailMessage | 要加星标的信息 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
starMessages(messages)
为这些邮件加注星标,并强制这些邮件刷新。
// Stars the first three messages in the first thread in your inbox var firstThread = GmailApp.getInboxThreads(0,1)[0]; var coupleOfMessages = firstThread.getMessages().slice(0, 3); GmailApp.starMessages(coupleOfMessages);
参数
名称 | 类型 | 说明 |
---|---|---|
messages | GmailMessage[] | 一组要加星标的消息 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
unstarMessage(message)
从邮件中移除星标,并强制刷新邮件。
// Unstars the first message in the first thread in your inbox var firstThread = GmailApp.getInboxThreads(0,1)[0]; var message = firstThread.getMessages()[0]; GmailApp.unstarMessage(message);
参数
名称 | 类型 | 说明 |
---|---|---|
message | GmailMessage | 移除星标的邮件 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/
另请参阅
unstarMessages(messages)
移除这些邮件的星标并强制邮件被刷新。
// Unstars the first three messages in the first thread in your inbox var firstThread = GmailApp.getInboxThreads(0,1)[0]; var coupleOfMessages = firstThread.getMessages().slice(0, 3); GmailApp.unstarMessages(coupleOfMessages);
参数
名称 | 类型 | 说明 |
---|---|---|
messages | GmailMessage[] | 一系列要去除的邮件 |
返回
GmailApp
- Gmail 服务,可用于链接
授权
使用此方法的脚本需要通过以下范围或相关 REST API 的适当范围进行授权:
-
https://mail.google.com/