How to: Publish Teams Apps to your Company Store
Are you excited by the idea of writing applications for your organisation that can empower your users to do more in Teams, but also concerned by how you’re going to distribute those applications? You definitely don’t want to publish them to the main Teams App Store for everyone to see, but equally, you don’t want to have to sideload them on every user’s Teams instance.
Well, luckily there is a solution. Announced at Ignite 2018, you can publish applications to a Company App Store. This is only visible to users in your tenant and provides them with the App Store model of searching for and installing applications.
This blog post goes through why you’d want to expose your Line of Business (LOB) application functionality in Teams, some examples of applications that are useful for an organisation but wouldn’t make sense to be public, and finally shows you how you can publish apps to your own tenant’s Company Store.
Why do this?
Microsoft Teams is an extensible platform, enabling you to augment the built-in functionality with customisations that are specific for how your users work. Bots, Tabs, Connectors and Compose Extensions are just some of the ways that external information can surface inside Microsoft Teams. Bringing this information to Teams enables users to have the information they need right at their fingertips, without needing to switch applications. Marry together the content and the conversion and you enable your users to be productive and achieve more, every day.
Being able to publish apps to a Company Store means you are free to write apps that integrate with your existing Line of Business applications, legacy systems, on-site data stores, whatever else it is that your users need, without worrying that you’re exposing the inner workings of your organisation to your competitors, the general public or bad actors. You can build a highly curated, organisation-specific collection of apps for your users to download, easily accessible from the Teams client.
Examples of Company Store type Apps
These are some examples where it makes sense to publish an app to a Company Store, and not to the general Teams App Store.
You have an existing facilities management system for room bookings and car park reservations, but it doesn’t have a mobile app and requires you to be on the corporate network. This means that remote and traveling users can’t use it, leading to frustration with an increasingly mobile workforce. By providing a simple Facilities Bot which interfaces with the existing system, users can generate and manage booking tickets and be notified of their progress.
Shuttle Bookings (at Microsoft)
This is a real-world example being used by Microsoft. Microsoft has a pretty big campus and uses a bus shuttle service for employees to get around. Any delays to this service or booking complications mean wasted employee time.
Microsoft created a Microsft Teams travel app to enable their workers to book shuttles on the go, no matter where they are. This has meant less time coordinating shuttle services and more time focused on the job. Shuttle confirmation notifications and updates are immediately sent to the user, allowing them to plan for delays as needed.
How to Publish an App to the Company Store
The first thing to know is that you do not need to develop or architect your Teams app any differently than you would for side-loading or publishing to the main Teams App Store. The Company App Store is simply another way for users to access your app.
The second thing to know is that there is no App Review process like there is for publically accessible apps. Depending on your perspective, this is either a good thing or a bad thing. Just know that once someone has the permissions to upload an app to the Company Store, there are no additional checks to getting it into the hands of users.
Thirdly, only Teams admins can publish apps to the Company Store. Specifically, it is users with the Teams Service Administrator role which are able to do this. Those users will see an additional option in the Teams client, when they click the Upload a custom app link, enabling them to upload to their Company Store instead of just for them and their teams:
Any apps uploaded from here will be added to the Company Store and available for use by any users in that organisation. Users will see them in a special section of the Teams App Store, from the left-hand menu bar will be a link with the tenant’s Organisation Name:
Good To Know: Until you publish the first app, this link won’t be shown so you may not see it today.
The Company App Store looks very much like the main App Store, with the apps displayed in a grid with their title, image and description shown. The Search function includes Company Store apps as well, making it even easier for users to find what they’re looking for:
Admin Visibility & Control
Once apps have been published to the Company Store, admins have visibility and control over them via the Office 365 Admin Centre.
Navigating to Settings > Services & Add-Ons > Microsoft Teams and then opening the ‘Apps’ section, will list the apps currently available in the Company App Store:
From here you can review and un-check any Company Apps which you don’t want to be shown.
Upgrades and Removals
The same Teams admin users that can publish apps can also upgrade or remove them by going to the Company App Store themselves and selecting the ellipsis (not shown to regular users):
Updating is done by providing another manifest package, just like a side-loaded app. The change will automatically be rolled out to all users the next time they use the app. Removing the app package will remove it for all users in the organisation.
There are plenty of use cases where an organisation might want to write a Teams app to enable functionality for their users, but not make this available publicly. The Company App Store model provides a good way for Teams admins to provide a curated space for custom-built apps which only their users can download. Admin features enable the Company App Store to stay up to date and relevant for users. If you are writing apps for your organisation, consider using the Company App Store as your distribution model, and let me know what you think in the comments.