Class MailApp

MailApp

E-posta gönderir.

Bu hizmet, kullanıcıların e-posta içeriği üzerinde tam kontrol sahibi olarak e-posta göndermesine olanak tanır. GmailApp'in aksine MailApp'in tek amacı e-posta göndermektir. MailApp, kullanıcının Gmail gelen kutusuna erişemiyor.

GmailApp kullanılarak yazılan komut dosyalarında yapılan değişikliklerin, MailApp komut dosyalarına kıyasla kullanıcıdan yeniden yetkilendirme isteği tetikleme olasılığı daha yüksektir.

Yöntemler

YöntemDönüş türüKısa açıklama
getRemainingDailyQuota()IntegerGünün geri kalanında e-posta gönderebileceğiniz alıcı sayısını döndürür.
sendEmail(message)voidE-posta iletisi gönderir.
sendEmail(recipient, subject, body)voidE-posta iletisi gönderir.
sendEmail(recipient, subject, body, options)voidİsteğe bağlı bağımsız değişkenlerle bir e-posta iletisi gönderir.
sendEmail(to, replyTo, subject, body)voidE-posta iletisi gönderir.

Ayrıntılı belgeler

getRemainingDailyQuota()

Günün geri kalanında e-posta gönderebileceğiniz alıcı sayısını döndürür. Döndürülen değer, geçerli yürütme için geçerlidir ve yürütmeler arasında değişiklik gösterebilir.

Kotalar, e-posta alıcılarının sayısına göre belirlenir. Belirli kota bilgileri için Google hizmetlerinin kotaları başlıklı makaleye bakın.

const emailQuotaRemaining = MailApp.getRemainingDailyQuota();
Logger.log(`Remaining email quota: ${emailQuotaRemaining}`);

Return

Integer: Komut dosyasının gönderebileceği kalan e-posta sayısı.

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

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

sendEmail(message)

E-posta iletisi gönderir. Bu yöntem varyasyonu çok daha esnektir ve çok daha fazla seçeneğe olanak tanır.

// This code fetches the Google and YouTube logos, inlines them in an email
// and sends the email
function inlineImage() {
  const googleLogoUrl =
      'https://www.gstatic.com/images/branding/googlelogo/1x/googlelogo_color_74x24dp.png';
  const youtubeLogoUrl =
      'https://developers.google.com/youtube/images/YouTube_logo_standard_white.png';
  const googleLogoBlob =
      UrlFetchApp.fetch(googleLogoUrl).getBlob().setName('googleLogoBlob');
  const 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,
    },
  });
}

Parametreler

AdTürAçıklama
messageObjectBir e-posta iletisini temsil eden JavaScript nesnesi

Gelişmiş parametreler

AdTürAçıklama
attachmentsBlobSource[]E-postayla gönderilecek bir dosya dizisi
bccStringBCC alanına eklenecek e-posta adreslerinin virgülle ayrılmış listesi
bodyStringe-postanın gövdesi
ccStringCC'ye eklenecek e-posta adreslerinin virgülle ayrılmış listesi
htmlBodyStringAyarlanmışsa HTML oluşturabilen cihazlar, gerekli gövde bağımsız değişkeni yerine bunu kullanır. E-postanızda satır içi resimler varsa HTML gövdesine isteğe bağlı bir inlineImages alanı ekleyebilirsiniz.
inlineImagesObjectResim anahtarından (String) resim verilerine (BlobSource) eşleme içeren bir JavaScript nesnesi. Bu, htmlBody parametresinin kullanıldığını ve bu resimlere <img src="cid:imageKey" /> biçiminde referanslar içerdiğini varsayar (örneğe bakın).
nameStringE-postanın göndereninin adı. Varsayılan olarak gönderenin kullanıcı adını kullanır.
noReplyBooleantrue Alıcıların e-postalara yanıt vermesini engellemek için e-postanın genel bir no-reply e-posta adresinden gönderilmesi gerekiyorsa. Bu seçenek yalnızca Google Workspace hesapları için geçerlidir, Gmail kullanıcıları için geçerli değildir.
replyToStringVarsayılan yanıt adresi olarak kullanılacak bir e-posta adresi (varsayılan: kullanıcının e-posta adresi). noReply, true olarak ayarlanırsa replyTo yoksayılır.
subjectStringE-postanın konusu
toStringAlıcının e-posta adresi veya alıcı olacak e-posta adreslerinin virgülle ayrılmış listesi

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

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

Aşağıdaki kaynakları da incelemenizi öneririz:


sendEmail(recipient, subject, body)

E-posta iletisi gönderir.

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

Parametreler

AdTürAçıklama
recipientStringAlıcıların virgülle ayrılmış adresleri
subjectStringKonu satırı
bodyStringe-postanın gövdesi

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

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

sendEmail(recipient, subject, body, options)

İsteğe bağlı bağımsız değişkenlerle bir e-posta iletisi gönderir.

// Send an email with two attachments: a file from Google Drive (as a PDF) and
// an HTML file.
const file = DriveApp.getFileById('1234567890abcdefghijklmnopqrstuvwxyz');
const 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],
    },
);

Parametreler

AdTürAçıklama
recipientStringAlıcıların virgülle ayrılmış adresleri
subjectStringKonu satırı
bodyStringe-postanın gövdesi
optionsObjectAşağıda listelendiği gibi gelişmiş parametreleri belirten bir JavaScript nesnesi

Gelişmiş parametreler

AdTürAçıklama
attachmentsBlobSource[]e-postayla gönderilecek bir dosya dizisi (örneğe bakın)
bccStringBCC alanına eklenecek e-posta adreslerinin virgülle ayrılmış listesi
ccStringCC'ye eklenecek e-posta adreslerinin virgülle ayrılmış listesi
htmlBodyStringAyarlanmışsa HTML oluşturabilen cihazlar, gerekli gövde bağımsız değişkeni yerine bunu kullanır. E-postanızda satır içi resimler varsa HTML gövdesine isteğe bağlı bir inlineImages alanı ekleyebilirsiniz.
inlineImagesObjectResim anahtarından (String) resim verilerine (BlobSource) eşleme içeren bir JavaScript nesnesi. Bu, htmlBody parametresinin kullanıldığını ve bu resimlere <img src="cid:imageKey" /> biçiminde referanslar içerdiğini varsayar.
nameStringE-postanın göndereninin adı (varsayılan: kullanıcının adı)
noReplyBooleantrue Alıcıların e-postalara yanıt vermesini engellemek için e-postanın genel bir no-reply e-posta adresinden gönderilmesi gerekiyorsa. Bu seçenek yalnızca Google Workspace hesapları için geçerlidir, Gmail kullanıcıları için geçerli değildir.
replyToStringvarsayılan yanıt adresi olarak kullanılacak bir e-posta adresi (varsayılan: kullanıcının e-posta adresi)

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

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

Aşağıdaki kaynakları da incelemenizi öneririz:


sendEmail(to, replyTo, subject, body)

E-posta iletisi gönderir. Bu yöntem, kullanıcının gönderilen ileti için gönderenden farklı olabilecek bir Yanıtla adresini kolayca belirtmesine olanak tanır.

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

Parametreler

AdTürAçıklama
toStringAlıcıların virgülle ayrılmış adresleri
replyToStringyanıt adresi
subjectStringKonu satırı
bodyStringE-postanın gövdesi düz metin olarak

Yetkilendirme

Bu yöntemi kullanan komut dosyaları, aşağıdaki kapsamlardan biri veya daha fazlasıyla yetkilendirme gerektirir:

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