Import Windows Devices for AutoPilot in Microsoft Endpoint Manager

Benoit LecoursIntune13 Comments

Windows Autopilot is a solution designed that allows you to set up and pre-configure Windows devices for your environment using Azure and Endpoint Manager. The goal of Autopilot is to reduce the OS deployment complexity. If done correctly, a user logs to an out-of-box computer, logs on his computer with his ADD user account, and applications and configurations get deployed. All that with minimum infrastructure requirements. If you are new to Autopilot, we have a post that describes every step you need to do to get started.

Autopilot has its flaws but it’s improving very fast. One of those flaws was that device importation was made from the Windows Store for Business or the Microsoft Partner Center. Those days are over since you can now import your device directly from Endpoint Manager.

Endpoint Manager Autopilot device import

  • Launch Endpoint Manager
  • Select Device / Enroll Devices / Windows enrollment
  • In the Windows Autopilot Deployment Program pane, select Devices
  • Click on Import at the top

From there, you need to select a .CSV file. It’s not possible to import a single device manually.

As shown in the portal, the CSV file has some formatting requirements :

The header and line format must look like this:

  • <serialNumber>,<ProductID>,<hardwareHash>
  • Can have up to 500 rows in the file

This means that you need the Serial Number, Windows Product ID, Hardware Hash separated by a comma. You cannot have more than 500 rows/devices in the CSV.

To get this information for a specific machine, there are a couple of ways :

PowerShell – Endpoint Manager Autopilot device import

There is a script that is already available in Windows to get this information. As long as that device is running a supported version of Windows. You can use this PowerShell script. The required fields will be populated in a CSV file, ready to import into Endpoint Manager

From a Windows 10 1703+ computer

  • Start Windows PowerShell as an Administrator
  • Run the following command: Install-Script -Name Get-WindowsAutoPilotInfo
Microsoft Intune Autopilot device import
  • This action places the script into the folder C:\Program Files\WindowsPowerShell\Scripts
  • Run the script : Get-WindowsAutoPilotInfo -Outputfile C:\temp\SCD.csv
  • The script will output the result in the C:\temp\SCD.csv file
  • Open the CSV file, it should look like this :

SCCM / Configuration Manager

If the device is managed by SCCM, you can extract the SerialNumber, ProductID and hardwareHash from a built-in report. All you have to do is to Export the data from the report to a CSV file.

  • Go to the Monitoring / Reporting /Reports, / Hardware – General
  • Run the report, Windows Autopilot Device Information
Endpoint Manager Autopilot device import
  • Select the Export icon, and choose the CSV (comma-delimited) option
Endpoint Manager Autopilot device import
  • The extracted CSV file must be edited before importing since the file header is incorrect.

Import the file

Once your CSV file is ready, head back to the Endpoint Manager Portal, select your CSV file and select Import at the bottom

  • You will receive an Import notification. It will take about 5-10 minutes
Endpoint Manager Autopilot device import
  • Device is imported
Endpoint Manager Autopilot device import

It will take a moment to show in your device list but will eventually appear. The device will also be visible from the Windows Store for Business portal. The device is now imported in Endpoint Manager and ready for Autopilot deployment.

13 Comments on “Import Windows Devices for AutoPilot in Microsoft Endpoint Manager”

  1. Pingback: Endpoint Manager Newsletter – 5th August 2022 – Andrew Taylor

  2. I have found that when running this that no “Windows Product ID” is generated.
    i get the Hash and the Serial no issues though
    is there a change required to the script for this?

    1. update script with :
      >powershell “(Get-WmiObject -query ‘select * from SoftwareLicensingService’).OA3xOriginalProductKey”
      this gets OEM key

  3. Is the hardware hash going to be the same for all identical models? If I have to get the machine out of the box, run a powershell script and reset before I can do the automation, it seems such a waste of time…

  4. Unfortunately this failed for me. I receive an ‘Internal Error, ERROR CODE: 640 – StorageError’

    This was after the Importer identified 1 correctly formatted row. So I’m not sure what is going on there..

    1. I got the same error message. In my case, my account has custom permissions in Intune. The import worked when I ran it using the Intune Admin account. Not sure what permission is required to import Window devices though.

  5. The need to modify the file was recently removed – Intune now uses the same format as the Microsoft Store for Business, so you can directly upload a CSV created by the Get-WindowsAutoPilotInfo script.

Leave a Reply