Last week i was wondering if there is any way to restore data “stored” in Microsoft Teams. First of all “stored” in Microsoft Teams is not the correct term here. Microsoft Teams stores different kind of data in different kind of services or applications.
So, why am i writing this article ? Microsoft says, that Microsoft Teams will be the working hub, where all services and data come together. In fact Skype for Business has already been anounced to be discontinued. The VoIP part will go into Microsoft Teams. And all the collaboration work with people in Microsoft Teams rely on data beeing shared or created. That’s why iam writing this post as it is important to backup this data.
I really recommend watching this video, as it gave me really deep insights into how Microsoft Teams works. It also shows the logical architecture of Microsoft Teams as well es all types of storage locations.
Let’s have a look, what can be restored with Veeam for Microsoft Office 365.
If you have a look at this whitepaper you will be able to see which items and things can be restored with Veeam Backup for Office 365.
Also, if you watch the above video you will see some very useful architecture diagrams regarding the Microsoft Teams infrastructure.
First of all there is the logical architecture, which will show you the integration from and to Microsoft Teams.
Secondly there is a Data Entity Storage Model, which shows where Microsoft Teams stores its different data.
Again, i have to say that this video was really helping me understanding the architecture. I definitely appreciate the work which has been done here !
For playing around with Microsoft Teams and Veeam for Office 365, i have set up a lab environment for some testing scenarios. I have also set up some Microsoft Teams channels and put some data in it, which we are going to restore later.
Let’s have a look at my Microsoft Teams setup !
As you can see i have a set of different channels under a so called “Veeam Restore Test” Team. The goal is to restore the PowerShell Script Files located in the Channel “PowerShell Scripts” aswell as the Chat Messages in there.
Creating the backup job
To do so, we first need to create a Backup job within Veeam for Microsoft Office 365.
Therefore, provide a Job Name and a Description.
Add the Team “Veeam Restore Test” from the Groups scope.
Specify which items to include within the “Veeam Restore Test” Group.
Choose a Backup repository for storing your data.
Optional: Schedule the job regarding your needs and run it.
After creating the job, run it 🙂
As you can see from the screenshots, the shared mailbox aka Microsoft Teams Team “Veeam Restore Test” has been sucessfully backed up.
As we are now ready to do some restores i want to state the following:
At the moment, there is no Microsoft Teams API to backup Microsoft Teams metadata etc. In fact, the only actual possible way for restoring data out of Microsoft Teams is to restore it to any location and bring it back manually to Microsoft Teams. There is currently no way to restore items / objects back directly to Mirosoft Teams. There is also a Veeam forum thread concernig this topic.
Nevertheless i’m going to show you now, where you can find your Microsoft Teams data if it has been backed up with Veeam for Microsoft Office 365.
First of all, let’s explore the latest sharepoint state out of this backup job.
Second, if you navigate to the Content Library of the Sharepoint backup, you will be able to see the Channels in our “Veeam Restore Test” Team. If i navigate to the “PowerShell Scripts” channel, iam now able to restore the scripts located in it.
You are now able to restore the PowerShell script as a file to your local drive or any other place.
So in fact, this is the way to get your files stored in Microsoft Teams (basically stored on SharePoint) back out of your backup.
You could also save it directly as a .zip file.
Now, if we want to get our chat messages back, we have to explore the latest Microsoft Exchange state out of our Veeam Backup for Office 365 console.
As you can see, the chat messages which have been written in Microsoft Teams are stored on the Exchange server under the Conversation History. The Subject colum shows you, where the chat message has been written, meaning in which channel. You can double-click the item to see the message.
For example, you can now choose whether to save the message as a .msg file or to export it as a .pst file.
I hope i could give some insights into how Microsoft Teams work and how to recover items and data out of it. In this case, I’m really hoping that Microsoft will release some sort of API or implement MS Teams into the Microsoft Graph API. Because at the moment there is no way to get any metadata backed up out of Microsoft Teams. The only way for recovering data out of Microsoft Teams is the way i have shown above. Furthermore you will need to replace or recreate your Teams and channels and manually add all the restored items to the channels.