Skip to content

Instantly share code, notes, and snippets.

@karpada
Last active January 1, 2020 12:17
Show Gist options
  • Save karpada/43910361c60051e077bbe76e7e6619bb to your computer and use it in GitHub Desktop.
Save karpada/43910361c60051e077bbe76e7e6619bb to your computer and use it in GitHub Desktop.
function gmailAutoarchive() {
var labels = GmailApp.getUserLabels();
var pattern = new RegExp("^autoarchive(\\d+)d");
for (var a = 0; a < labels.length; a++) {
var label = labels[a].getName()
match = pattern.exec(label)
if (!match || !(match[1])) {
Logger.log("Ignoring label " + label);
continue
}
var days = match[1]
Logger.log("Processing label ("+ days + "days) " + label);
var threads = GmailApp.search("in:inbox label:"+ label +" older_than:" + days + "d");
Logger.log("found " + threads.length + " thread(s)");
// for(var i = 0; i < threads.length; i++) {
// var thread = threads[i];
// Logger.log((i+1) + ". " + thread.getFirstMessageSubject());
// }
var batch_size = 100;
while (threads.length) {
var this_batch_size = Math.min(threads.length, batch_size);
var this_batch = threads.splice(0, this_batch_size);
GmailApp.moveThreadsToArchive(this_batch);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment