Get-WtWin32Apps
Get all apps from Intune packaged by WinTuner. This is an authenticated command, so specify the parameters to authenticate.
Basic usage
Get-WtWin32Apps [-Superseded <Boolean>] [-Superseding <Boolean>] [-Update <Boolean>] <AuthenticationParameters> [-ProgressAction <ActionPreference>] [<CommonParameters>]
Parameter | Req. | Sample | Description |
---|---|---|---|
-Superseded | $true / $false | Filter on superseded apps. | |
-Superseding | $true / $false | Filter on superseding apps. | |
-Update | $true / $false | Filter on apps that need updating. | |
<Authentication> | ✅ | The authentication parameters. |
Get apps that can be updated and are not superseded
Get-WtWin32Apps -Username admin@contoso.onmicrosoft.com -Superseded $false -Update $true | Format-table -Property PackageId, CurrentVersion, SupersededAppCount, SuperSedingAppCount
Update all and supersede the old ones
You can also use this command in your pipeline to package all the new versions and publish them to Intune. This can be done in one line, for readability the command is split into multiple lines.
$username = "admin@contoso.omnicrosoft.com"
$rootPackageFolder = "C:\packages"
$appsWithUpdates = Get-WtWin32Apps -Username $username -Superseded $false -Update $true
$appsWithUpdates | Format-table -Property PackageId, CurrentVersion, SupersededAppCount, SuperSedingAppCount
foreach ($app in $appsWithUpdates) { New-WtWingetPackage -PackageId $($app.PackageId) -PackageFolder $rootPackageFolder -Version $($app.LatestVersion) | Deploy-WtWin32App -Username $username -GraphId $($app.GraphId) }
This example combines the Get-WtWin32Apps
command with the New-WtWingetPackage
and Deploy-WtWin32App
commandlets to update all apps that have an update available, all apps will be superseded by the new version (with auto update enabled if assigned as available).
Get all apps there are superseded
$username = "admin@contoso.onmicrosoft.com"
$oldApps = Get-WtWin32Apps -Username $username -Superseded $true
$oldApps | Format-table -Property PackageId, CurrentVersion, SupersededAppCount, SuperSedingAppCount
# lets delete all the old apps
foreach ($app in $oldApps) { Remove-WtWin32App -Username $username -AppId $app.GraphId }
This example combines this command with the Remove-WtWin32App command to remove all apps that are superseded.
Outputs
And the output of this command is a WtWin32App object, which contains the following properties:
Property | Description |
---|---|
PackageId | The unique identifier of the package in the WinGet repository. |
Name | Display name of the app. |
CurrentVersion | The version of the WinGet package to package. |
GraphId | The ID of the app in this tenant. |
SupersededAppCount | The total number of apps this app is directly or indirectly superseded by. |
SupersedingAppCount | The total number of apps this app directly or indirectly supersedes. |
LatestVersion | The latest version of the WinGet package to package. |
IsUpdateAvailable | Does the current version match the latest version |