Export and import canvas app packages
In this article, you'll learn how to export and import canvas apps.
You can export and import canvas apps by using packages. This feature allows you to export an app from one environment and import it to another. When exporting and importing canvas app packages, consider the scenario that best fits the available options. For example, you can save a canvas app locally by using the Save As option when you select the location as This computer. The saved file will have the file name extension .msapp. This file doesn't include any additional components such as flows created with Power Automate and used by the saved app. Although you can use this method to create a copy of an existing app, you can use the recommended export and import feature that includes additional resources with the package. Export and import packages have the file format .zip.
Important
- Canvas app packages can't be used with Dataverse solution packages because of the package incompatibility.
- Canvas apps that have Dataverse dependencies, such as flows, connection references, etc. are not supported for canvas app packages. For ALM capabilities in Microsoft Power Platform environments, use Microsoft Dataverse and solutions instead of the canvas app package export and import. More information: ALM overview
- An App Insights instrumentation key may be present in imported canvas apps. Inspect the instrumentation key after importing an app to ensure it corresponds to the desired App Insights resource.
Resources included in the package
An app can consume different resources. For example, most apps use connections. Other apps might use Power Automate, have custom connectors, or connect by using gateways to on-premises resources. Some apps might also use Dataverse customizations.
The following table explains different resource types, supportability, and import options.
Resource type | Supported | Import options |
---|---|---|
App | Yes, for canvas apps | There are two options to import an app into an environment:
|
Power Automate | Yes | There are two options to import a flow into an environment:
Note: All resources that the flow depends on will also be included in the app package that's exported and will need to be configured when the package is imported. You can also export and import flows by using solutions. More information: Power Automate solutions |
Custom connectors | No | Exporting a custom connector isn't supported. You'll need to re-create the custom connector on the target environment. |
Connections | No | Exporting a connection isn't supported. You'll need to re-create connections on the target environment. |
Dataverse customizations | No | Exporting Dataverse customizations as a part of a canvas app package isn't supported. You'll need to use Dataverse solutions instead. More information: Dataverse solutions |
Gateways | No | You can't export or import gateways. You'll need to re-create gateways on the target environment. |
Permissions required to export a canvas app package
Only the Owner or Co-owner of an app can export a canvas app package. To import an app, the Environment Maker permission is required on the destination environment.
Exporting a canvas app package
To export a canvas app package, select your app, and then select Export Package.
You can change the default Import Action for each resource that your canvas app uses. The default action for resources in a canvas app package, including the app, is Update. You can choose to Create as new during import, to create the resource during the import instead of updating existing resource. However, the import action that you select will become the default action during the app import.
Important
You can only import the exported package. Changes to the exported package file aren't supported.
To export a canvas app package
Sign in to Power Apps.
Select Apps from the left pane.
Select the app that you want to export.
Select Export Package.
Enter the package Name and Description. You can also change the Environment name, if needed.
Select Update to choose the import action for the app package resource.
Select Create as new if the app should be created during import, or Update to update an existing app.
Note
The Import Setup action text changes depending on your new selection.
Repeat the previous step for each additional resource in the app package.
(Optional) Select (comment icon) to insert a comment for each resource.
Select Export to export the package.
The package is downloaded to your browser's default downloads folder.
Importing a canvas app package
To import a canvas app package, select Import canvas app. Be sure to select the correct actions for each app package resource—for example, create a new instance of an app or a flow. You can also read additional information in comments that were entered while the app package was being exported.
If you're updating an existing app or resource, be sure to publish the app so users can see the changes.
Tip
You can quickly confirm selections before importing an app package by viewing the icon changes for each resource type.
Icon | Description |
---|---|
Create as new: A new resource will be created. | |
Import action changed: The import action for the resource has been modified. | |
Action required: You must select an import action before the app package can be imported. |
To import a canvas app package
Sign in to Power Apps.
Select Apps from the left pane.
Select Import canvas app.
Select Upload, and select the app package file that you want to import.
Select the Import Setup action, or for a resource.
If you select Create as new, you can change the resource name.
If you select Update, select an app that you want to update during the import.
Repeat the previous step for each additional resource in the app package.
(Optional) If the app package contains references to connections, you can choose the connection from the available connections list.
Select Select during import to choose the appropriate connection.
Note
- If no connections are available, or the connection you want isn't listed, select Create new to create a new connection in a new browser tab. Ensure that you create the connection for the correct resource type. After creating the connection, return to the import app browser tab and select Refresh list to reflect and choose the newly created connection.
- In some cases, it is necessary to reconfigure the flow association when you import a canvas app with flows. For more information, see Add an existing flow
(Optional) If comments were entered for a resource during the export of the app package, the comment icon will appear filled and the text Comment yes will appear when you hover over it. Select the comment to view it.
Select Import to import the app package.
Important
If you select to Update an existing app, the new changes will be saved as a draft of the app. You'll need to publish the app so users can see the changes.