Teams app deployment

Teams app deployment

This article outlines the steps required to install the Teams App.

Initial App Deployment

1. Register an App: In Teamsware Studio on the Publish tab -> App Deployment -> click on the 'Publish' button. In the publish wizard make sure the 'App Deployment' type is select


Specify the App title and select the Package version you want to publish.

The Title of the Teams App will be 'TeamsApp_<AppTitle>_v1.0.0.0'



Click on the Next button to redirect to the Deployments tab where you can select: Standard Deployment or Selective deployment. The Standard Deployment option is selected by default, and it deploys all solution elements in the package to the target site.



The Summary step includes information about the App title, package version, deployment type with logs of what will be included in the deployment.




2. After the App is registered you can download the Teams App Package in the right panel. 



In the Teams App Package dialog, you can either download the Teams app without demo URL or specify your own demo URL. If a demo URL is provided, the Demo tab will be available within the team






After downloading the .zip archive, extract its content. The archive includes the following files:

  • readme.txt - instructions and information about the package
  • teamsapp_<apptitle>.zip - Teams App Package ready for upload to Developer Portal
  • update-demo-actions.json - a configuration file for update demo request status

Note: Before you begin, ensure the following:
- You have administrative access to the Teams Developer Portal (https://dev.teams.microsoft.com/)
- You have administrative access to the Teams Admin Center (https://admin.teams.microsoft.com/)
- Allow users to upload custom apps in your organization. For more information read article https://learn.microsoft.com/en-us/microsoftteams/teams-custom-app-policies-and-settings 
- You have Teams License

Import Teams App package to Developer Portal

Redirect to Developer Portal for uploading app. Click on Import app button




  • When app is uploaded, go to Basic Information and update the App name, Description, Version, Developer Information, App URLs, and Microsoft Partner ID as needed.


  • In the Branding section you can update the Color Icon, Outline Icon, and Accent Color.



  • Go to Languages (optional). Add additional languages and specify schema values for names, descriptions and tab names.
    Note: By default, tabs content supports next languages: English (en), German (de), French (fr), Spanish (es), Dutch (nl), Slovak (sk), Swedish (sv)
  • Go to App Validation and run a validation check to ensure the app meets publishing requirements.



  • Use Preview in Teams button to test App with your current organization.
  • Go to Publish to Org to publish the app within your organization.
  • Go to Publish to Store to begin the process of publishing your app to the Teams App Store (optional)

Publish Teams App to Microsoft Teams admin center

Redirect to Microsoft Teams admin center. Search for you teams app. Open it and click Publish. It may take some time before the status is updated.




Open Microsoft Teams app to add an app

Go to Apps -> Built for your org. Select published app and click on Add



Once you open added app you will be redirected to Home page with two options:

  • Install your app: Set up your app for your organization. This option is available only for Administrators
  • Request demo: Request a free demo for testing. This option is available to everyone if the Teams app was downloaded with a demo URL


Teams Demo request flow

Demo tab shows configured demo request form.

TeamsDemo.png




















Demo request
    1. The Demo Request page renders inside a Teams Tab within an iframe, including an additional parameter (e.g. demoId) in the URL. For example:
Note: Make sure the header of the page contains "Content-Security-Policy frame-ancestors 'self'" to avoid error during showing page in iframe.
    2. Collect and pass the demoId parameter to your demo request deployment flow.
    3. You can use actions from UpdateDemoActions.json to update the demo request status in Teams, providing users with real-time status updates. For example, import it into the Triggered action:
        - [[DemoId]] and [[DemoSiteUrl]] -> placeholders of list fields to store Demo information required to update Demo request.
        - Place the "Demo Request - In Progress" action before the demo deployment starts. (The demoId should be collected from the Demo Request page and passed to this action.)
        - Place the "Demo Request - Completed" action after the demo deployment is finished. (The demoId should be collected from the Demo Request page and passed to this action. DemoSiteUrl refers to the demo environment where the solution is deployed.)
    4. To enhance the user experience, your Demo Request page can send a post message to update the demo request status immediately and show progress updates. For example:
    ###CODE_BLOCK###
    var msg = "DEMO_INPROGRESS$$DEMO_ID";
    window.parent.postMessage(msg, "*");
  ###CODE_BLOCK###
       where DEMO_ID is value of demoId parameter
 

Teams Installation flow

When you go to the Installation tab, you will be required to log in with your Teams account to continue installation.

TeamsLogin.png



















Once logged in, follow the steps to complete the installation of your app:
Step 1 - Trust the Teamsware App Deployment Connector. This should be done by tenant SharePoint Administrator once per tenant. 

InstallationStep1.png

















Step 2 - Specify SharePoint site: This is needed to install an app on the specified site

InstallationStep2.png

















Step 3 - Assign Permissions: To assign Full Control permission in the site collection you can run the script using PnP PowerShell.
Import-Module PnP.PowerShell
Connect-PnPOnline -Url 'https://m365x46891638.sharepoint.com/sites/wineseller' -Interactive -ClientId <client id of your Microsoft Entra ID Application Registration>
Grant-PnPAzureADAppSitePermission -AppId 'f64d6c09-62be-4393-9ef8-45c581fc14e2' -DisplayName 'Teamsware App Deployment Connector' -Site 'https://m365x46891638.sharepoint.com/sites/wineseller' -Permissions fullcontrol
Read more about authentication for PnP PowerShell https://pnp.github.io/powershell/articles/authentication.html

InstallationStep3.png




















Step 4 - Create site collection App Catalog: Run the following PowerShell script in order to create site collection App Catalog if it is not enabled using PnP PowerShell.
Import-Module PnP.PowerShell
Connect-PnPOnline -Url 'https://m365x46891638.sharepoint.com/sites/wineseller' -Interactive -ClientId <client id of your Microsoft Entra ID Application Registration>
Add-PnPSiteCollectionAppCatalog -Site 'https://m365x46891638.sharepoint.com/sites/wineseller'

Step4AppCatalog.png




















Step 5 - Deploy the solution to the site.

InstallationStep5.png



















Wait until the solution is installed

InstallYourApp.png













Step 6 - Trust additional connectors (optional): If your package contains actions that need to approve specific connectors you have to trust them to finish deployment properly.

InstallationStep6.png

 















Update Teams App deployment

If you make some changes to your solution after the initial deployment, you have to create a new package and then select the deployment definition in the Publish section in Teamsware Studio.

TeamAppUpdateDeployment.png

















Click the Update button to open the wizard that guides you through updating a service. Additionally, you can configure different deployment configurations for Initial and Update deployments when updating Teamsware App registration. This means every new deployment on this service will use configuration from Initial deployments, while every update will use the configuration from the Update deployments.

AppRegistrationUpdateStandard.png



















This will not automatically update any deployments, you have now 2 options to update them separately:

- Select a deployment in Teamsware Studio and click on Update in the right panel

TeamsAppUpdateSite.png














- Navigate to Teams app in Microsoft Teams -> open Installation tab and click on the Update your app button. The new version should be recognized. 

TeamsAppMicrosoftUpdate.png
















    • Related Articles

    • Teamsware Studio API Deployment

      Note: To use the Teamsware API deployment check your tenant settings and allow custom app authentication as described here What is API deployment API deployment is a type of publishing, that allows starting deployment process with HTTP call ...
    • Selective Deployment

      Selective Deployment feature Package & Publish is a SharePoint provisioning feature provided by Teamsware Studio that allows you to deliver your custom SharePoint solution from development to production. With this feature, you can package lists and ...
    • Teamsware Add-in deployment - 'Add-in is not trusted' error when navigating to home page

      This article helps to resolve an issue with "Add-in is not trusted, you should trust it before you can use it" when navigating to installed add-in home page. Mostly this message appears for new tenants. It means, that add-in you want to use to deploy ...
    • M365 Changelog: (Updated) SharePoint admin control for App registration / update

      MC660075 - (Updated) SharePoint admin control for App registration / update News summary This is an enhancement to the security measures for administrative governance that modifies the default procedures for SharePoint app registration via ...
    • Teamsware Studio Update 22.05.2025

      New features Teams App Deployment Added Teams App deployment. For more information read Teams App deployment article Expand/Collapse section action Added Expand/Collapse section action to Modern Forms Bug fixes & improvements Modern Forms Version ...