Class MailApp

MailApp

傳送電子郵件。

這項服務可讓使用者傳送電子郵件,完全掌控電子郵件內容。 與 GmailApp 不同的是,MailApp 的唯一用途是傳送電子郵件。MailApp 無法存取使用者的 Gmail 。

對使用 Gmail 應用程式編寫的指令碼所做的變更更有可能觸發重新授權 而非 MailApp 指令碼

方法

方法傳回類型簡短說明
getRemainingDailyQuota()Integer傳回在當天剩餘的時間內,您可以傳送電子郵件的收件者人數。
sendEmail(message)void傳送電子郵件。
sendEmail(recipient, subject, body)void傳送電子郵件。
sendEmail(recipient, subject, body, options)void傳送含有選用引數的電子郵件。
sendEmail(to, replyTo, subject, body)void傳送電子郵件。

內容詳盡的說明文件

getRemainingDailyQuota()

傳回在當天剩餘的時間內,您可以傳送電子郵件的收件者人數。傳回的 值對目前的執行作業有效,並且可能因執行方式而異。

配額是以電子郵件收件者人數為計算依據。如需特定配額資訊,請參閱 Google 的配額 服務

var emailQuotaRemaining = MailApp.getRemainingDailyQuota();
Logger.log("Remaining email quota: " + emailQuotaRemaining);

回攻員

Integer:指令碼還可以傳送的電子郵件數量。

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

  • https://www.googleapis.com/auth/script.send_mail

sendEmail(message)

傳送電子郵件。這個方法的變化更有彈性,可以

// This code fetches the Google and YouTube logos, inlines them in an email
// and sends the email
function inlineImage() {
  var googleLogoUrl = "https://www.gstatic.com/images/branding/googlelogo/1x/googlelogo_color_74x24dp.png";
  var youtubeLogoUrl =
        "https://developers.google.com/youtube/images/YouTube_logo_standard_white.png";
  var googleLogoBlob = UrlFetchApp
                         .fetch(googleLogoUrl)
                         .getBlob()
                         .setName("googleLogoBlob");
  var youtubeLogoBlob = UrlFetchApp
                          .fetch(youtubeLogoUrl)
                          .getBlob()
                          .setName("youtubeLogoBlob");
  MailApp.sendEmail({
    to: "recipient@example.com",
    subject: "Logos",
    htmlBody: "inline Google Logo<img src='cid:googleLogo'> images! <br>" +
              "inline YouTube Logo <img src='cid:youtubeLogo'>",
    inlineImages:
      {
        googleLogo: googleLogoBlob,
        youtubeLogo: youtubeLogoBlob
      }
  });
}

參數

名稱類型說明
messageObject代表電子郵件的 JavaScript 物件

進階參數

名稱類型說明
attachmentsBlobSource[]換 要隨電子郵件傳送的檔案陣列
bccString以逗號分隔的密件副本電子郵件地址清單
bodyString電子郵件內文
ccString列出要接收副本的電子郵件地址,以半形逗號分隔
htmlBodyString設定後,能夠轉譯 HTML 的裝置會改用這個程式碼 所需的 body 引數之一;您可以視需要在 HTML 中新增 inlineImages 欄位 電子郵件內文 (如果電子郵件含有內嵌圖片)
inlineImagesObject包含來自圖片鍵對應的 JavaScript 物件 (String) 轉換為圖片資料 (BlobSource);此情況假設使用 htmlBody 參數,且包含這些圖片的參照,格式為 <img src="cid:imageKey" /> (請參閱範例)
nameString電子郵件寄件者的名稱。預設為寄件者的 使用者名稱。
noReplyBooleantrue 如果應從一般電子郵件寄出 請勿回覆電子郵件,勸阻收件者回覆電子郵件。這個選項 僅適用於 Google Workspace 帳戶,Gmail 使用者
replyToString設為預設回覆地址的電子郵件地址 (預設:使用者的電子郵件地址)。如果將 noReply 設為 true,則系統會忽略 replyTo
subjectString電子郵件主旨
toString收件者的電子郵件地址或以半形逗號分隔的清單 收件者電子郵件地址

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

  • https://www.googleapis.com/auth/script.send_mail

另請參閱


sendEmail(recipient, subject, body)

傳送電子郵件。

MailApp.sendEmail("recipient@example.com",
                  "TPS reports",
                  "Where are the TPS reports?");

參數

名稱類型說明
recipientString這些收件者的地址 (以半形逗號分隔)
subjectString主旨行
bodyString電子郵件內文

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

  • https://www.googleapis.com/auth/script.send_mail

sendEmail(recipient, subject, body, options)

傳送含有選用引數的電子郵件。

// Send an email with two attachments: a file from Google Drive (as a PDF) and an HTML file.
var file = DriveApp.getFileById('1234567890abcdefghijklmnopqrstuvwxyz');
var blob = Utilities.newBlob('Insert any HTML content here', 'text/html', 'my_document.html');
MailApp.sendEmail('mike@example.com', 'Attachment example', 'Two files are attached.', {
    name: 'Automatic Emailer Script',
    attachments: [file.getAs(MimeType.PDF), blob]
});

參數

名稱類型說明
recipientString這些收件者的地址 (以半形逗號分隔)
subjectString主旨行
bodyString電子郵件內文
optionsObject指定進階參數的 JavaScript 物件,如下所示

進階參數

名稱類型說明
attachmentsBlobSource[]換 要隨電子郵件一併傳送的檔案陣列 (請參閱範例)
bccString以逗號分隔的密件副本電子郵件地址清單
ccString列出要接收副本的電子郵件地址,以半形逗號分隔
htmlBodyString設定後,能夠轉譯 HTML 的裝置會改用這個程式碼 所需的 body 引數之一;您可以視需要在 HTML 中新增 inlineImages 欄位 電子郵件內文 (如果電子郵件含有內嵌圖片)
inlineImagesObject包含來自圖片鍵對應的 JavaScript 物件 (String) 轉換為圖片資料 (BlobSource);此情況假設使用 htmlBody 參數,且包含這些圖片的參照,格式為 <img src="cid:imageKey" />
nameString電子郵件寄件者的名稱 (預設:使用者名稱)
noReplyBooleantrue 如果應從一般電子郵件寄出 請勿回覆電子郵件,勸阻收件者回覆電子郵件。這個選項 僅適用於 Google Workspace 帳戶,Gmail 使用者
replyToString設為預設回覆地址的電子郵件地址 (預設:使用者的電子郵件地址)

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

  • https://www.googleapis.com/auth/script.send_mail

另請參閱


sendEmail(to, replyTo, subject, body)

傳送電子郵件。這個方法可讓使用者輕鬆指定「回覆」地址 卻可能與寄件者不同的訊息

MailApp.sendEmail("recipient@example.com",
                  "replies@example.com",
                  "TPS report status",
                  "What is the status of those TPS reports?");

參數

名稱類型說明
toString這些收件者的地址 (以半形逗號分隔)
replyToString回覆地址
subjectString主旨行
bodyString電子郵件內文 (純文字)

授權

使用這個方法的指令碼需要下列一或多個範圍的授權:

  • https://www.googleapis.com/auth/script.send_mail