Class GmailMessage

  • The GmailMessage object in Google Apps Script allows you to interact with emails in a user's Gmail account.

  • You can use methods to get email information (subject, sender, body, etc.), check email status (read, starred, in trash, etc.), and take actions (reply, forward, move to trash, etc.).

  • Most methods require authorization with the https://mail.google.com/ scope to access the user's Gmail data.

  • The reply, replyAll, createDraftReply, createDraftReplyAll, and forward methods offer advanced options for customizing your email responses.

  • Chaining is supported, allowing you to call multiple GmailMessage methods in sequence on a single email object.

GmailMessage

A message in a user's Gmail account.

Methods

MethodReturn typeBrief description
createDraftReply(body) GmailDraft Creates a draft message replying to the sender of this message using the reply-to address.
createDraftReply(body, options) GmailDraft Creates a draft message replying to the sender of this message using the reply-to address, with optional arguments.
createDraftReplyAll(body) GmailDraft Creates a draft message replying to the sender using the reply-to address and all recipients of this message.
createDraftReplyAll(body, options) GmailDraft Creates a draft message replying to the sender of this message using the reply-to address and all recipients, with optional arguments.
forward(recipient) GmailMessage Forwards this message to new recipients.
forward(recipient, options) GmailMessage Forwards this message to new recipients, with optional arguments.
getAttachments() GmailAttachment[] Gets all the attachments for this message.
getAttachments(options) GmailAttachment[] Gets all the attachments for this message.
getBcc() StringGets the comma-separated recipients bcc'd on this message.
getBody() StringGets the HTML content of the body of this message.
getCc() StringGets the comma-separated recipients cc'd on this message.
getDate() DateGets the date and time of this message.
getFrom() StringGets the sender of this message.
getHeader(name) StringGets the value of an RFC 2822 header given the header name.
getId() StringGets the ID of this message.
getPlainBody() StringGets the content of the body of this message without HTML formatting.
getRawContent() StringGets the raw content of this message.
getReplyTo() StringGets the reply-to address of this message (usually the sender).
getSubject() StringGets the subject of this message.
getThread() GmailThread Gets the thread that contains this message.
getTo() StringGets the comma-separated recipients of this message.
isDraft() BooleanGets whether this message is a draft.
isInChats() BooleanGets whether this message is a chat.
isInInbox() BooleanGets whether this message is in the inbox.
isInPriorityInbox() BooleanReturns true if this message is in the priority inbox; returns false otherwise.
isInTrash() BooleanGets whether this message is in the trash.
isStarred() BooleanGets whether this message is starred.
isUnread() BooleanGets whether this message is unread.
markRead() GmailMessage Marks the message as read.
markUnread() GmailMessage Marks the message as unread.
moveToTrash() GmailMessage Moves the message to the trash.
refresh() GmailMessage Reloads this message and associated state from Gmail (useful in case the labels, read state, etc., have changed).
reply(body) GmailMessage Replies to the sender of this message using the reply-to address.
reply(body, options) GmailMessage Replies to the sender of this message using the reply-to address, with optional arguments.
replyAll(body) GmailMessage Replies to the sender using the reply-to address and all recipients of this message.
replyAll(body, options) GmailMessage Replies to the sender of this message using the reply-to address and all recipients, with optional arguments.
star() GmailMessage Stars the message.
unstar() GmailMessage Unstars the message.

Detailed documentation

createDraftReply(body)

Creates a draft message replying to the sender of this message using the reply-to address. The size of the email (including headers) is quota limited.

// Create a draft reply to the original message with an acknowledgment.
constfirstThread=GmailApp.getInboxThreads(0,1)[0];
constmessage=firstThread.getMessages()[0];
message.createDraftReply('Got your message');

Parameters

NameTypeDescription
bodyStringThe body of the email.

Return

GmailDraft — The newly created draft message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


createDraftReply(body, options)

Creates a draft message replying to the sender of this message using the reply-to address, with optional arguments.

The email can contain both plain text and an HTML body. The size of the email (including headers) is quota limited.

// Create a draft response with an HTML text body.
constfirstThread=GmailApp.getInboxThreads(0,1)[0];
constmessage=firstThread.getMessages()[0];
message.createDraftReply('incapable of HTML',{
htmlBody:'<b>some HTML body text</b>',
cc:'another@example.com',
});

Parameters

NameTypeDescription
bodyStringThe body of the email.
optionsObjectA JavaScript object that specifies advanced parameters, as listed below.

Advanced parameters

NameTypeDescription
attachmentsBlobSource[] an array of files to send with the email
bccStringa comma-separated list of email addresses to BCC
ccStringa comma-separated list of email addresses to CC
fromStringthe address that the email should be sent from, which must be one of the values returned by GmailApp.getAliases()
htmlBodyStringwhen set, devices capable of rendering HTML use it instead of the required body argument; you can add an optional inlineImages field in HTML body if you have inlined images for your email
inlineImagesObjecta JavaScript object containing a mapping from image key (String) to image data (BlobSource ); this assumes that the htmlBody parameter is used and contains references to these images in the format <img src="cid:imageKey" />
nameStringthe name of the sender of the email (default: the user's name)
replyToStringan email address to use as the default reply-to address (default: the user's email address)
subjectStringA new subject line for the email, up to 250 characters.

Return

GmailDraft — The newly created draft message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


createDraftReplyAll(body)

Creates a draft message replying to the sender using the reply-to address and all recipients of this message. The size of the email (including headers) is quota limited.

// Create a draft response to all recipients (except those bcc'd) with an
// acknowledgment.
constfirstThread=GmailApp.getInboxThreads(0,1)[0];
constmessage=firstThread.getMessages()[0];
message.createDraftReplyAll('Got your message');

Parameters

NameTypeDescription
bodyStringThe body of the email.

Return

GmailDraft — The newly created draft message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


createDraftReplyAll(body, options)

Creates a draft message replying to the sender of this message using the reply-to address and all recipients, with optional arguments.

The email can contain both plain text and an HTML body. The size of the email (including headers) is quota limited.

// Create a draft response to all recipients (except those bcc'd) using an HTML
// text body.
constfirstThread=GmailApp.getInboxThreads(0,1)[0];
constmessage=firstThread.getMessages()[0];
message.createDraftReplyAll('incapable of HTML',{
htmlBody:'<b>some HTML body text</b>',
cc:'another@example.com',
});

Parameters

NameTypeDescription
bodyStringThe body of the email.
optionsObjectA JavaScript object that specifies advanced parameters, as listed below.

Advanced parameters

NameTypeDescription
attachmentsBlobSource[] an array of files to send with the email
bccStringa comma-separated list of email addresses to BCC
ccStringa comma-separated list of email addresses to CC
fromStringthe address that the email should be sent from, which must be one of the values returned by GmailApp.getAliases()
htmlBodyStringwhen set, devices capable of rendering HTML use it instead of the required body argument; you can add an optional inlineImages field in HTML body if you have inlined images for your email
inlineImagesObjecta JavaScript object containing a mapping from image key (String) to image data (BlobSource ); this assumes that the htmlBody parameter is used and contains references to these images in the format <img src="cid:imageKey" />
nameStringthe name of the sender of the email (default: the user's name)
replyToStringan email address to use as the default reply-to address (default: the user's email address)
subjectStringA new subject line for the email, up to 250 characters.

Return

GmailDraft — The newly created draft message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


forward(recipient)

Forwards this message to new recipients. The size of the email (including headers) is quota limited.

// Forward first message of first inbox thread to recipient1 & recipient2,
// both @example.com
constfirstThread=GmailApp.getInboxThreads(0,1)[0];
constmessage=firstThread.getMessages()[0];
message.forward('recipient1@example.com,recipient2@example.com');

Parameters

NameTypeDescription
recipientStringA comma-separated list of email addresses.

Return

GmailMessage — This message, useful for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


forward(recipient, options)

Forwards this message to new recipients, with optional arguments.

The email can contain both plain text, and also an HTML body. The size of the email (including headers) is quota limited.

constfirstThread=GmailApp.getInboxThreads(0,1)[0];
constmessage=firstThread.getMessages()[0];
message.forward('recipient1@example.com,recipient2@example.com',{
cc:'myboss@example.com',
bcc:'mybosses-boss@example.com,vp@example.com',
});

Parameters

NameTypeDescription
recipientStringA comma-separated list of email addresses.
optionsObjectA JavaScript object that specifies advanced parameters, as listed below.

Advanced parameters

NameTypeDescription
attachmentsBlobSource[] an array of files to send with the email
bccStringa comma-separated list of email addresses to BCC
ccStringa comma-separated list of email addresses to CC
fromStringthe address that the email should be sent from, which must be one of the values returned by GmailApp.getAliases()
htmlBodyStringwhen set, devices capable of rendering HTML use it instead of the required body argument; you can add an optional inlineImages field in HTML body if you have inlined images for your email
inlineImagesObjecta JavaScript object containing a mapping from image key (String) to image data (BlobSource ); this assumes that the htmlBody parameter is used and contains references to these images in the format <img src="cid:imageKey" />
nameStringthe name of the sender of the email (default: the user's name)
noReplyBooleantrue if the email should be sent from a generic no-reply email address to discourage recipients from responding to emails; this option is only possible for Google Workspace accounts, not Gmail users
replyToStringan email address to use as the default reply-to address (default: the user's email address)
subjectStringA new subject line for the email, up to 250 characters.

Return

GmailMessage — This message, useful for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


getAttachments()

Gets all the attachments for this message.

Return

GmailAttachment[] — An array of Blob attachments for this message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

getAttachments(options)

Gets all the attachments for this message.

Parameters

NameTypeDescription
optionsObjectA JavaScript object that specifies advanced parameters, as listed below.

Advanced parameters

NameTypeDescription
includeInlineImagesBooleantrue if the returned array of Blob attachments should include inline images (default is true).
includeAttachmentsBooleantrue if the returned array of Blob attachments should include regular (non-inline) attachments (default is true).

Return

GmailAttachment[] — An array of Blob attachments for this message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

getBcc()

Gets the comma-separated recipients bcc'd on this message.

This is empty for all received messages, by definition.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(message.getBcc());// Log bcc'd addresses

Return

String — The comma-separated recipients bcc'd on this message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


getBody()

Gets the HTML content of the body of this message.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(message.getBody());// Log contents of the body

Return

String — The body content of this message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


getCc()

Gets the comma-separated recipients cc'd on this message.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(message.getCc());// Log cc'd addresses

Return

String — The comma-separated recipients cc'd on this message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


getDate()

Gets the date and time of this message.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(message.getDate());// Log date and time of the message

Return

Date — The date and time of this message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

getFrom()

Gets the sender of this message.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(message.getFrom());// Log from address of the message

Return

String — The email address of the message sender.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


getHeader(name)

Gets the value of an RFC 2822 header given the header name.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox.
constmessage=thread.getMessages()[0];// Get the first message.
Logger.log(
message.getHeader('Message-ID'));// Logs the Message-ID RFC 2822 header.

Parameters

NameTypeDescription
nameStringThe name of the RFC header, without the colon separating it from the value.

Return

String — The value of the header, or an empty string if the header doesn't exist in the message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

getId()

Gets the ID of this message.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
constid=message.getId();
constmessageById=GmailApp.getMessageById(id);
Logger.log(
message.getSubject()===messageById.getMessage());// Always logs true

Return

String — The message ID.


getPlainBody()

Gets the content of the body of this message without HTML formatting. This is more complex than getBody() and takes longer.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(message.getPlainBody());// Log contents of the body

Return

String — The plain body content of this message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


getRawContent()

Gets the raw content of this message. This is equivalent to "Show Original" in the Gmail UI.

Return

String — The raw content of this message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

getReplyTo()

Gets the reply-to address of this message (usually the sender).

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(message.getReplyTo());// Logs reply-to address

Return

String — The email address for replies.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


getSubject()

Gets the subject of this message.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(message.getSubject());// Log subject line

Return

String — The subject of this message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


getThread()

Gets the thread that contains this message.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(
message.getThread().getFirstMessageSubject()===
thread.getFirstMessageSubject(),
);// Always logs true

Return

GmailThread — The GmailThread that contains this message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

getTo()

Gets the comma-separated recipients of this message.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(message.getTo());// Log the recipient of message

Return

String — The comma-separated recipients of this message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


isDraft()

Gets whether this message is a draft.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(`is draft? ${message.isDraft()}`);

Return

Boolean — Whether this message is a draft.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

isInChats()

Gets whether this message is a chat.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(`is a chat? ${message.isInChats()}`);

Return

Boolean — Whether this message is a chat.


isInInbox()

Gets whether this message is in the inbox.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(`is in inbox? ${message.isInInbox()}`);

Return

Boolean — Whether this message is in the inbox.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

isInPriorityInbox()

Returns true if this message is in the priority inbox; returns false otherwise.

constthread=GmailApp.getPriorityInboxThreads(
0,1)[0];// Get first thread in priority inbox
constmessages=thread.getMessages();
for(leti=0;i < messages.length;i++){
// At least one of the messages is in priority inbox
Logger.log(`is in priority inbox? ${messages[i].isInPriorityInbox()}`);
}

Return

Boolean — Whether this message is in the priority inbox.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

isInTrash()

Gets whether this message is in the trash.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(`is in the trash? ${message.isInTrash()}`);

Return

Boolean — Whether this message is in the trash.


isStarred()

Gets whether this message is starred.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(`is starred? ${message.isStarred()}`);

Return

Boolean — Whether this message is starred.


isUnread()

Gets whether this message is unread.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
Logger.log(`is unread? ${message.isUnread()}`);

Return

Boolean — The unread status of this message.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

markRead()

Marks the message as read.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
message.markRead();// Mark as read

Return

GmailMessage — This GmailMessage, useful for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


markUnread()

Marks the message as unread.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
message.markUnread();// Mark as unread

Return

GmailMessage — This GmailMessage, useful for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


moveToTrash()

Moves the message to the trash.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
message.moveToTrash();// Move message to trash

Return

GmailMessage — This GmailMessage, useful for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


refresh()

Reloads this message and associated state from Gmail (useful in case the labels, read state, etc., have changed).

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
// .. Do bunch of stuff here
message.refresh();// Make sure it's up to date
// Do more stuff to message

Return

GmailMessage — This message for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

reply(body)

Replies to the sender of this message using the reply-to address. The size of the email (including headers) is quota limited.

// Respond to author of message with acknowledgment
constfirstThread=GmailApp.getInboxThreads(0,1)[0];
constmessage=firstThread.getMessages()[0];
message.reply('Got your message');

Parameters

NameTypeDescription
bodyStringThe body of the email.

Return

GmailMessage — This message, useful for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


reply(body, options)

Replies to the sender of this message using the reply-to address, with optional arguments.

The email can contain both plain text, and also an HTML body. The size of the email (including headers) is quota limited.

// Respond with HTML body text
constfirstThread=GmailApp.getInboxThreads(0,1)[0];
constmessage=firstThread.getMessages()[0];
message.reply('incapable of HTML',{
htmlBody:'<b>some HTML body text</b>',
noReply:true,
});

Parameters

NameTypeDescription
bodyStringThe body of the email.
optionsObjectA JavaScript object that specifies advanced parameters, as listed below.

Advanced parameters

NameTypeDescription
attachmentsBlobSource[] an array of files to send with the email
bccStringa comma-separated list of email addresses to BCC
ccStringa comma-separated list of email addresses to CC
fromStringthe address that the email should be sent from, which must be one of the values returned by GmailApp.getAliases()
htmlBodyStringwhen set, devices capable of rendering HTML use it instead of the required body argument; you can add an optional inlineImages field in HTML body if you have inlined images for your email
inlineImagesObjecta JavaScript object containing a mapping from image key (String) to image data (BlobSource ); this assumes that the htmlBody parameter is used and contains references to these images in the format <img src="cid:imageKey" />
nameStringthe name of the sender of the email (default: the user's name)
noReplyBooleantrue if the email should be sent from a generic no-reply email address to discourage recipients from responding to emails; this option is only possible for Google Workspace accounts, not Gmail users
replyToStringan email address to use as the default reply-to address (default: the user's email address)
subjectStringA new subject line for the email, up to 250 characters.

Return

GmailMessage — This message, useful for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


replyAll(body)

Replies to the sender using the reply-to address and all recipients of this message. The size of the email (including headers) is quota limited.

// Respond to all recipients (except bcc'd) of last email in thread with
// acknowledgment
constfirstThread=GmailApp.getInboxThreads(0,1)[0];
constmessage=firstThread.getMessages()[0];
message.replyAll('Got your message');

Parameters

NameTypeDescription
bodyStringThe body of the email.

Return

GmailMessage — This message,useful for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


replyAll(body, options)

Replies to the sender of this message using the reply-to address and all recipients, with optional arguments.

The email can contain both plain text, and also an HTML body. The size of the email (including headers) is quota limited.

// Respond with HTML body text
constfirstThread=GmailApp.getInboxThreads(0,1)[0];
constmessage=firstThread.getMessages()[0];
message.replyAll('incapable of HTML',{
htmlBody:'<b>some HTML body text</b>',
noReply:true,
});

Parameters

NameTypeDescription
bodyStringThe body of the email.
optionsObjectA JavaScript object that specifies advanced parameters, as listed below.

Advanced parameters

NameTypeDescription
attachmentsBlobSource[] an array of files to send with the email
bccStringa comma-separated list of email addresses to BCC
ccStringa comma-separated list of email addresses to CC
fromStringthe address that the email should be sent from, which must be one of the values returned by GmailApp.getAliases()
htmlBodyStringwhen set, devices capable of rendering HTML use it instead of the required body argument; you can add an optional inlineImages field in HTML body if you have inlined images for your email
inlineImagesObjecta JavaScript object containing a mapping from image key (String) to image data (BlobSource ); this assumes that the htmlBody parameter is used and contains references to these images in the format <img src="cid:imageKey" />
nameStringthe name of the sender of the email (default: the user's name)
noReplyBooleantrue if the email should be sent from a generic no-reply email address to discourage recipients from responding to emails; this option is only possible for Google Workspace accounts, not Gmail users
replyToStringan email address to use as the default reply-to address (default: the user's email address)
subjectStringA new subject line for the email, up to 250 characters.

Return

GmailMessage — This message, useful for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


star()

Stars the message.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
message.star();// Star the message

Return

GmailMessage — This GmailMessage, useful for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also


unstar()

Unstars the message.

constthread=GmailApp.getInboxThreads(0,1)[0];// Get first thread in inbox
constmessage=thread.getMessages()[0];// Get first message
message.unstar();// Unstar the message

Return

GmailMessage — This GmailMessage, useful for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes or appropriate scopes from the related REST API:

  • https://mail.google.com/

See also

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2024年12月03日 UTC.