Sample module to manage AutoPilot devices using the Intune Graph API

Installation Options

Copy and Paste the following command to install this package using PowerShellGet More Info

Install-Module -Name WindowsAutoPilotIntune -RequiredVersion 5.0

Copy and Paste the following command to install this package using Microsoft.PowerShell.PSResourceGet More Info

Install-PSResource -Name WindowsAutoPilotIntune -Version 5.0

You can deploy this package directly to Azure Automation. Note that deploying packages with dependencies will deploy all the dependencies to Azure Automation. Learn More

Manually download the .nupkg file to your system's default download location. Note that the file won't be unpacked, and won't include any dependencies. Learn More



(c) 2020 Microsoft. All rights reserved.

Package Details


  • Michael Niehaus


BoolToString Connect-MSGraphApp Get-AutopilotDevice Set-AutopilotDevice Remove-AutopilotDevice Get-AutopilotImportedDevice Add-AutopilotImportedDevice Remove-AutopilotImportedDevice Get-AutopilotProfile Get-AutopilotProfileAssignedDevice ConvertTo-AutopilotConfigurationJSON Set-AutopilotProfile New-AutopilotProfile Remove-AutopilotProfile Get-AutopilotProfileAssignments Remove-AutopilotProfileAssignments Set-AutopilotProfileAssignedGroup Get-EnrollmentStatusPage Add-EnrollmentStatusPage Set-EnrollmentStatusPage Remove-EnrollmentStatusPage Invoke-AutopilotSync Get-AutopilotSyncInfo Import-AutopilotCSV Get-AutopilotEvent


Release Notes

Version 5.0: Replaced deprecated orderIdentifier parameter with groupTag parameter.
Version 4.8: Added Connect-MSGraphApp wrapper to simplify app-based authentication.
Version 4.7: Fixed a bug.
Version 4.6: Added Get-AutopilotSyncInfo cmdlet.
Version 4.5: Enabled skip connectivity check option for Hybrid Azure AD Join VPN support.
Version 4.4: Removed Set-AutoPilotDeviceAssignedUser function (workaround no longer needed). Added logic to JSON conversion function.
Version 4.3: Re-added Set-AutoPilotDeviceAssignedUser function to address white glove user assignment issue (temporary workaround)
Version 4.2: Bug fix for not-yet-supported property
Version 4.0: Reworked *-AutopilotProfile functions, added new Get-AutopilotEvent function, added verbose logging to all functions
Version 3.9: Removed logic to install and load dependent modules and instead declared them in the module manifest, for compatibility with Azure Automation
Version 3.8: Replaced Set-AutopilotDeviceAssignedUser with more-capable Set-AutopilotDevice method
Version 3.7: Fixed but with serial number filter on Get-AutopilotDevice
Version 3.6: Added 256 to the default CloudAssignedOobeConfig value to suppress the check for Windows feature updates
Version 3.5: Fixed HttpMethod values for DELETE and PATCH to be upper-case
Version 3.4: Fixed a bug
Version 3.3: Removed duplicate cmdlet
Version 3.2: Added Get-AutopilotProfileAssignedDevices cmdlet to get the list of devices with a specific profile
Version 3.1: Fixed bugs, added expand logic for Autopilot devices
Version 3.0: Modified script to use the Microsoft.Graph.Intune module, added new functions from Damien Van Robaeys
Version 2.7: Added support for using GroupTag instead of OrderID for uploading batches of devices
Version 2.6: Added the ability to read the OrderID value from a CSV file; fixed "Waiting for 1 of" message
Version 2.5: Modified ConvertTo-AutopilotConfigurationJSON to set ZtdCorrelationId to the ID of the profile; added Set-AutoPilotDeviceAssignedUser function (thanks to Oliver Kieselbach)
Version 2.4: Modified ConvertTo-AutopilotConfigurationJSON to properly support available AAD user-driven options
Version 2.3: Added new Invoke-AutopilotSync method (equivalent to clicking "Sync" in the Intune console)
Version 2.2: Added pagination support (thanks to Oliver Kieselbach)
Version 2.1: Fixed syntax issue in connect method
Version 2.0: Added cmdlet help (and fixed the mistake of using 1.41 as a verion, since 1.41 is considered > 1.5 because 41 is greater than 5)
Version 1.4: Added functions to delete a device, to list Autopilot profiles, and to convert Autopilot profiles into JSON.
Version 1.3: Fixed module manifest to export functions


Version History

Version Downloads Last updated
5.6 3,887,661 7/7/2023
5.5 109 7/7/2023
5.4 38,330 7/6/2023
5.3 511,389 6/12/2023
5.2 27,621 6/12/2023
5.1 21,811 6/10/2023
5.0 (current version) 5,729,072 3/24/2021
4.8 380,865 7/19/2020
2.7 13,939 5/30/2019
Show less