Just having a play with some Google apps scripting.
// Nothing is deleted just archived. // // Look in All Mail if you don't see it in the InBox. // // Script runs each night between 11pm and midnight. // // Archives mail in the inbox that is more than two days old both read and unread. // // If you want something not to be archived give it a yellow star. // function archiveInbox() { var threads = GmailApp.search('label:inbox older_than:2d -has:yellow-star'); for (var i = 0; i < threads.length; i++) { threads[i].moveToArchive(); Utilities.sleep(5000); } } function archiveTrigger() { ScriptApp.newTrigger("archiveInbox") .timeBased() .atHour(23) .everyDays(1) // Frequency is required if you are using atHour() or nearMinute() .create(); }
All this good info came from here…
Below is the improved version….
// Created this script as the shared garden inbox was filling up with rubbish. // // Nothing is deleted just archived. // // Look in All Mail if you don't see it in the InBox. // // Script runs each night between 11pm and midnight. // // Archives mail in the inbox that is more than two days old both read and unread. // // If you want something not to be archived give it a yellow star. // function archiveInbox() { var inThreads = GmailApp.search("'in:inbox older_than:2d'"); for (var i = 0; i < inThreads.length; i++) { inThreads[i].moveToArchive() Utilities.sleep(3000); } var sentThreads = GmailApp.search("'in:sent newer_than:2d'"); for (var j = 0; j < sentThreads.length; j++) { sentThreads[j].moveToInbox(); } var starThreads = GmailApp.search('is:starred'); for (var k = 0; k < starThreads.length; k++) { starThreads[k].moveToInbox(); } } function archiveTrigger() { ScriptApp.newTrigger("archiveInbox") .timeBased() .atHour(23) .everyDays(1) // Frequency is required if you are using atHour() or nearMinute() .create(); }