Servicio de migración de Grupos del SDK de Admin

El servicio de migración de grupos del SDK de Admin te permite usar la API de migración de grupos del SDK de Admin en Apps Script. Esta API les brinda a los administradores de Google Workspace dominios (incluidos los revendedores) la capacidad de migrar correos electrónicos de carpetas públicas y listas de distribución a archivos de discusión de Grupos de Google.

Reference

Para obtener información detallada sobre este servicio, consulta la documentación de referencia de la API de migración de grupos del SDK de Admin. Al igual que todos los servicios avanzados de Apps Script, el servicio de migración de grupos del SDK de Admin usa los mismos objetos, métodos y parámetros que la API pública. Para obtener más información, consulta Cómo se determinan las firmas de métodos.

Para informar problemas y encontrar otro tipo de asistencia, consulta la guía de asistencia para la migración de grupos del SDK de Admin.

Código de muestra

El siguiente código de muestra usa la versión 1 de la API.

Migra correos electrónicos de Gmail a un Grupo de Google

En esta muestra, se obtienen tres mensajes con formato RFC 822 de cada uno de los tres últimos subprocesos en la carpeta Recibidos de Gmail del usuario, se crea un BLOB a partir del contenido del correo electrónico (incluidos los archivos adjuntos) y se inserta en un Grupo de Google en el dominio.

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;
}