The Teams Service App is a white-labeled app you deploy into your customers’ Microsoft 365
tenants. It embeds Messenger inside Microsoft Teams as an iframe, so customers reach your service
team and get real-time updates on their tickets where they already work.
This is the customer-facing app. For your own service team inside your own tenant, use the
Teams Companion App instead.
What it gives your customers
- White-labeled: build as many branded apps as you need, one per customer. See designing a custom Teams app.
- Messenger embedded in Teams as an iframe.
- Updates where they work: customers connect with their service team and follow their threads without leaving Teams.
Before you start
- Finish setting up Messenger and customising the Teams app.
- Deploy to your own team first. It gives your technicians a chance to learn the app and gives you a test environment. If you don’t use Teams internally, test in a sandbox instead.
Once you’ve done this once, budget about three minutes per customer.
Deploy the app
Work in a separate incognito browser session throughout, so you’re certain which Microsoft
Teams tenant you’re signing into.
Find the customer in Thread
In the Thread Admin Panel, open the Clients tab, use the magnifying glass to search for the company, and select it. Choose Microsoft Teams
Go to the App Deployment tab, pick Microsoft Teams, and click Continue. Pick which branded app to deploy
Select the Teams app you want in this customer’s tenant, then Continue. Choose Magic Link or Email Invite
- Magic Link: you have admin access to the customer’s Microsoft 365 tenant. This guide follows it.
- Email Invite: you don’t. Send the link to an administrator in that tenant, who gets an email walking them through the same steps. The recipient does not need Thread access.
Open the magic link and authenticate
Click Copy link, then paste it into a new tab in your incognito session. Sign in with an administrator account in the customer’s tenant and complete MFA.If you aren’t already signed into Thread in that session, the magic link may ask you to sign into Thread first, so you need Thread admin access for this route. The email link doesn’t have that requirement.
Grant the bot's permissions
Confirm it uploaded and installed
Install it for all users
Uploading the app makes it available. These steps put it in front of users.
Find the app in the Teams admin center
Sign in to the Teams admin center and go to Teams apps → Manage apps. Search for your app and open it.Your app’s name is in the Thread Admin Panel under Messenger → Teams Apps → Edit → Teams app name. That’s the string to search for.
Check the app overview
You’ll see the publisher Thread Magic, Inc, the supported surfaces (Microsoft 365, Outlook, Teams), and the published version. Open Users and groups
On the Users and groups tab, find the dropdown labelled “Select to manage who this app is installed” and choose Installs. Choose Everyone, then Apply
Everyone covers all users in the org plus guests and external users.
Pin it with a setup policy
Open Setup policies
In the Teams admin center, go to Teams apps → Setup policies. Select Global (Org-wide default)
Add the app under Installed apps
In the Add installed apps sidebar, search for your Teams app name, click Add, then Add again at the bottom. Pin it
Under Pinned apps, click + Add apps and add the same app. Order it and save
Move the app up or down to control how prominently it appears, then Save.
Microsoft’s publishing process means the app can take up to 24 hours to appear for end users.
We recommend everyone opens the app’s chat tab once before they first need it.
Troubleshooting
The icon isn't appearing correctly after publishing
If the admin account you published with isn’t a fully licensed user in that Teams tenant (common for IT providers) icons don’t render for that account. Licensed end users see your full design, icons included. “Insufficient privileges to complete the operation”
There’s likely a previous Thread service app (or a legacy Chatgenie one) already published in that tenant. Remove any existing published apps from Enterprise applications in Entra ID, then retry.You may need to filter for all application types to see them:The legacy Chatgenie Bot causes the same error even when it’s been deactivated — uninstall both Thread and Chatgenie Bot to fully clear it. “Unexpected error occurred while requesting Microsoft API”
The tenant you’re deploying to has no Microsoft Teams license, or no Teams at all.
Next step
Control who can see it with setup policies for specific users, or remove it if you need to start over.