Class MailApp

메일

이메일을 보냅니다.

이 서비스를 사용하면 사용자가 이메일 콘텐츠를 완전히 제어하면서 이메일을 보낼 수 있습니다. GmailApp과 달리 MailApp의 유일한 목적은 이메일을 보내는 것입니다. MailApp은 사용자의 Gmail 받은편지함에 액세스할 수 없습니다.

GmailApp을 사용하여 작성된 스크립트를 변경하면 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 서비스 할당량을 참고하세요.

const 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() {
  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,
    },
  });
}

매개변수

이름유형설명
messageObject이메일 메시지를 나타내는 JavaScript 객체

고급 매개변수

이름유형설명
attachmentsBlobSource[]이메일과 함께 전송할 파일 배열
bccStringBCC할 이메일 주소를 쉼표로 구분한 목록
bodyString이메일 본문
ccString참조에 추가할 이메일 주소를 쉼표로 구분한 목록
htmlBodyString설정된 경우 HTML을 렌더링할 수 있는 기기는 필수 본문 인수 대신 이를 사용합니다. 이메일에 이미지를 인라인으로 삽입한 경우 HTML 본문에 선택적 inlineImages 필드를 추가할 수 있습니다.
inlineImagesObject이미지 키(String)와 이미지 데이터 (BlobSource) 간의 매핑이 포함된 JavaScript 객체입니다. 여기서는 htmlBody 매개변수가 사용되고 <img src="cid:imageKey" /> 형식의 이러한 이미지 참조가 포함되어 있다고 가정합니다 (예 참고).
nameString이메일 발신자의 이름입니다. 기본값은 발신자의 사용자 이름입니다.
noReplyBooleantrue: 수신자가 이메일에 응답하지 못하도록 하려면 일반 무응답 이메일 주소에서 이메일을 보내야 하는 경우. 이 옵션은 Gmail 사용자가 아닌 Google Workspace 계정에서만 사용할 수 있습니다.
replyToString기본 답장 주소로 사용할 이메일 주소입니다(기본값: 사용자의 이메일 주소). noReplytrue로 설정되면 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.
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],
    },
);

매개변수

이름유형설명
recipientString쉼표로 구분된 수신자 주소
subjectString제목
bodyString이메일 본문
optionsObject아래에 나열된 고급 매개변수를 지정하는 JavaScript 객체입니다.

고급 매개변수

이름유형설명
attachmentsBlobSource[]이메일과 함께 전송할 파일 배열 (예 참고)
bccStringBCC할 이메일 주소를 쉼표로 구분한 목록
ccString참조에 추가할 이메일 주소를 쉼표로 구분한 목록
htmlBodyString설정된 경우 HTML을 렌더링할 수 있는 기기는 필수 본문 인수 대신 이를 사용합니다. 이메일에 이미지를 인라인으로 삽입한 경우 HTML 본문에 선택적 inlineImages 필드를 추가할 수 있습니다.
inlineImagesObject이미지 키(String)와 이미지 데이터 (BlobSource) 간의 매핑이 포함된 JavaScript 객체입니다. 여기서는 htmlBody 매개변수가 사용되고 <img src="cid:imageKey" /> 형식의 이러한 이미지 참조가 포함되어 있다고 가정합니다.
nameString이메일 발신자의 이름 (기본값: 사용자 이름)
noReplyBooleantrue: 수신자가 이메일에 응답하지 못하도록 하려면 일반 무응답 이메일 주소에서 이메일을 보내야 하는 경우. 이 옵션은 Gmail 사용자가 아닌 Google Workspace 계정에서만 사용할 수 있습니다.
replyToString기본 답장 주소로 사용할 이메일 주소입니다. 기본값은 사용자의 이메일 주소입니다.

승인

이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.

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

참고 항목


sendEmail(to, replyTo, subject, body)

이메일 메시지를 전송합니다. 이 메서드를 사용하면 사용자가 발신자와 다를 수 있는 전송된 메일의 Reply-To 주소를 쉽게 지정할 수 있습니다.

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