Microsoft.PowerApps.CLI 1.21.8

The ID prefix of this package has been reserved for one of the owners of this package by Prefix Reserved
dotnet add package Microsoft.PowerApps.CLI --version 1.21.8
NuGet\Install-Package Microsoft.PowerApps.CLI -Version 1.21.8
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Microsoft.PowerApps.CLI" Version="1.21.8" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Microsoft.PowerApps.CLI --version 1.21.8
#r "nuget: Microsoft.PowerApps.CLI, 1.21.8"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install Microsoft.PowerApps.CLI as a Cake Addin
#addin nuget:?package=Microsoft.PowerApps.CLI&version=1.21.8

// Install Microsoft.PowerApps.CLI as a Cake Tool
#tool nuget:?package=Microsoft.PowerApps.CLI&version=1.21.8

Microsoft PowerPlatform CLI is a simple, single-stop, developer command-line interface (CLI) for developing customizations and extensions for Microsoft PowerPlatform. See project site how to install.

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.21.8 2,831 1/31/2023
1.21.5 24,709 12/21/2022
1.21.4 7,596 12/13/2022
1.20.3 20,288 11/17/2022
1.19.4 23,620 10/19/2022
1.19.3 8,775 10/10/2022
1.18.4 17,485 9/15/2022
1.17.5 23,892 8/13/2022
1.17.4 2,219 8/12/2022
1.16.6 31,477 6/23/2022
1.15.3 27,491 5/13/2022
1.14.4 9,899 4/27/2022
1.14.2 12,320 4/7/2022
1.13.6 5,543 3/30/2022
1.13.4 7,661 3/21/2022
1.12.2 19,322 2/17/2022
1.11.8 7,536 2/5/2022
1.11.7 2,158 2/3/2022
1.11.6 1,251 2/2/2022
1.11.4 3,242 1/28/2022
1.11.3 1,773 1/27/2022
1.10.4 36,804 12/10/2021
1.9.9 17,490 10/20/2021
1.9.8 5,948 9/28/2021
1.9.4 19,018 8/19/2021
1.8.6 5,852 7/28/2021
1.8.5 4,162 7/21/2021
1.7.4 10,707 6/28/2021
1.7.3 2,442 6/25/2021
1.7.2 3,702 6/17/2021
1.6.6 5,071 5/21/2021
1.6.5 2,542 5/14/2021
1.6.4 3,427 4/29/2021
1.5.5 5,390 3/2/2021
1.5.4 2,215 2/25/2021
1.5.3 2,816 2/11/2021
1.5.2 2,347 2/4/2021
1.4.4 6,359 11/5/2020
1.3.6 5,500 7/16/2020
1.3.3 1,848 6/16/2020
1.3.1 1,863 5/19/2020
1.2.6 1,948 4/16/2020
1.1.6 4,550 12/5/2019
1.0.6 3,062 9/25/2019
0.4.3 1,470 8/27/2019
0.3.4 1,309 7/30/2019
0.2.71 1,305 6/20/2019
0.2.59 3,304 5/22/2019
0.1.51 7,079 4/23/2019

Please make sure to update your Microsoft Power Platform CLI to the latest version and take advantage of all the latest capabilities by following
If you are a new user please install the Power Platform CLI directly from here:

 - canvas pack|unpack: updated to Microsoft.PowerPlatform.Formulas.Tools to 0.5.8-preview.
 - modelbuilder updated to latest version 1.0.16
 - virtual-agent status: new verb to poll for completion of provisioning status of bots

 - admin assign-group: new verb to complement assign-user
 - auth create: support for Azure Managed Identities
 - canvas pack|unpack: updated to Microsoft.PowerPlatform.Formulas.Tools to 0.5.7-preview.
 - pipeline: new noun to list and start in-product Pipelines
 - virtual-agent: listing of Power VA in environment

 - package: update to latest PD Core
 - update to latest Dataverse Service client lib 1.0.26

 - modelbuilder build: generate C# classes from entities (integrates CrmSvcUtil functionality)

 - auth create: fix to handle client secrets starting with '-' (pp-build-tools #206)
 - solution check: fix incorrect checker endpoint urls for some sovereign clouds (pp-build-tools #211)
 - solution pack|unpack:
   - support PowerFX formulas in .yaml files for Entities
   - unpack will sort RootComponents, MissingDependencies, AppModules to reduce noisy diffs between exports/sync calls
 - solution sync: don't place PCF controls or plugin assemblies that are rebuilt from src via solution add-references

 - QFE:
   - fix for pcf push: <>
   - fix for solution sync: fails to package solution zip with 'Unable to find assembly registration configuration'

 - canvas pack|unpack: updated to Microsoft.PowerPlatform.Formulas.Tools to 0.5.5-preview.
 - paportal: site visibility warning for upload/download verbs
 - solution import: reject with error if deployment settings has Dataverse EnvVars without value
 - tool cmt|pd|prt: install, launch and update WPF apps ConfigMigrationTool, PackageDeployer, PluginRegistrationTool

 - admin assign-user: also support application user
 - application list|install: deprecate parameter `--environment-id` in favor of `--environment` which allows specifying url or id
 - auth create: support for appID/SPN authN via certificate (in addition to client secret)
 - canvas pack|unpack: updated to Microsoft.PowerPlatform.Formulas.Tools to 0.5.3-preview.
 - data import:
   - specify data to import as either directory or zip file with --data param
   - deprecating the now obsolete --dataDirectory param
   - NOTE: pac data import|export is a Windows-only feature for the time being
 - package deploy: pass in runtime settings for package parameters
 - plugin init: strong-name signing for plugin dll is opt-in now
 - PREVIEW: new noun connector with verbs for interacting with Custom Connectors in Power Apps
 - Updated to latest SolutionPackager (

 - macOS/linux: pac CLI now runs on and requires .NET6; get SDK installer from:
   NOTE: when running pac CLI on Apple Silicon ARM (M1/M2) macOS, this version still requires to also have the intel/x64 .NET6 SDK to be installed!!
 - shipping with GA-ed Dataverse Service client (1.0.9)
 - admin: new verbs:
   - list-app-templates: enumerate available D365 application templates
   - assign-user: Assign a user and role to a target environment
 - auth:
   - create verb, new opt. parameter: select a default environment by url, domain name or environmentId; change later with `pac org select`
   - update verb: update name or default env url/id for existing auth profile
 - canvas:
   - create: new verb to generate Power Apps from custom connector
   - updated to Microsoft.PowerPlatform.Formulas.Tools to 0.5.2-preview.
 - data: new module to import/export configuration data, similar to CMT
 - org:
   - select: change pre-selected environment to use for e.g. solution export etc.
   - list now supports filtering
 - package:
   - add-external-package: Adds support for external packages to app packages, including FnO packages.
 - plugin:
   - push: directly update an already registered plugin dll/package in the selected environment
   - init:
     - updated plugin code template with added ILogger, ServiceProvider, OrgSvcFactory accessors
     - added ability to skip plug-in assembly signing which gives plug-in assembly strong name via new --skip-signing switch
 - solution:
   - add-solution-component: adds a solution component to the unmanaged solution in the connected Dataverse environment
   - clone:
     - also packs and unpacks any Canvas apps in (new param --processCanvasApps)
     - allow selecting managed/unmanaged solution
   - sync, currently in preview:
     -updates a previously cloned solution in the local filesystem with latest changes made in Maker studio
     - also packs and unpacks any Canvas apps in (new param --processCanvasApps)
     - allow selecting managed/unmanaged solution
   - check: extended default timeout to 1hr to check even larger/complex solution

 - auth create now supports "Single Sign On":
   - '--kind' parameter is deprecated but still valid to use with its DATAVERSE and ADMIN kind values; defaults now to UNIVERSAL
   - '--url' is now optional, will select default environment in tenant
   - the single sign on authN can be used with all pac CLI nouns
 - canvas: updated Microsoft.PowerPlatform.Formulas.Tools to 0.5.0-preview.
 - admin:
   - added China sovereign cloud admin endpoints
   - fixed --language argument to accetp language ids and suggest valid ids
 - package deploy: fixed error when packages contain .cab files
 - solution check: --path supports now wildcards and globbing
 - solution list: show if solutions are managed or not

 - admin: Added ability to backup, restore and list Microsoft Teams Power Apps environments.
 - admin backup: --notes parameter has been deprecated in both pac CLI and service endpoint
 - canvas: updated Microsoft.PowerPlatform.Formulas.Tools to 0.4.5-preview.
   see also <>
 - package:
   added support for creating and building additional package types, Dataverse For Teams, UNO
   - init: now defaults to creating package projects as new sdk-style projects.
   - add-solution: add prebuilt to package.
   - add-reference: support the new sdk-style project type.
 - plugin: support building Dataverse plugins with dependent assemblies into nuget package
 - solution:
   - export|clone: parameter --targetVersion deprecated (not supported by Dataverse 9.x)
   - pack|unpack verbs: also packs and unpacks any Canvas apps in (new param --processCanvasApps)
   - publish: Added ability to publish customizations asynchronously
   - upgrade: check that an upgradeable solution exists in target environment
 - Updated to latest SolutionPackager ( and Dataverse Service Client (0.6.6) libraries

 - admin create: Added ability to create Microsoft Teams environments
 - admin reset: fix language name parsing for --language
 - canvas: updated Microsoft.PowerPlatform.Formulas.Tools to 0.4.2-preview.
 - pcf init: support for React(virtual) and Fluent UI code components using platform libraries.
 - pcf version | solution version: Fix "gittags" and "filetracking "version update strategies
 - org list: fixed list of environments for authentication profiles in sovereign clouds
 - emit path to pac CLI's diagnostic log when encountering non-recoverable errors

 - admin copy: fix regression when specifying --source-url was rejected with error
 - new 'pac application' noun: list and install packages/application available for the PP tenant to the target environment
 - canvas: updated Microsoft.PowerPlatform.Formulas.Tools to 0.4.0-preview.
   - Added support for first-party PCF Control conversions.
   - Controls and components with conflicting names will no longer overwrite the editor state.
   - Empty test suites will no longer cause issues when roundtripping.
   see also <>
 - paportal download: fix 'missing root pages' error for non-English PowerPages
 - solution pack|unpack: latest SoPa
   - strip XML comments from localizable elements
   - fix AssemblyQualifiedName mapping for plugins

- Device Code Authentication:
 `pac auth create` now supports Device Code Authentication via the `--deviceCode` switch
- pcf init framework argument is now case insensitive
- "none" is no longer available as copy type for copy environment
- Fixed issue where pac pcf init fails with an unrecognized error when using --run-npm-install
- Updated pcf dependencies
- pac auth clear now deletes local user token cache

- Sovereign cloud support authentication support:
 pac admin and pac auth | org | paportal | solution noun/verbs can now interact with sovereign cloud environments
- Interactive OAuth logins now use single appID for all endpoints
- Update to latest SolutionPackager library:
   - localization support for solution aware entities
   - fix handling of CanvasApp where app name and paths to composite files (.msapp, image) differ; file name reference in meta xml is now source of truth
   - fix EntityRelationshipRole/AssociationRoleOrdinal search bug
- pac package init: improved/fixed package template project
- paportal:
   - improve error handling for deleted and missing key
   - adding option to specify locale file format json or yaml
- solution:
   - fix version verb to correctly increment version tuple in solution.xml (preserving version tupleness)
   - add additional parameters (--solutionUri, --excludedFiles) to check verb

- pac auth create: fixed interactive login for --kind admin on .NET Core 5 (linux, macOS)
- pac canvas pack: updated to latest library with fix for issue
- pac org list: enumerate reachable Dataverse environments, using global discovery service
- pac paportal: added missing attributes adx_attachfileacceptextensions, adx_attachfilesaveoption
- pac solution add-license: fixed reported unhandled exception errors
- added: pac solution delete
- added: pac solution online-version to update version in connected Dataverse environment
- pac solution unpack
 - fixed issue with resource localization incorrectly using Lcid ID's when not requested
 - fixed issue with --allowDelete causing pac to hang.
 - fixed issue with --useUnmanagedFileForMissingManaged that caused the setting to be ignored.
 - fixed issue with --useLcid that caused the setting to be ignored.
- pac solution pack   - plugin references in solution will be remapped to full strong name (type/version/pubKeyToken) of assembly;
     --disablePluginRemap to disable plugin type name remapping

- pac solution pack|unpack: add support for modern SiteMap
- pac admin module, all verbs: new parameter --environment that allows to specify url or env ID as its value (deprecating --environment-id and --url)
- pac CLI for Windows now runs on .NET 4.8
- new verb: pac solution delete
- Updated MSAL to 4.35
- pac solution unpack: don't delete existing files (unless forced with --AllowDeletes)

- paportal module:
 - Populate the deployment profile after reading entity data from files
 - Generate unique display names on encoded value
 - Create annotations with name same as webfiles

- pac auth create --kind Dataverse: interactive login for username/password is now also supported on macOS and linux
- pac auth create: renamed --kind to Dataverse (older CDS kind name is still accepted)
- pac canvas: updated to latest PowerApps-Language-Tooling library 0.3.8-preview
- pac plugin init now generates strong-name key without sn.exe from VisualStudio
- pac solution create-settings to extract connection references & environment variables from solution
- pac solution pack|unpack: SolutionPackager is now integrated into pac CLI and works on all 3 supported OS;
 SoPa no longer needs to be installed via separate nuget package
- all verb parameters that accept file or folder paths now have consistent handling of absolute and relative paths
- Fixes:
 - pac admin list properly paginates all environments in tenant
 - pac package deploy: report parse error when reading deployment config file
 - pac paportal: Fixing website id not found error
 - pac pcf init & pac plugin init also support optional --outputDirectory
 - pac solution list now supports Dataverse authentication profile with AppID/SPN too
 - pac solution (all verbs): properly surface the returned service side error to user (in raw form)

- pac admin status no longer stumbles over no longer existing environments
- pac canvas using latest MS.PP.Formulas.Tools 0.3.6-preview library
- pac paportal improvements:
 - Upload of portal data running in parallel threads
 - Support a tag based deployment profile for upload
 - Replace all string based primary key references with schema based primary key.
 - Improved error reporting during parallel execution and when encountering YAML errors
- pac pcf init also runs npm install to get the new PCF project fully initialized
- pac solution check to submit to PowerPlatform Checker endpoint
- pac solution version applies version to solution.xml found
- rename to "Power Platform CLI" in user facing friendly names; the executable still remains named as 'pac.exe';
 no rename planned for nuget package names
- Updated SolutionPackager with localization support for solution aware entities

- new module paportal to list, download and upload PA Portals
- new module canvas to pack and unpack PowerApps .msapp files
- added new verb: pac solution add-license
- pac package deploy correctly handles relative paths for --package argument
- fix error when trying to delete expired auth profile (pac auth delete)

- fix broken Dataverse authentication when using appId/tenantId/clientSecret
- new retry logic for calls to Dataverse API
- cross platform support for project templates
- update to latest Microsoft.PowerPlatform.Dataverse.Client 0.4.11
- reintroduced --convert-to-managed argument for "solution import" command

- New and updated CLI modules and commands:
 - "pac admin": PAC Admin module to work with your Power Platform Admin account. You can create, backup, reset, list, restore, copy and delete environments.

- PCF ControlManifest versioning
 - can now accept an argument for specifying filename for file tracking strategy
 - can accept path as an argument
- Localization updates for CLI
- New and updated CLI modules and commands:
 - "pac package" CLI support to create, build and push package
 - "pac auth create" now supports username/password without interactive prompt
 - "pac auth create" now supports SPN authentication
 - Increased character limit for auth profile name from 12 to 30
 - "pac solution import/export" now have support for async
 - "pac solution upgrade" CLI support to upgrade the solution
 - "pac solution list" CLI support to list all solutions in a CDS organization
 - "pac solution version" CLI support to increment patch version for solutions
- CLI now has refreshed icons

- PCF ControlManifest versioning:
 - persist patch version strategies using gittags, tracking file
 - can push gittags patch versions using PAT

- PCF ControlManifest versioning can now automatically increment patch version using git tags to store previous versions:
   pac pcf version --strategy gittags

- New verb to modify PCF control’s patch version:
   pac pcf version --patchVersion 4
- update to latest CrmServiceClient (Microsoft.CrmSdk.XrmTooling.CoreAssembly)

- update to latest CRM SDK versions

- New and updated CLI modules and commands:
 - "pac plugin init": create a new CDS plugin class library from a template
 - "pac solution add-reference": you can now add references to plugin projects created using "pac plugin init." When your solution (cdsproj) is built, it will also build your plugin projects and copy the output DLLs into your solution zip.
 - "pac solution clone": create a solution project based on an existing solution in an organization
- CLI is now localized in the 44 languages supported by Dynamics365/CDS

- "pac solution init" will now convert publisher prefix to lower case
- Argument short names now require only a single dash
- Projects that share the same name as the cdsproj cannot be added as a referenced project
- Various bug fixes for "pac auth" commands
- Various bug fixes related to project paths that include whitespace
- "pac pcf push" command will no longer attempt to delete the temporary solution

- New CLI modules and commands:
 - "pac auth": supports managing OAuth profiles to authenticate with CDS organizations
 - "pac pcf push": import a PCF control into a CDS organization
 - "pac org": first CDS organization command; for now, only "who-am-I" is supported
- PCF project template now uses a minimum version of 1.2.0 for @types/powerapps-component-framework

- CLI arguments have optional shorted aliases
- Unified naming and spelling of parameters, e.g. --publisher-prefix and --publisher-name
- Consistent version showing for CLI and its nuget packages

- PowerApps CLI and PCF are localized for: English, French, German, Japanese, Spanish
- Updated MSI registry path to: Software\Microsoft\PowerApps CLI\Installed
- Improved error messaging in the CLI launcher
- Updated help descriptions

- PCF build output enhancements include:
 - Colorization
 - Timestamps
 - Formatting updates
- PCF build now produces formal error codes in conjunction with error messages
- A .gitignore file is added for all newly created CDS solution projects
- We are also enabling clean target for Solution projects

- initial set of capabilities for custom control development using the PowerApps Component Framework (PCF).