diff --git a/windows/client-management/mdm/windowslicensing-csp.md b/windows/client-management/mdm/windowslicensing-csp.md
index 1b912a214a..6f7f5e169e 100644
--- a/windows/client-management/mdm/windowslicensing-csp.md
+++ b/windows/client-management/mdm/windowslicensing-csp.md
@@ -1,226 +1,131 @@
---
title: WindowsLicensing CSP
-description: Learn how the WindowsLicensing configuration service provider (CSP) is designed for licensing related management scenarios.
-ms.reviewer:
+description: Learn more about the WindowsLicensing CSP.
+author: vinaypamnani-msft
manager: aaroncz
ms.author: vinpa
-ms.topic: article
+ms.date: 02/17/2023
+ms.localizationpriority: medium
ms.prod: windows-client
ms.technology: itpro-manage
-author: vinaypamnani-msft
-ms.date: 08/15/2018
+ms.topic: reference
---
+
+
+
# WindowsLicensing CSP
-The table below shows the applicability of Windows:
-
-|Edition|Windows 10|Windows 11|
-|--- |--- |--- |
-|Home|Yes|Yes|
-|Pro|Yes|Yes|
-|Windows SE|No|Yes|
-|Business|Yes|Yes|
-|Enterprise|Yes|Yes|
-|Education|Yes|Yes|
-
-> [!WARNING]
-> Some information relates to prereleased product which may be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
-
-The WindowsLicensing configuration service provider is designed for licensing related management scenarios. Currently the scope is limited to edition upgrades of Windows 10 client devices, such as Windows 10 Pro to Windows 10 Enterprise. In addition, this CSP provides the capability to activate or change the product key of Windows 10 client devices.
+
+
+The WindowsLicensing configuration service provider is designed for licensing related management scenarios.
+
+
The following example shows the WindowsLicensing configuration service provider in tree format.
-```console
-./Vendor/MSFT
-WindowsLicensing
-----UpgradeEditionWithProductKey
-----ChangeProductKey
-----Edition
-----Status
-----LicenseKeyType
-----CheckApplicability
-----ChangeProductKey (Added in Windows 10, version 1703)
-----Subscriptions (Added in Windows 10, version 1607)
---------SubscriptionId (Added in Windows 10, version 1607)
-------------Status (Added in Windows 10, version 1607)
-------------Name (Added in Windows 10, version 1607)
-----SMode (Added in Windows 10, version 1809)
---------SwitchingPolicy (Added in Windows 10, version 1809)
---------SwitchFromSMode (Added in Windows 10, version 1809)
---------Status (Added in Windows 10, version 1809)
+```text
+./Vendor/MSFT/WindowsLicensing
+--- ChangeProductKey
+--- CheckApplicability
+--- DeviceLicensingService
+------ AcquireDeviceLicense
+------ DeviceLicensingLastError
+------ DeviceLicensingLastErrorDescription
+------ DeviceLicensingStatus
+------ LicenseType
+------ RemoveDeviceLicense
+--- Edition
+--- LicenseKeyType
+--- SMode
+------ Status
+------ SwitchFromSMode
+------ SwitchingPolicy
+--- Status
+--- Subscriptions
+------ {SubscriptionId}
+--------- Name
+--------- Status
+--- UpgradeEditionWithLicense
+--- UpgradeEditionWithProductKey
```
-
-**./Device/Vendor/MSFT/WindowsLicensing**
-This node is the root node for the WindowsLicensing configuration service provider.
-
-The supported operation is Get.
-
-**UpgradeEditionWithProductKey**
-Enters a product key for an edition upgrade of Windows 10 desktop devices.
-
-> [!NOTE]
-> This upgrade process requires a system restart.
-
-The date type is a chr.
-
-The supported operation is Exec.
-
-When a product key is pushed from an MDM server to a user's device, **changepk.exe** runs using the product key. After it completes, a notification is shown to the user that a new edition of Windows 10 is available. The user can then restart their system manually or after two hours, the device will restart automatically to complete the upgrade. The user will receive a reminder notification 10 minutes before the automatic restart.
-
-After the device restarts, the edition upgrade process completes. The user will receive a notification of the successful upgrade.
-
-> [!IMPORTANT]
-> If another policy requires a system reboot that occurs when **changepk.exe** is running, the edition upgrade will fail.
-
-If a product key is entered in a provisioning package and the user begins installation of the package, a notification is shown to the user that their system will restart to complete the package installation. Upon explicit consent from the user to proceed, the package continues installation and **changepk.exe** runs using the product key. The user will receive a reminder notification 30 seconds before the automatic restart.
-
-After the device restarts, the edition upgrade process completes. The user will receive a notification of the successful upgrade.
-
-This node can also be used to activate or change a product key on a particular edition of Windows 10 desktop device by entering a product key. Activation or changing a product key doesn't require a reboot and is a silent process for the user.
-
-> [!IMPORTANT]
-> The product key entered must be 29 characters (that is, it should include dashes), otherwise the activation, edition upgrade, or product key change on Windows 10 desktop devices will fail. The product key is acquired from Microsoft Volume Licensing Service Center. Your organization must have a Volume Licensing contract with Microsoft to access the portal.
-
-The following are valid edition upgrade paths when using this node through an MDM:
-
-- Windows 10/Windows 11 Enterprise to Windows 10/ Windows 11 Education
-- Windows 10/Windows 11 Home to Windows 10/Windows 11 Education
-- Windows 10/Windows 11 Pro to Windows 10/Windows 11 Education
-- Windows 10/Windows 11 Pro to Windows 10/Windows 11 Enterprise
-
-Activation or changing a product key can be carried out on the following editions:
-
-- Windows 10/Windows 11 Education
-- Windows 10/Windows 11 Enterprise
-- Windows 10/Windows 11 Home
-- Windows 10/Windows 11 Pro
-
-**Edition**
-Returns a value that maps to the Windows 10 or Windows 11 edition. Take the value, convert it into its hexadecimal equivalent and search the GetProductInfo function page on MSDN for edition information.
-
-The data type is an Int.
-
-The supported operation is Get.
-
-**Status**
-Returns the status of an edition upgrade on Windows devices. The status corresponds to one of the following values:
-
-- 0 = Failed
-- 1 = Pending
-- 2 = In progress
-- 3 = Completed
-- 4 = Unknown
-
-The data type is an Int.
-
-The supported operation is Get.
-
-
-
-**LicenseKeyType**
-Returns the parameter type used by Windows 10 or Windows 11 devices for an edition upgrade, activation, or product key change.
-
-- Windows 10 or Windows 11 client devices require a product key.
-
-The data type is a chr.
-
-The supported operation is Get.
-
-**CheckApplicability**
-Returns TRUE if the entered product key can be used for an edition upgrade, activation or changing a product key of Windows 10 or Windows 11 for desktop devices.
-
-The data type is a chr.
-
-The supported operation is Exec.
-
-**ChangeProductKey**
-Added in Windows 10, version 1703. Installs a product key for Windows desktop devices. Doesn't reboot.
-
-The data type is a chr.
-
-The supported operation is Execute.
-
-**Subscriptions**
-Added in Windows 10, version 1607. Node for subscriptions.
-
-**Subscriptions/SubscriptionId**
-Added in Windows 10, version 1607. Node for subscription IDs.
-
-**Subscriptions/SubscriptionId/Status**
-Added in Windows 10, version 1607. Returns the status of the subscription.
-
-The data type is an Int.
-
-The supported operation is Get.
-
-**Subscriptions/SubscriptionId/Name**
-Added in Windows 10, version 1607. Returns the name of the subscription.
-
-The data type is a chr.
-
-The supported operation is Get.
-
-**SMode**
-Interior node for managing S mode.
-
-**SMode/SwitchingPolicy**
-Added in Windows 10, version 1809. Determines whether a consumer can switch the device out of S mode. This setting is only applicable to devices available in S mode. For examples, see [Add S mode SwitchingPolicy](#smode-switchingpolicy-add), [Get S mode SwitchingPolicy](#smode-switchingpolicy-get), [Replace S mode SwitchingPolicy](#smode-switchingpolicy-replace) and [Delete S mode SwitchingPolicy](#smode-switchingpolicy-delete)
-
-Value type is integer.
-
-Supported operations are Add, Get, Replace, and Delete.
-
-Supported values:
-
-- 0 - No Restriction: The user is allowed to switch the device out of S mode.
-- 1 - User Blocked: The admin has blocked the user from switching their device out of S mode. Only the admin can switch the device out of S mode through the SMode/SwitchFromSMode node.
-
-**SMode/SwitchFromSMode**
-Added in Windows 10, version 1809. Switches a device out of S mode if possible. Doesn't reboot. For an example, see [Execute SwitchFromSMode](#smode-switchfromsmode-execute)
-
-Supported operation is Execute.
-
-**SMode/Status**
-Added in Windows 10, version 1809. Returns the status of the latest SwitchFromSMode set request. For an example, see [Get S mode status](#smode-status-example)
-
-Value type is integer.
-
-Supported operation is Get.
-
-Values:
-
-- Request fails with error code 404 - no SwitchFromSMode request has been made.
-- 0 - The device successfully switched out of S mode.
-- 1 - The device is processing the request to switch out of S mode.
-- 3 - The device was already switched out of S mode.
-- 4 - The device failed to switch out of S mode.
-
-## SyncML examples
-
-**CheckApplicability**
+
+
+
+## ChangeProductKey
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 10, version 1703 [10.0.15063] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/ChangeProductKey
+```
+
+
+
+
+Installs a product key for Windows 10 desktop devices. Does not reboot.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | chr (string) |
+| Access Type | Exec |
+
+
+
+
+
+
+
+
+
+## CheckApplicability
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 10, version 1511 [10.0.10586] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/CheckApplicability
+```
+
+
+
+
+Returns TRUE if the entered product key can be used for an edition upgrade of Windows 10 desktop devices.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | chr (string) |
+| Access Type | Exec |
+
+
+
+
+**Example**:
```xml
@@ -243,9 +148,329 @@ Values:
```
> [!NOTE]
-> `XXXXX-XXXXX-XXXXX-XXXXX-XXXXX` in the **Data** tag should be replaced with your product key.
+> `XXXXX-XXXXX-XXXXX-XXXXX-XXXXX` in the Data tag should be replaced with your product key.
+
-**Edition**
+
+
+
+## DeviceLicensingService
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 11, version 22H2 [10.0.22621] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/DeviceLicensingService
+```
+
+
+
+
+Insert Description Here.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | node |
+| Access Type | Get |
+
+
+
+
+
+
+
+
+
+### DeviceLicensingService/AcquireDeviceLicense
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 11, version 22H2 [10.0.22621] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/DeviceLicensingService/AcquireDeviceLicense
+```
+
+
+
+
+Acquire and Refresh Device License. Does not reboot.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | null |
+| Access Type | Exec |
+
+
+
+
+
+
+
+
+
+### DeviceLicensingService/DeviceLicensingLastError
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 11, version 22H2 [10.0.22621] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/DeviceLicensingService/DeviceLicensingLastError
+```
+
+
+
+
+Returns the last error code of Refresh/Remove Device License operation. Value would be empty(0) in absence of error.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | int |
+| Access Type | Get |
+
+
+
+
+
+
+
+
+
+### DeviceLicensingService/DeviceLicensingLastErrorDescription
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 11, version 22H2 [10.0.22621] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/DeviceLicensingService/DeviceLicensingLastErrorDescription
+```
+
+
+
+
+Returns last error description from Device Licensing. Value would be empty, if error decription can not be evaluated.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | chr (string) |
+| Access Type | Get |
+
+
+
+
+
+
+
+
+
+### DeviceLicensingService/DeviceLicensingStatus
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 11, version 22H2 [10.0.22621] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/DeviceLicensingService/DeviceLicensingStatus
+```
+
+
+
+
+Returns the status of Refresh/Remove Device License operation.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | int |
+| Access Type | Get |
+
+
+
+
+
+
+
+
+
+### DeviceLicensingService/LicenseType
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 11, version 22H2 [10.0.22621] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/DeviceLicensingService/LicenseType
+```
+
+
+
+
+License Type: User Based Subscription or Device Based Subscription.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | int |
+| Access Type | Add, Delete, Get, Replace |
+
+
+
+**Allowed values**:
+
+| Value | Description |
+|:--|:--|
+| 0 | User Based Subscription. |
+| 1 | Device Based Subscription. |
+
+
+
+
+
+
+
+
+
+### DeviceLicensingService/RemoveDeviceLicense
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 11, version 22H2 [10.0.22621] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/DeviceLicensingService/RemoveDeviceLicense
+```
+
+
+
+
+Remove Device License. Device would be ready for user based license after this operation. Does not reboot.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | null |
+| Access Type | Exec |
+
+
+
+
+
+
+
+
+
+## Edition
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 10, version 1511 [10.0.10586] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/Edition
+```
+
+
+
+
+Returns a value that maps to the Windows 10 edition running on desktop or mobile devices. Take the value, convert it into its hexadecimal equivalent and search the GetProductInfo function page on MSDN for edition information.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | int |
+| Access Type | Get |
+
+
+
+
+**Example**:
```xml
@@ -262,8 +487,46 @@ Values:
```
+
-**LicenseKeyType**
+
+
+
+## LicenseKeyType
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 10, version 1511 [10.0.10586] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/LicenseKeyType
+```
+
+
+
+
+Returns the parameter type used by Windows 10 devices for an edition upgrade. Windows 10 desktop devices require a product key for an edition upgrade. Windows 10 mobile devices require a license for an edition upgrade.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | chr (string) |
+| Access Type | Get |
+
+
+
+
+**Example**:
```xml
@@ -280,76 +543,92 @@ Values:
```
+
-**Status**
+
-```xml
-
-
-
- $CmdID$
- -
-
- ./Device/Vendor/MSFT/WindowsLicensing/Status
-
-
-
-
-
-
+
+## SMode
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 10, version 1809 [10.0.17763] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/SMode
```
+
-**UpgradeEditionWithProductKey**
+
+
+Interior node for managing S mode.
+
-```xml
-
-
-
- $CmdID$
- -
-
- ./Device/Vendor/MSFT/WindowsLicensing/UpgradeEditionWithProductKey
-
-
- chr
-
- XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
-
-
-
-
-
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | node |
+| Access Type | Get |
+
+
+
+
+
+
+
+
+
+### SMode/Status
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 10, version 1809 [10.0.17763] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/SMode/Status
```
+
-> [!NOTE]
-> `XXXXX-XXXXX-XXXXX-XXXXX-XXXXX` in the **Data** tag should be replaced with your product key.
+
+
+Returns the status of the latest SwitchFromSMode or SwitchingPolicy set request.
+
-
+
+Possible values:
-**UpgradeEditionWithLicense**
+- Request fails with error code 404: no SwitchFromSMode request has been made.
+- 0: The device successfully switched out of S mode.
+- 1: The device is processing the request to switch out of S mode.
+- 3: The device was already switched out of S mode.
+- 4: The device failed to switch out of S mode.
+
-```xml
-
-
-
- $CmdID$
- -
-
- ./Device/Vendor/MSFT/WindowsLicensing/UpgradeEditionWithLicense
-
-
- chr
-
- YOUR XML ENCODED LICENSE GOES HERE
-
-
-
-
-
-```
--->
+
+**Description framework properties**:
-**Get S mode status**
+| Property name | Property value |
+|:--|:--|
+| Format | int |
+| Access Type | Get |
+
+
+
+
+**Example**:
```xml
@@ -368,8 +647,46 @@ Values:
```
+
-**Execute SwitchFromSMode**
+
+
+
+### SMode/SwitchFromSMode
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 10, version 1809 [10.0.17763] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/SMode/SwitchFromSMode
+```
+
+
+
+
+Switches a device out of S mode if possible. Does not reboot.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | null |
+| Access Type | Exec |
+
+
+
+
+**Example**:
```xml
@@ -393,97 +710,504 @@ Values:
```
+
-**Add S mode SwitchingPolicy**
+
-```xml
-
-
-
- 4
- -
-
-
- ./Vendor/MSFT/WindowsLicensing/SMode/SwitchingPolicy
-
-
-
- int
- text/plain
-
- 1
-
-
-
-
-
+
+### SMode/SwitchingPolicy
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 10, version 1809 [10.0.17763] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/SMode/SwitchingPolicy
```
+
-**Get S mode SwitchingPolicy**
+
+
+Policy that determines whether a consumer can switch the device out of S mode.
+
+
+
+
+This setting is only applicable to devices available in S mode.
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | int |
+| Access Type | Add, Delete, Get, Replace |
+
+
+
+**Allowed values**:
+
+| Value | Description |
+|:--|:--|
+| 0 | No Restriction: The user is allowed to switch the device out of S mode. |
+| 1 | User Blocked: The admin has blocked the user from switching their device out of S mode. Only the admin can switch the device out of S mode through the SMode/SwitchFromSMode node. |
+
+
+
+
+**Examples**:
+
+- Add S Mode SwitchingPolicy
+
+ ```xml
+
+
+
+ 4
+ -
+
+
+ ./Vendor/MSFT/WindowsLicensing/SMode/SwitchingPolicy
+
+
+
+ int
+ text/plain
+
+ 1
+
+
+
+
+
+ ```
+
+- Get S Mode Switching Policy
+
+ ```xml
+
+
+
+ 2
+ -
+
+
+ ./Vendor/MSFT/WindowsLicensing/SMode/SwitchingPolicy
+
+
+
+
+
+
+
+ ```
+
+- Replace S mode SwitchingPolicy
+
+ ```xml
+
+
+
+ 1
+ -
+
+
+ ./Vendor/MSFT/WindowsLicensing/SMode/SwitchingPolicy
+
+
+
+ int
+ text/plain
+
+ 1
+
+
+
+
+
+ ```
+
+- Delete S mode SwitchingPolicy
+
+ ```xml
+
+
+
+ 3
+ -
+
+
+ ./Vendor/MSFT/WindowsLicensing/SMode/SwitchingPolicy
+
+
+
+
+
+
+
+ ```
+
+
+
+
+
+## Status
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 10, version 1511 [10.0.10586] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/Status
+```
+
+
+
+
+Returns the status of an edition upgrade on Windows 10 desktop and mobile devices. Status: 0 = Failed, 1 = Pending, 2 = In progress, 3 = Completed, 4 = Unknown.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | int |
+| Access Type | Get |
+
+
+
+
+**Example**:
```xml
- 2
- -
-
-
- ./Vendor/MSFT/WindowsLicensing/SMode/SwitchingPolicy
-
-
-
+ $CmdID$
+ -
+
+ ./Device/Vendor/MSFT/WindowsLicensing/Status
+
+
```
+
-**Replace S mode SwitchingPolicy**
+
+
+
+## Subscriptions
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 10, version 1607 [10.0.14393] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/Subscriptions
+```
+
+
+
+
+Node for subscriptions.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | node |
+| Access Type | Get |
+
+
+
+
+
+
+
+
+
+### Subscriptions/{SubscriptionId}
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 10, version 1607 [10.0.14393] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/Subscriptions/{SubscriptionId}
+```
+
+
+
+
+Node for subscription IDs.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | node |
+| Access Type | Get |
+| Dynamic Node Naming | ClientInventory |
+
+
+
+
+
+
+
+
+
+#### Subscriptions/{SubscriptionId}/Name
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 10, version 1607 [10.0.14393] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/Subscriptions/{SubscriptionId}/Name
+```
+
+
+
+
+Returns the name of the subscription.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | chr (string) |
+| Access Type | Get |
+
+
+
+
+
+
+
+
+
+#### Subscriptions/{SubscriptionId}/Status
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 10, version 1607 [10.0.14393] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/Subscriptions/{SubscriptionId}/Status
+```
+
+
+
+
+Returns the status of the subscription.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | int |
+| Access Type | Get |
+
+
+
+
+
+
+
+
+
+## UpgradeEditionWithLicense
+
+> [!NOTE]
+> This policy is deprecated and may be removed in a future release.
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 10, version 1511 [10.0.10586] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/UpgradeEditionWithLicense
+```
+
+
+
+
+Provide a license for an edition upgrade of Windows 10 mobile devices. Does not require reboot.
+
+
+
+
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | xml |
+| Access Type | Exec |
+
+
+
+
+
+
+
+
+
+## UpgradeEditionWithProductKey
+
+
+| Scope | Editions | Applicable OS |
+|:--|:--|:--|
+| :heavy_check_mark: Device
:x: User | :x: Home
:heavy_check_mark: Pro
:heavy_check_mark: Enterprise
:heavy_check_mark: Education
:x: Windows SE | :heavy_check_mark: Windows 10, version 1511 [10.0.10586] and later |
+
+
+
+```Device
+./Vendor/MSFT/WindowsLicensing/UpgradeEditionWithProductKey
+```
+
+
+
+
+Enter a product key for an edition upgrade of Windows 10 desktop devices. Requires reboot.
+
+
+
+
+When a product key is pushed from an MDM server to a user's device, `changepk.exe` runs using the product key. After it completes, a notification is shown to the user that a new edition of Windows is available. The user can then restart their system manually or after two hours, the device will restart automatically to complete the upgrade. The user will receive a reminder notification 10 minutes before the automatic restart.
+
+After the device restarts, the edition upgrade process completes. The user will receive a notification of the successful upgrade.
+
+> [!NOTE]
+> If another policy requires a system reboot that occurs when `changepk.exe` is running, the edition upgrade will fail.
+
+If a product key is entered in a provisioning package and the user begins installation of the package, a notification is shown to the user that their system will restart to complete the package installation. Upon explicit consent from the user to proceed, the package continues installation and `changepk.exe` runs using the product key. The user will receive a reminder notification 30 seconds before the automatic restart.
+
+After the device restarts, the edition upgrade process completes. The user will receive a notification of the successful upgrade.
+
+This node can also be used to activate or change a product key on a particular edition of Windows 10 desktop device by entering a product key. Activation or changing a product key doesn't require a reboot and is a silent process for the user.
+
+> [!IMPORTANT]
+> The product key entered must be 29 characters (that is, it should include dashes), otherwise the activation, edition upgrade, or product key change on Windows 10 desktop devices will fail. The product key is acquired from Microsoft Volume Licensing Service Center. Your organization must have a Volume Licensing contract with Microsoft to access the portal.
+
+The following are valid edition upgrade paths when using this node through an MDM:
+
+- Windows 10/11 Enterprise to Windows 10/11 Education
+- Windows 10/11 Home to Windows 10/11 Education
+- Windows 10/11 Pro to Windows 10/11 Education
+- Windows 10/11 Pro to Windows 10/11 Enterprise
+
+Activation or changing a product key can be carried out on the following editions:
+
+- Windows 10/11 Education
+- Windows 10/11 Enterprise
+- Windows 10/11 Home
+- Windows 10/11 Pro
+
+
+
+**Description framework properties**:
+
+| Property name | Property value |
+|:--|:--|
+| Format | chr (string) |
+| Access Type | Exec |
+| Reboot Behavior | Automatic |
+
+
+
+
+**Example**:
```xml
-
- 1
- -
-
-
- ./Vendor/MSFT/WindowsLicensing/SMode/SwitchingPolicy
-
-
-
- int
- text/plain
-
- 1
-
-
-
+
+ $CmdID$
+ -
+
+ ./Device/Vendor/MSFT/WindowsLicensing/UpgradeEditionWithProductKey
+
+
+ chr
+
+ XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
+
+
+
```
-**Delete S mode SwitchingPolicy**
+> [!NOTE]
+> `XXXXX-XXXXX-XXXXX-XXXXX-XXXXX` in the Data tag should be replaced with your product key.
+
-```xml
-
-
-
- 3
- -
-
-
- ./Vendor/MSFT/WindowsLicensing/SMode/SwitchingPolicy
-
-
-
-
-
-
-
-```
+
-## Related topics
+
+
+
-[Configuration service provider reference](index.yml)
+
+
+## Related articles
+
+[Configuration service provider reference](configuration-service-provider-reference.md)
diff --git a/windows/client-management/mdm/windowslicensing-ddf-file.md b/windows/client-management/mdm/windowslicensing-ddf-file.md
index 00f97205ee..ad27537130 100644
--- a/windows/client-management/mdm/windowslicensing-ddf-file.md
+++ b/windows/client-management/mdm/windowslicensing-ddf-file.md
@@ -1,44 +1,399 @@
---
title: WindowsLicensing DDF file
-description: Learn about the OMA DM device description framework (DDF) for the WindowsLicensing configuration service provider (CSP).
-ms.reviewer:
+description: View the XML file containing the device description framework (DDF) for the WindowsLicensing configuration service provider.
+author: vinaypamnani-msft
manager: aaroncz
ms.author: vinpa
-ms.topic: article
+ms.date: 02/17/2023
+ms.localizationpriority: medium
ms.prod: windows-client
ms.technology: itpro-manage
-author: vinaypamnani-msft
-ms.date: 07/16/2017
+ms.topic: reference
---
+
+
# WindowsLicensing DDF file
-> [!WARNING]
-> Some information relates to pre-released product which may be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
-
-This topic shows the OMA DM device description framework (DDF) for the **WindowsLicensing** configuration service provider. DDF files are used only with OMA DM provisioning XML.
-
-Looking for the DDF XML files? See [CSP DDF files download](configuration-service-provider-ddf.md).
-
-The XML below is for Windows 10, version 1809 and later.
+The following XML file contains the device description framework (DDF) for the WindowsLicensing configuration service provider.
```xml
-]>
+]>
1.2
+
+
+
+ WindowsLicensing
+ ./Vendor/MSFT
+
+
+
+
+ This is the root node for the WindowsLicensing configuration service provider.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 10.0.10586
+ 1.0
+ 0x4;0x1B;0x30;0x31;0x48;0x54;0x62;0x63;0x64;0x65;0x77;0x79;0x7A;0x7D;0x7E;0x81;0x82;0x87;0x88*;0x8A;0x8B;0xA1;0xA2;0xA4;0xA5;0xAB;0xAC;0xB4;0xBC;0xBF;0xCD;
+
+
+
+ UpgradeEditionWithProductKey
+
+
+
+
+ Enter a product key for an edition upgrade of Windows 10 desktop devices. Requires reboot.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Automatic
+
+
+
+ ChangeProductKey
+
+
+
+
+ Installs a product key for Windows 10 desktop devices. Does not reboot.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 10.0.15063
+ 1.2
+
+
+
+
+
+
+ Edition
+
+
+
+
+ Returns a value that maps to the Windows 10 edition running on desktop or mobile devices. Take the value, convert it into its hexadecimal equivalent and search the GetProductInfo function page on MSDN for edition information.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Status
+
+
+
+
+ Returns the status of an edition upgrade on Windows 10 desktop and mobile devices. Status: 0 = Failed, 1 = Pending, 2 = In progress, 3 = Completed, 4 = Unknown
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ UpgradeEditionWithLicense
+
+
+
+
+ Provide a license for an edition upgrade of Windows 10 mobile devices. Does not require reboot.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ LicenseKeyType
+
+
+
+
+ Returns the parameter type used by Windows 10 devices for an edition upgrade. Windows 10 desktop devices require a product key for an edition upgrade. Windows 10 mobile devices require a license for an edition upgrade.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ CheckApplicability
+
+
+
+
+ Returns TRUE if the entered product key can be used for an edition upgrade of Windows 10 desktop devices.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Subscriptions
+
+
+
+
+ Node for subscriptions.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 10.0.14393
+ 1.1
+
+
- WindowsLicensing
- ./Vendor/MSFT
+
+
+ Node for subscription IDs.
+
+
+
+
+
+
+ SubscriptionId
+
+
+
+
+
+
+
+
+ Status
+
+
+
+
+ Returns the status of the subscription.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name
+
+
+
+
+ Returns the name of the subscription.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SMode
+
+
+
+
+ Interior node for managing S mode.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 10.0.17763
+ 1.3
+
+
+
+ SwitchingPolicy
+
+
+
+
+
+
+
+ Policy that determines whether a consumer can switch the device out of S mode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0
+ No Restriction: The user is allowed to switch the device out of S mode.
+
+
+ 1
+ User Blocked: The admin has blocked the user from switching their device out of S mode. Only the admin can switch the device out of S mode through the SMode/SwitchFromSMode node.
+
+
+
+
+
+ SwitchFromSMode
+
+
+
+
+ Switches a device out of S mode if possible. Does not reboot.
+
+
+
@@ -46,309 +401,206 @@ The XML below is for Windows 10, version 1809 and later.
- com.microsoft/1.3/MDM/WindowsLicensing
+
+
+
+
+
+
+
+
+ Status
+
+
+
+
+ Returns the status of the latest SwitchFromSMode or SwitchingPolicy set request.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DeviceLicensingService
+
+
+
+
+ Insert Description Here
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 10.0.22621
+ 1.4
+
+
+
+ LicenseType
+
+
+
+
+
+
+
+ License Type: User Based Subscription or Device Based Subscription
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0
+ User Based Subscription
+
+
+ 1
+ Device Based Subscription
+
+
+
+
+
+ DeviceLicensingStatus
+
+
+
+
+ Returns the status of Refresh/Remove Device License operation.
+
+
+
+
+
+
+
+
+
+
+
-
- UpgradeEditionWithProductKey
-
-
-
-
- Enter a product key for an edition upgrade of Windows 10 desktop devices. Requires reboot.
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/plain
-
-
-
-
- ChangeProductKey
-
-
-
-
- Installs a product key for Windows 10 desktop devices. Does not reboot.
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/plain
-
-
-
-
- Edition
-
-
-
-
- Returns a value that maps to the Windows 10 or Windows 11 edition running on devices. Take the value, convert it into its hexadecimal equivalent and search the GetProductInfo function page on MSDN for edition information.
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/plain
-
-
-
-
- Status
-
-
-
-
- Returns the status of an edition upgrade on Windows 10 or Windows 11 client devices. Status: 0 = Failed, 1 = Pending, 2 = In progress, 3 = Completed, 4 = Unknown
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/plain
-
-
-
-
- CheckApplicability
-
-
-
-
- Returns TRUE if the entered product key can be used for an edition upgrade of Windows 10 desktop devices.
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/plain
-
-
-
-
- Subscriptions
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- SubscriptionId
-
-
-
-
-
- Status
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/plain
-
-
-
-
- Name
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/plain
-
-
-
-
-
-
- SMode
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- SwitchingPolicy
-
-
-
-
-
-
-
- Policy that determines whether a consumer can switch the device out of S mode
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/plain
-
-
-
-
- SwitchFromSMode
-
-
-
-
- Switches a device out of S mode if possible. Does not reboot.
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/plain
-
-
-
-
- Status
-
-
-
-
- Returns the status of the latest SwitchFromSMode or SwitchingPolicy set request.
-
-
-
-
-
-
-
-
-
-
-
-
-
- text/plain
-
-
-
-
+
+ DeviceLicensingLastError
+
+
+
+
+ Returns the last error code of Refresh/Remove Device License operation. Value would be empty(0) in absence of error.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DeviceLicensingLastErrorDescription
+
+
+
+
+ Returns last error description from Device Licensing. Value would be empty, if error decription can not be evaluated.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ AcquireDeviceLicense
+
+
+
+
+ Acquire and Refresh Device License. Does not reboot.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ RemoveDeviceLicense
+
+
+
+
+ Remove Device License. Device would be ready for user based license after this operation. Does not reboot.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
```
-## Related topics
+## Related articles
-[WindowsLicensing configuration service provider](windowslicensing-csp.md)
\ No newline at end of file
+[WindowsLicensing configuration service provider reference](windowslicensing-csp.md)