Class MailApp

MailApp

wysyła e-maile;

Ta usługa umożliwia użytkownikom wysyłanie e-maili z pełną kontrolą nad ich treścią. W przeciwieństwie do GmailApp jedynym celem MailApp jest wysyłanie e-maili. MailApp nie ma dostępu do skrzynki odbiorczej Gmaila użytkownika.

Zmiany w skryptach napisanych przy użyciu GmailApp częściej niż w przypadku skryptów MailApp wywołują prośbę o ponowne autoryzowanie ze strony użytkownika.

Metody

MetodaZwracany typKrótki opis
getRemainingDailyQuota()IntegerZwraca liczbę odbiorców, do których możesz wysłać e-maile do końca dnia.
sendEmail(message)voidWysyła e-maila.
sendEmail(recipient, subject, body)voidWysyła e-maila.
sendEmail(recipient, subject, body, options)voidWysyła e-maila z argumentami opcjonalnymi.
sendEmail(to, replyTo, subject, body)voidWysyła e-maila.

Szczegółowa dokumentacja

getRemainingDailyQuota()

Zwraca liczbę odbiorców, do których możesz wysłać e-maile do końca dnia. Zwracana wartość jest ważna w przypadku bieżącego wykonania i może się różnić w zależności od wykonania.

Limity są ustalane na podstawie liczby odbiorców e-maili. Szczegółowe informacje o limitach znajdziesz w artykule Limity usług Google.

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

Powrót

Integer – liczba pozostałych e-maili, które skrypt może wysłać.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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

sendEmail(message)

Wysyła e-maila. Ta odmiana metody jest znacznie bardziej elastyczna i umożliwia korzystanie z wielu dodatkowych opcji.

// 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,
    },
  });
}

Parametry

NazwaTypOpis
messageObjectobiekt JavaScriptu reprezentujący wiadomość e-mail,

Parametry zaawansowane

NazwaTypOpis
attachmentsBlobSource[]tablicę plików do wysłania z e-mailem.
bccStringlista adresów e-mail do pola UDW rozdzielona przecinkami;
bodyStringtreść e-maila,
ccStringlista adresów e-mail, na które należy wysłać kopię wiadomości, rozdzielona przecinkami;
htmlBodyStringjeśli jest ustawiony, urządzenia obsługujące HTML będą go używać zamiast wymaganego argumentu body; w treści HTML możesz dodać opcjonalne pole inlineImages, jeśli masz wstawione obrazy w e-mailu
inlineImagesObjectobiekt JavaScript zawierający mapowanie klucza obrazu (String) na dane obrazu (BlobSource); zakłada się, że używany jest parametr htmlBody, który zawiera odwołania do tych obrazów w formacie <img src="cid:imageKey" /> (patrz przykład);
nameStringnazwę nadawcy e-maila; Domyślnie jest to nazwa użytkownika nadawcy.
noReplyBooleantrue czy e-mail powinien być wysyłany z ogólnego adresu e-mail, na który nie można odpowiadać, aby zniechęcić odbiorców do odpowiadania na e-maile; ta opcja jest dostępna tylko w przypadku kont Google Workspace, a nie użytkowników Gmaila;
replyToStringadres e-mail, który ma być używany jako domyślny adres zwrotny (domyślnie: adres e-mail użytkownika); Jeśli wartość noReply to true, parametr replyTo jest ignorowany.
subjectStringtemat e-maila,
toStringadres e-mail odbiorcy lub lista adresów e-mail odbiorców rozdzielonych przecinkami;

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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

Zobacz też


sendEmail(recipient, subject, body)

Wysyła e-maila.

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

Parametry

NazwaTypOpis
recipientStringadresy odbiorców rozdzielone przecinkami;
subjectStringtemat,
bodyStringtreść e-maila,

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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

sendEmail(recipient, subject, body, options)

Wysyła e-maila z argumentami opcjonalnymi.

// 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],
    },
);

Parametry

NazwaTypOpis
recipientStringadresy odbiorców rozdzielone przecinkami;
subjectStringtemat,
bodyStringtreść e-maila,
optionsObjectobiekt JavaScriptu, który określa parametry zaawansowane wymienione poniżej;

Parametry zaawansowane

NazwaTypOpis
attachmentsBlobSource[]tablicę plików do wysłania z e-mailem (patrz przykład);
bccStringlista adresów e-mail do pola UDW rozdzielona przecinkami;
ccStringlista adresów e-mail, na które należy wysłać kopię wiadomości, rozdzielona przecinkami;
htmlBodyStringjeśli jest ustawiony, urządzenia obsługujące HTML będą go używać zamiast wymaganego argumentu body; w treści HTML możesz dodać opcjonalne pole inlineImages, jeśli masz wstawione obrazy w e-mailu
inlineImagesObjectobiekt JavaScript zawierający mapowanie klucza obrazu (String) na dane obrazu (BlobSource); zakłada się, że używany jest parametr htmlBody, który zawiera odwołania do tych obrazów w formacie <img src="cid:imageKey" />.
nameStringnazwa nadawcy e-maila (domyślnie: nazwa użytkownika);
noReplyBooleantrue czy e-mail powinien być wysyłany z ogólnego adresu e-mail, na który nie można odpowiadać, aby zniechęcić odbiorców do odpowiadania na e-maile; ta opcja jest dostępna tylko w przypadku kont Google Workspace, a nie użytkowników Gmaila;
replyToStringadres e-mail, który ma być używany jako domyślny adres zwrotny (domyślnie: adres e-mail użytkownika);

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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

Zobacz też


sendEmail(to, replyTo, subject, body)

Wysyła e-maila. Ta metoda pozwala użytkownikowi łatwo określić adres zwrotny dla wysłanej wiadomości, który może różnić się od adresu nadawcy.

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

Parametry

NazwaTypOpis
toStringadresy odbiorców rozdzielone przecinkami;
replyToStringadres zwrotny,
subjectStringtemat,
bodyStringtreść e-maila w formacie zwykłego tekstu;

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:

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