Class MailApp

App Mail

Envia e-mail.

Esse serviço permite que os usuários enviem e-mails com controle total sobre o conteúdo. Ao contrário do GmailApp, o MailApp tem como único objetivo enviar e-mails. O MailApp não pode acessar a caixa de entrada do Gmail de um usuário.

As mudanças nos scripts escritos usando o GmailApp têm mais probabilidade de acionar uma solicitação de reautorização de um usuário do que os scripts do MailApp.

Métodos

MétodoTipo de retornoBreve descrição
getRemainingDailyQuota()IntegerRetorna o número de destinatários para quem você pode enviar e-mails pelo restante do dia.
sendEmail(message)voidEnvia uma mensagem de e-mail.
sendEmail(recipient, subject, body)voidEnvia uma mensagem de e-mail.
sendEmail(recipient, subject, body, options)voidEnvia uma mensagem de e-mail com argumentos opcionais.
sendEmail(to, replyTo, subject, body)voidEnvia uma mensagem de e-mail.

Documentação detalhada

getRemainingDailyQuota()

Retorna o número de destinatários para quem você pode enviar e-mails pelo restante do dia. O valor retornado é válido para a execução atual e pode variar entre as execuções.

As cotas são baseadas no número de destinatários do e-mail. Para informações específicas sobre cotas, consulte Cotas para serviços do Google.

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

Retornar

Integer: o número de e-mails restantes que o script pode enviar.

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

sendEmail(message)

Envia uma mensagem de e-mail. Essa variação do método é muito mais flexível, permitindo muitas outras opções.

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

Parâmetros

NomeTipoDescrição
messageObjectUm objeto JavaScript que representa uma mensagem de e-mail

Parâmetros avançados

NomeTipoDescrição
attachmentsBlobSource[]uma matriz de arquivos para enviar com o e-mail
bccStringuma lista de endereços de e-mail separados por vírgulas para CC anônimo
bodyStringno corpo do e-mail
ccStringuma lista de endereços de e-mail separados por vírgulas para incluir em Cc
htmlBodyStringSe definido, os dispositivos capazes de renderizar HTML vão usar o HTML em vez do argumento de corpo obrigatório. É possível adicionar um campo inlineImages opcional no corpo do HTML se você tiver imagens inline no seu e-mail.
inlineImagesObjectUm objeto JavaScript que contém um mapeamento da chave de imagem (String) para dados de imagem (BlobSource). Isso pressupõe que o parâmetro htmlBody seja usado e contenha referências a essas imagens no formato <img src="cid:imageKey" /> (consulte o exemplo).
nameStringo nome do remetente do e-mail. O padrão é o nome de usuário do remetente.
noReplyBooleantrue se o e-mail precisa ser enviado de um endereço genérico sem resposta para desencorajar os destinatários a responder aos e-mails. Essa opção só é possível para contas do Google Workspace, não para usuários do Gmail.
replyToStringUm endereço de e-mail a ser usado como o endereço de resposta padrão (padrão: o endereço de e-mail do usuário). Se noReply estiver definido como true, replyTo será ignorado.
subjectStringo assunto do e-mail
toStringo endereço de e-mail do destinatário ou uma lista de endereços de e-mail separados por vírgulas para serem os destinatários

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

Consulte também


sendEmail(recipient, subject, body)

Envia uma mensagem de e-mail.

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

Parâmetros

NomeTipoDescrição
recipientStringos endereços dos destinatários, separados por vírgulas
subjectStringa linha de assunto
bodyStringno corpo do e-mail

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

sendEmail(recipient, subject, body, options)

Envia uma mensagem de e-mail com argumentos opcionais.

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

Parâmetros

NomeTipoDescrição
recipientStringos endereços dos destinatários, separados por vírgulas
subjectStringa linha de assunto
bodyStringno corpo do e-mail
optionsObjectum objeto JavaScript que especifica parâmetros avançados, conforme listado abaixo

Parâmetros avançados

NomeTipoDescrição
attachmentsBlobSource[]uma matriz de arquivos para enviar com o e-mail (consulte o exemplo)
bccStringuma lista de endereços de e-mail separados por vírgulas para CC anônimo
ccStringuma lista de endereços de e-mail separados por vírgulas para incluir em Cc
htmlBodyStringSe definido, os dispositivos capazes de renderizar HTML vão usar o HTML em vez do argumento de corpo obrigatório. É possível adicionar um campo inlineImages opcional no corpo do HTML se você tiver imagens inline no seu e-mail.
inlineImagesObjectum objeto JavaScript que contém um mapeamento da chave da imagem (String) para os dados da imagem (BlobSource). Isso pressupõe que o parâmetro htmlBody seja usado e contenha referências a essas imagens no formato <img src="cid:imageKey" />
nameStringo nome do remetente do e-mail (padrão: o nome do usuário)
noReplyBooleantrue se o e-mail precisa ser enviado de um endereço genérico sem resposta para desencorajar os destinatários a responder aos e-mails. Essa opção só é possível para contas do Google Workspace, não para usuários do Gmail.
replyToStringUm endereço de e-mail a ser usado como o endereço de resposta padrão (padrão: o endereço de e-mail do usuário)

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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

Consulte também


sendEmail(to, replyTo, subject, body)

Envia uma mensagem de e-mail. Esse método permite que um usuário especifique facilmente um endereço Reply-To para a mensagem enviada que pode ser diferente do remetente.

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

Parâmetros

NomeTipoDescrição
toStringos endereços dos destinatários, separados por vírgulas
replyToStringo endereço para resposta
subjectStringa linha de assunto
bodyStringo corpo do e-mail em texto simples

Autorização

Os scripts que usam esse método exigem autorização com um ou mais dos seguintes escopos:

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