Service de migration des groupes du SDK Admin

Le service de migration des groupes du SDK Admin vous permet d'utiliser l'API Groups Migration du SDK Admin dans Apps Script. Cette API permet aux administrateurs de domaines (y compris les revendeurs) de migrer les e-mails à partir de dossiers publics et de listes de distribution vers les archives des discussions de Google Groupes.

Référence

Pour en savoir plus sur ce service, consultez la documentation de référence de l'API Groups Migration du SDK Admin. Comme tous les services avancés d'Apps Script, le service de migration des groupes du SDK Admin utilise les mêmes objets, méthodes et paramètres que l'API publique. Pour en savoir plus, consultez la section Détermination des signatures de méthode.

Pour signaler des problèmes et obtenir d'autres informations d'assistance, consultez le guide d'assistance sur la migration des groupes du SDK Admin.

Exemple de code

L'exemple de code ci-dessous utilise la version 1 de l'API.

Migrer des e-mails de Gmail vers un groupe Google

Cet exemple récupère trois messages au format RFC 822 de chacun des trois derniers fils de discussion de la boîte de réception Gmail de l'utilisateur, crée un blob à partir du contenu de l'e-mail (y compris les pièces jointes) et l'insère dans un groupe Google du domaine.

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