StoreBroker PowerShell Module
September 8, 2025 ยท View on GitHub
Changelog
1.21.24 - (2025/09/03)
Fixes
Author:
1.21.23 - (2024/06/11)
Fixes
Author:
1.21.2 - (2024/02/04)
Fixes
Author:
1.21.1 - (2024/01/31)
Fixes
- Fixes exceptions being seen in PowerShell 7.4+ due to the deprecation of BinaryFormatter. [pr] | [cl]
Author:
1.21.0 - (2020/12/01)
Brings backward some improvements that had been made in the v2 branch. [pr] | [cl]
Features:
- Added support for
msix,msixbundleandmsixuploadfile extensions toNew-SubmissionPackage. - Added support for the
xvcfile extension toNew-SubmissionPackage, (although submission via the v1 API remains untested).
Fixes
-
New-SubmissionPackagenow properly handles packages which contain stubs. -
Silences unnecessary file access errors when testing paths with
Test-Path.
Author:
1.20.1 - (2020/08/27)
Features:
- Added the ability to suppress the telemetry warning shown at the start of each new StoreBroker
session by setting
$global:SBSuppressTelemetryWarning=$true. [pr] | [cl]
Fixes
-
Removed erroneous call to
Get-GitHubConfigurationwhich was causing an ignorable exception initializing the telemetry stack. [pr] | [cl] -
Fixed how
targetPublishDatewas being populated in new configuration files (as it was being converted into the JSON file incorrectly. [pr] | [cl] -
Partner Center changed its URL scheme, and so some of the generated URL's that StoreBroker uses needed to be updated. This also deprecates the ShowFlight switch for Open-DevPortal as there no longer appears to be an equivalent destination in the updated Partner Center. [pr] | [cl]
Authors:
1.20.0 - (2020/08/23)
Features:
-
Ported
Write-InvocationLogfrom thev2branch so that logged output includes the module version number as well as the full input provided to the functions. This will enable easier post-mortem debugging/support. [pr] | [cl] -
Ported
PowerShellForGitHub's work on directly sending telemetry to Application Insights directly, removing the need for three .NET assembly dependencies that we previously had. [pr] | [cl]
Fixes
- Changed how the assemblies for uploading/downloading content to Azure Blob Storage are loaded into the session context. The previous method worked on PS4 and PS5, but not on PS Core. The new method should work across all PowerShell versions. [pr] | [cl]
Authors:
1.19.4 - (2020/08/14)
Fixes:
- Fixes the logic for config generation when
tagornotesForCertificationfrom Partner Center had an encoded character or a URL value. The encoded character wasn't getting re-encoded properly in the generated config, and everything after the//in the URL was being treated as a comment.
Author: @HowardWolosky
1.19.3 - (2020/04/10)
Fixes:
- Updated all of the Partner Center URL's to follow the new location format.
Author: @cartwrightluke
1.19.2 - (2018/12/14)
Fixes:
- Updated the logic for finding the appxbundle/appx manifests to use direct instead of relative paths
More Info: [cl]
Author: @HowardWolosky
1.19.1 - (2018/11/14)
Fixes:
- Updated
Get-NugetPackageDllPathto not report errors whenTest-Pathis unable to access a location. All we care about is knowing if we can access the file or not...the error is just noise.
Author: @HowardWolosky
1.19.0 - (2018/08/30)
Fixes:
- Updated
New-ApplicationFlightSubmissionto leverage the newisMinimalResponse=truewhen cloning submissions in an attempt to reduce the likelihood of getting a500timeout response from the service.
Author: @HowardWolosky
1.18.1 - (2018/08/23)
Fixes:
- Changed how the initial sleep time is determined for retry attempts in order to achieve a better spread amongst clients.
Author: @HowardWolosky
1.18.0 - (2018/08/07)
Fixes:
- Updated
New-ApplicationSubmissionto leverage the newisMinimalResponse=truewhen cloning submissions in an attempt to reduce the likelihood of getting a500timeout response from the service.
- Fixed conflicting AccessToken caching logic between
Get-AccessTokenandStart-SubmissionMonitor. - Fixed issue in
Format-ApplicationSubmissionthat incorrectly checked for valid trailers.
Author: @HowardWolosky
1.17.0 - (2018/06/06)
Fixes:
- Sped up the module for users not using a Proxy.
AccessTokenis now cached for the duration of the console session, and only needs to be refreshed when it expires (which is about every 60 minutes). Previously, the access token was only cached for the duration of the currently executing command, which meant that any succesive interactions at the commandline required a newAccessTokento be acquired.
Author: @HowardWolosky
1.16.4 - (2018/04/23)
Fixes:
- Removed checks validation checks which had prevented some apps from updating gaming options or trailers. The API now enables all apps to use trailers and gaming options, even if their submission object doesn't provide those nodes.
Author: @HowardWolosky
1.16.3 - (2018/04/10)
Fixes:
- There was an error in
Update-ApplicationSubmissionwhere it checked for-UpdateGamingOptionsfor both updating gaming options as well as for updating trailers, where it should have been checking-UpdateTrailersfor the trailers portion.
Author: @HowardWolosky
1.16.2 - (2018/04/06)
Fixes:
- Fixed error (
You cannot call a method on a null-valued expression.) seen during packaging if a trailer element didn't have loc comments/attributes in it. Packaging should now be completely agnostic to whether loc comments/attributes exist or not.
Author: @HowardWolosky
1.16.1 - (2018/02/15)
Fixes:
- Fix (ignorable) exception seen in
ConvertFrom-ExistingSubmissionwhen trying to convert non-existant trailer data for a submission without Advanced Listing support.
Author: @HowardWolosky
1.16.0 - (2018/02/14)
Features:
- Add remaining localizable text fields, so that StoreBroker can now modify every aspect of a subimission (exposed by the API)
- Support added for the following fields:
minimumHardware,shortDescription,shortTitle,sortTitle,voiceTitle,devStudio
Author: @HowardWolosky
1.15.1 - (2018/02/12)
Features:
- Add
-Forceswitch toJoin-SubmissionPackage, enabling you to overwrite an existing file
Author: @HowardWolosky
1.15.0 - (2018/02/07)
Features:
- Add full support for "Advanced Listings"
- Users can now query and update Gaming options and trailers (if supported by their app)
- Additionally adds support for all "additional asset" image types (like Hero images)
More Info: [pr] | [cl] | [issue 1] | [issue 2]
Author: @HowardWolosky
1.14.4 - (2018/02/07)
Fixes:
- Fix exception that occurred when trying to log non-standard server errors
- Fix potential infinite retry loop when an exception like that occurs
Author: @HowardWolosky
1.14.3 - (2018/02/07)
Fixes:
- The loc team's parser expects the loc comments to be directly before the content that the comment refers to.
- Updates
ConvertFrom-Existing*Submissionto place the comments in the right position - Updates the sample PDP xml files.
Author: @HowardWolosky
1.14.2 - (2018/02/05)
Fixes:
- Fix issue with linefeeds for certain messages being sent to
Write-Logafter the changes from1.14.0
Author: @danbelcher-MSFT
1.14.1 - (2018/02/02)
Fixes:
- Change default polling interval in
Start-SubmissionMonitorfrom 1 to 5 minutes (specifiable via new parameter)
Author: @HowardWolosky
1.14.0 - (2018/01/29)
Features:
- Improves our error log reporting by better capturing the specific-line that an exception was originally thrown from
Author: @danbelcher-MSFT
1.13.0 - (2018/01/22)
Features:
- Add auto-retry logic with exponential backoff when API responses fail due to specific, user-configurable error codes
More Info: [pr] | [cl] | [issue]
Author: @HowardWolosky
1.12.4 - (2018/01/16)
Fixes:
- When handling appx metadata, assume
neutralfor architecture if not otherwise specified. Prevents an exception when we try to rename the package
More Info: [pr] | [cl] | [issue]
Author: @HowardWolosky
1.12.3 - (2018/01/03)
Fixes:
- Fixes an exception due to logging only seen if calling
Update-*Submissionand specyfing aSubmissionId
Author: @danbelcher-MSFT
1.12.2 - (2017/12/14)
Fixes:
- We added an exception in
1.12.0if more than one image with the same name was found within a language sub-directory ofImagesRootPath. This was a breaking change however, so this moves that exception to be a warning instead.
Author: @danbelcher-MSFT
1.12.1 - (2017/12/06)
Fixes:
- Re-enable support (lost in
1.12.0) for the undocumented ability to use an empty value forReleasein PDP files (meaning that images can be stored directly inImagesRootPath)
Author: @HowardWolosky
1.12.0 - (2017/12/05)
Fixes:
- Enable "Fallback Language" support for media: You can now use the exact same screenshots for multiple languages, simplifying authoring time and reducing your package size.
More Info: [pr] | [cl] | [issue]
Author: @HowardWolosky
1.11.7 - (2017/12/04)
Fixes:
- Add helpful error message to users calling
Update-*Submissionwith-AddPackagesor-ReplacePackageswhen their StoreBroker payload doesn't have any package information
Author: @HowardWolosky
1.11.6 - (2017/11/30)
Fixes:
- Fix unformatted error message when calling
New-*SubmissionPackagewithout specifyingOutPath
Author: @HowardWolosky
1.11.5 - (2017/11/10)
Fixes:
- Fix how we reference "special folders" (like Desktop, Documents) for users who relocate those folders to a different location
Author: @HowardWolosky
1.11.4 - (2017/11/06)
Fixes:
- Prevent the check for values in global vars from going into
$global:Error
Author: @HowardWolosky
1.11.3 - (2017/11/06)
Fixes:
- Fixes error introduced in
1.11.2when trying to access theRawStreamfor errors
Author: @HowardWolosky
1.11.2 - (2017/10/27)
Fixes:
- Captures to the log the
activityIdreturned by the API on500/Internal Server Errorfailures
More Info: [pr] | [cl] | [issue]
Author: @HowardWolosky
1.11.1 - (2017/10/24)
Fixes:
- Fixes the additional metadata being written as of
1.6.0.
Author: @HowardWolosky
1.11.0 - (2017/10/13)
Features:
- Support relative paths that don't begin with a
.(denoting the current working directory)
More Info: [pr] | [cl] | [issue]
Author: @danbelcher-MSFT
1.10.1 - (2017/10/06)
Fixes:
Write-Log(an internal helper) no longer errors on empty content (which had been causing unhelpful error messages for users providing bad input)
More Info: [pr] | [cl] | [issue]
Author: @HowardWolosky
1.10.0 - (2017/09/29)
Features:
- Add new
$global:SBShouldLogPidoption to capture the ProcessId with each log entry
Author: @HowardWolosky
1.9.0 - (2017/09/19)
Features:
- Packaging performance improvements with
New-*SubmissionPackage
Author: @danbelcher-MSFT
1.8.4 - (2017/09/07)
Fixes:
- Store made
SupportContactInfoa required field. Updating PDP schema
Author: @HowardWolosky
1.8.3 - (2017/07/11)
Fixes:
- Removed the use of "Halt Execution" exection messages, and now exceptions have the same string content as the
Write-Errormessage.
Author: @jowis41
1.8.2 - (2017/06/29)
Fixes:
- Store reduced keyword max length to 30 characters. Updating PDP schema and samples
Author: @HowardWolosky
1.8.1 - (2017/05/02)
Fixes:
Start-SubmissionMonitorcan now return the final submission object retrieved if you provide-PassThru
More Info: [pr] | [cl] | [issue]
Author: @HowardWolosky
1.8.0 - (2017/05/02)
Features:
- Migrated to Azure Storage Data Movement Library for significantly faster uploads
More Info: [pr] | [cl] | [issue]
Author: @HowardWolosky
1.7.1 - (2017/04/19)
Fixes:
- Updated to support publishing module as a NuGet
More Info: [pr] | [cl] | [issue]
Author: @danbelcher-MSFT
1.7.0 - (2017/04/04)
Fixes:
- Added
Open-Storecommand
Author: @HowardWolosky
1.6.1 - (2017/03/28)
Fixes:
- Add support for
.appxuploadfiles
Author: @danbelcher-MSFT
1.6.0 - (2017/03/23)
Fixes:
New-SubmissionPackagenow writes additional package metadata to the generated json file
More Info: [pr] | [cl] | [issue]
Author: @danbelcher-MSFT
1.5.1 - (2017/03/15)
Fixes:
- Fix default NuGet download path for interactive console users
Author: @HowardWolosky
1.5.0 - (2017/03/15)
Features:
- Add
$global:SBWebRequestTimeoutSecoption
Author: @HowardWolosky
1.4.7 - (2017/03/11)
Fixes:
- Fix behavior of
Resolve-UnverifiedPath(added in1.4.4)
Author: @HowardWolosky
1.4.6 - (2017/03/10)
Fixes:
- Update
Invoke-WebRequestto use-UseBaseParsingfor systems where the IE engine is not available
Author: @HowardWolosky
1.4.5 - (2017/03/09)
Fixes:
- Update pricing tier documentation reference
Author: @HowardWolosky
1.4.4 - (2017/03/09)
Fixes:
- Enable relative package paths for uploading/downloading.
Author: @HowardWolosky
1.4.3 - (2017/03/08)
Fixes:
- Fix reported telemetry in
Update-InAppProductSubmission
Author: @HowardWolosky
1.4.2 - (2017/03/08)
Fixes:
- Fixes "Cannot index into a null array" when no headers exist in WebExcepton response
Author: @HowardWolosky
1.4.1 - (2017/03/07)
Fixes:
- Fix
charsetreferenced inInvoke-WebRequest(was usingutf8vsUTF-8)
Author: @HowardWolosky
1.4.0 - (2017/03/07)
Features:
- Log MS-CorrelationId with each API request (aids post-mortem debugging with the Submission API team)
Author: @HowardWolosky
1.3.0 - (2017/03/01)
Features:
- Add Mandatory Update and Package Rollout support
More Info: [pr] | [cl] | [issue]
Author: @HowardWolosky
1.2.2 - (2017/02/20)
Fixes:
- Clarify behavior of Dev Portal with new submissions
Author: @HowardWolosky
1.2.1 - (2017/02/17)
Fixes:
- Properly escape special characters when generating config files
Author: @HowardWolosky
1.2.0 - (2017/02/10)
Features:
- Added support for accessing multiple tenants within a single proxy
Author: @HowardWolosky
1.1.3 - (2017/02/08)
Fixes:
- Static Analysis changes
Author: @HowardWolosky
1.1.2 - (2017/02/01)
Fixes:
- Prevent console messages from being printed if host is non-interactive
More Info: [pr] | [cl] | [issue]
Author: @lisaong
1.1.1 - (2017/01/27)
Fixes:
- Add a logger option to print timestamps in UTC for log traces
More Info: [pr] | [cl] | [issue]
Author: @HowardWolosky
1.1.0 - (2017/01/25)
Features:
- Added support for IAP's (In-App Products)
More Info: [pr] | [cl] }| [issue]
Author: @HowardWolosky
Fixes:
- Stopped exporting
DeepCopy-Object(was causing incompatibility issues)
Author: @danbelcher-MSFT
1.0.1 - (2016/12/08)
Fixes:
- Exported
DeepCopy-Object
Author: @lisaong
1.0.0 - (2016/11/29)
Features:
- Initial public release
More Info: [cl]
Author: @HowardWolosky