Serviço de migração de grupos do SDK Admin

O serviço de migração de grupos do SDK Admin permite usar a API Migration Groups do SDK Admin no Apps Script. Essa API permite que administradores de domínios Google Workspace (incluindo revendedores) migrem e-mails de pastas públicas e listas de distribuição para arquivos de discussão dos Grupos do Google.

Referência

Para informações detalhadas sobre esse serviço, consulte a documentação de referência da API Migration for Groups do SDK Admin. Assim como todos os serviços avançados no Apps Script, o serviço de migração de grupos do SDK Admin usa os mesmos objetos, métodos e parâmetros que a API pública. Para mais informações, consulte Como as assinaturas de método são determinadas.

Para informar problemas e encontrar outros tipos de suporte, consulte o Guia de suporte para a migração de grupos do SDK Admin.

Código de amostra

O exemplo de código abaixo usa a versão 1 da API.

Migrar e-mails do Gmail para um Grupo do Google

Este exemplo recebe três mensagens formatadas RFC 822 de cada uma das três últimas conversações na caixa de entrada do Gmail do usuário, cria um blob do conteúdo do e-mail (incluindo anexos) e o insere em um Grupo do Google no domínio.

advanced/adminSDK.gs
/**
 * Gets three RFC822 formatted messages from the each of the latest three
 * threads in the user's Gmail inbox, creates a blob from the email content
 * (including attachments), and inserts it in a Google Group in the domain.
 */
function migrateMessages() {
  // TODO (developer) - Replace groupId value with yours
  const groupId = 'exampleGroup@example.com';
  const messagesToMigrate = getRecentMessagesContent();
  for (const messageContent of messagesToMigrate) {
    const contentBlob = Utilities.newBlob(messageContent, 'message/rfc822');
    AdminGroupsMigration.Archive.insert(groupId, contentBlob);
  }
}

/**
 * Gets a list of recent messages' content from the user's Gmail account.
 * By default, fetches 3 messages from the latest 3 threads.
 *
 * @return {Array} the messages' content.
 */
function getRecentMessagesContent() {
  const NUM_THREADS = 3;
  const NUM_MESSAGES = 3;
  const threads = GmailApp.getInboxThreads(0, NUM_THREADS);
  const messages = GmailApp.getMessagesForThreads(threads);
  const messagesContent = [];
  for (let i = 0; i < messages.length; i++) {
    for (let j = 0; j < NUM_MESSAGES; j++) {
      const message = messages[i][j];
      if (message) {
        messagesContent.push(message.getRawContent());
      }
    }
  }
  return messagesContent;
}