microsoftgraph / microsoftgraph/msgraph-beta-sdk-python

Missing Enumeration in class DeviceManagementConfigurationWindowsSkus

Open Beginner friendly
#376 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Python
Stars
44
Forks
16
Avg merge
20h 39m
Merged PRs (30d)
3

Description

Is your feature request related to a problem? Please describe.

graph.get_configuration_settings_for_definition(setting_instance_template.setting_definition_id) returns an error

In the graph API expolorer it returns values that are not in the DeviceManagementConfigurationWIndowsSkus

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#deviceManagement/configurationSettings",
    "@microsoft.graph.tips": "Use $select to choose only the properties your app needs, as this can lead to performance improvements. For example: GET deviceManagement/configurationSettings?$select=accessTypes,applicability",
    "value": [
        {
            "@odata.type": "#microsoft.graph.deviceManagementConfigurationChoiceSettingDefinition",
            "accessTypes": "add,delete,get,replace",
            "keywords": [
                "DeviceInstall_IDs_Deny",
                "Prevent installation of devices that match any of these device IDs",
                "\\System\\Device Installation\\Device Installation Restrictions",
                "Device Installation Restrictions"
            ],
            "infoUrls": [
                "https://docs.microsoft.com/en-us/windows/client-management/mdm/policy-csp-deviceinstallation"
            ],
            "baseUri": "./Device/Vendor/MSFT/Policy",
            "offsetUri": "/Config/DeviceInstallation/PreventInstallationOfMatchingDeviceIDs",
            "rootDefinitionId": "device_vendor_msft_policy_config_deviceinstallation_preventinstallationofmatchingdeviceids",
            "categoryId": "979412d7-6716-440c-9a64-5889026d73da",
            "settingUsage": "configuration",
            "uxBehavior": "toggle",
            "visibility": "settingsCatalog,template",
            "id": "device_vendor_msft_policy_config_deviceinstallation_preventinstallationofmatchingdeviceids",
            "description": "This policy setting allows you to specify a list of Plug and Play hardware IDs and compatible IDs for devices that Windows is prevented from installing. This policy setting takes precedence over any other policy setting that allows Windows to install a device.If you enable this policy setting, Windows is prevented from installing a device whose hardware ID or compatible ID appears in the list you create. If you enable this policy setting on a remote desktop server, the policy setting affects redirection of the specified devices from a remote desktop client to the remote desktop server.If you disable or do not configure this policy setting, devices can be installed and updated as allowed or prevented by other policy settings.",
            "helpText": "",
            "name": "DeviceInstall_IDs_Deny",
            "displayName": "Prevent installation of devices that match any of these device IDs",
            "version": "638472449890445475",
            "defaultOptionId": "device_vendor_msft_policy_config_deviceinstallation_preventinstallationofmatchingdeviceids_0",
            "applicability": {
                "@odata.type": "#microsoft.graph.deviceManagementConfigurationWindowsSettingApplicability",
                "description": null,
                "platform": "windows10",
                "deviceMode": "none",
                "technologies": "mdm,configManager,microsoftSense",
                "configurationServiceProviderVersion": "5.0",
                "maximumSupportedVersion": null,
                "minimumSupportedVersion": "10.0.15063",
                "windowsSkus": [
                    "windowsEnterprise",
                    "windowsProfessional",
                    "windowsEducation",
                    "iotEnterprise",
                    **"windowsCloudN",
                    "windows11SE",
                    "iotEnterpriseSEval"**
                ],
                "requiresAzureAd": false,
                "requiredAzureAdTrustType": "none"
            },
            "occurrence": {
                "minDeviceOccurrence": 0,
                "maxDeviceOccurrence": 1
            },
            "referredSettingInformationList": [],
            "options": [
                {
                    "itemId": "device_vendor_msft_policy_config_deviceinstallation_preventinstallationofmatchingdeviceids_0",
                    "description": null,
                    "helpText": null,
                    "name": "Disabled",
                    "displayName": "Disabled",
                    "optionValue": {
                        "@odata.type": "#microsoft.graph.deviceManagementConfigurationIntegerSettingValue",
                        "settingValueTemplateReference": null,
                        "value": 0
                    },
                    "dependentOn": [],
                    "dependedOnBy": []
                },
                {
                    "itemId": "device_vendor_msft_policy_config_deviceinstallation_preventinstallationofmatchingdeviceids_1",
                    "description": null,
                    "helpText": null,
                    "name": "Enabled",
                    "displayName": "Enabled",
                    "optionValue": {
                        "@odata.type": "#microsoft.graph.deviceManagementConfigurationIntegerSettingValue",
                        "settingValueTemplateReference": null,
                        "value": 1
                    },
                    "dependentOn": [],
                    "dependedOnBy": [
                        {
                            "dependedOnBy": "device_vendor_msft_policy_config_deviceinstallation_preventinstallationofmatchingdeviceids_deviceinstall_ids_deny_list",
                            "required": true
                        },
                        {
                            "dependedOnBy": "device_vendor_msft_policy_config_deviceinstallation_preventinstallationofmatchingdeviceids_deviceinstall_ids_deny_retroactive",
                            "required": true
                        }
                    ]
                }
            ]
        }
    ]
}

Describe the solution you'd like
A clear and concise description of what you want to happen.

Add

    WindowsCloudN = "windowsCloudN"
    Windows11SE = "Windows11SE",
    IotEnterpriseSEval = "iotEnterpriseSEval"

Describe alternatives you've considered
I tried only asking for the other fields besides applicability, but the field that I needed "options" is in the object :(

Additional context
I just wanted the options value for the setting, but since that wasn't in the object, adding the 3 values to the enum was the fastes way to fix this.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Locate the DeviceManagementConfigurationWindowsSkus class in the Python SDK and read its existing enum members and nearby tests, if present. Add the three Windows SKU values requested in the issue, then run the relevant enum or SDK tests; done means all values returned by the Graph API example are representable.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
api
Issue type
Feature
Difficulty
1/5
Estimated time
Under an hour
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
72/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.