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

  • 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
  • Canvas app packages can't be used with Dataverse solution packages because of the package incompatibility.

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:
  • Create new: The app will be created as a new app in the environment where the package is imported.
  • Update: The app already exists in the environment and will be updated when this package is imported.
Power Automate Yes There are two options to import a flow into an environment:
  • Create new: The flow will be created as a new flow in the environment where the package is imported.
  • Update: The flow already exists in the environment and will be updated when this package is imported.

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.

Export package GIF demo with example export walkthrough

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 the exported package file aren't supported.

To export a canvas app package

  1. Sign in to Power Apps.

  2. Select Apps from the left pane.

  3. Select the app that you want to export.

  4. Select Export Package.

    Select export

  5. Enter the package Name and Description. You can also change the Environment name, if needed.

    Review package details

  6. Select Update to choose the import action for the app package resource.

    Configure package content action

  7. Select Create as new if the app should be created during import, or Update to update an existing app.

    Import setup

    Note

    The Import Setup action text changes depending on your new selection.

  8. Repeat the previous step for each additional resource in the app package.

  9. (Optional) Select Import comment icon (comment icon) to insert a comment for each resource.

    Import comment

  10. 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.

Import package GIF demo with example export walkthrough

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 Create as new: A new resource will be created.
Import action changed Import action changed: The import action for the resource has been modified.
Action required Action required: You must select an import action before the app package can be imported.

To import a canvas app package

  1. Sign in to Power Apps.

  2. Select Apps from the left pane.

  3. Select Import canvas app.

    Select import

  4. Select Upload, and select the app package file that you want to import.

  5. Select the Import Setup action, or Wrench icon for a resource.

    Select import action

    • If you select Create as new, you can change the resource name.

      Select import action - resource name

    • If you select Update, select an app that you want to update during the import.

      Select import action - update

  6. Repeat the previous step for each additional resource in the app package.

  7. (Optional) If the app package contains references to connections, you can choose the connection from the available connections list.

    Select connection during import

    Select Select during import to choose the appropriate connection.

    Select 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.

  8. (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.

    Comment available to view

  9. 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.

See also