Recently I was asked to find a solution for a message sent internally that would automatically delete after a certain period of time. This can be done using the Expire function in Outlook however this will only clear Unread Items. Read items will appear to have a line through them but still be present.
Without Office 365
In the Properties dialog (In Outlook 2007, it is Message Options dialog), please check the Expires after box under Delivery options. And then select an expired date and time from the drop-down lists. And then click Close. See screenshot:
Configure the Global AutoArchive Settings to delete these expired emails after a certain period of time via Outlook
Go to File , Options and Advanced and Choose AutoArchive ( If this is not present this is because you already have an archive e.g. in 365 )
Choose how frequently you want AutoArchive to run. Default is 14 days but you can choose any number between 1 and 60 days. Choose “Delete expired items ( e-mail folders only)”
With 365
You will not be able to turn on Autoarchive to clear the epired items. 365 wants you to use Retention policies that are applied to mailboxe folders. Transport rules don’t apply retention tags so there is no way to automatically add a Retention Policy on emails being sent from a specific email
You can use an Outlook rule to move emails with a specific subject or From Address to a folder and apply the retention policy onto that
If you want something set up automatically so that the user doesn’t need to do that themselves, Inbox Rules can be created using PowerShell, and retention tags can be stamped on folders/items using PowerShell + EWS (e.g. https://blogs.technet.microsoft.com/exchange/2013/05/20/using-exchange-web-services-to-apply-a-personal-tag-to-a-custom-folder/).