intune

package
v0.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 12, 2024 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ODataTypeDeviceComplianceScript                = "#microsoft.graph.deviceComplianceScript"
	ODataTypeDeviceComplianceScriptStringParameter = "microsoft.graph.deviceHealthScriptStringParameter"
)
View Source
const (
	ODataTypeDeviceHealthScript                   = "#microsoft.graph.deviceHealthScript"
	ODataTypeDeviceHealthScriptStringParameter    = "microsoft.graph.deviceHealthScriptStringParameter"
	ODataTypeConfigurationManagerCollectionTarget = "microsoft.graph.configurationManagerCollectionAssignmentTarget"
	ODataTypeGroupAssignmentTarget                = "microsoft.graph.groupAssignmentTarget"
)
View Source
const (
	ODataTypeDeviceHealthScriptAssignment                   = "#microsoft.graph.deviceHealthScriptAssignment"
	ODataTypeConfigurationManagerCollectionAssignmentTarget = "microsoft.graph.configurationManagerCollectionAssignmentTarget"
	ODataTypeDeviceHealthScriptDailySchedule                = "microsoft.graph.deviceHealthScriptDailySchedule"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AssignDeviceComplianceScript added in v0.0.2

type AssignDeviceComplianceScript struct {
	DeviceComplianceScriptAssignments []DeviceComplianceAssignmentItem `json:"deviceComplianceScriptAssignments"`
}

AssignDeviceComplianceScript represents the request structure for assigning a device compliance script.

type Assignment

type Assignment struct {
	ID                   string           `json:"id"`
	LastModifiedDateTime time.Time        `json:"lastModifiedDateTime"`
	Target               AssignmentTarget `json:"target"`
}

Assignment represents an assignment of a Group Policy Configuration to a target, such as a user or a group.

type AssignmentDeviceManagementScript

type AssignmentDeviceManagementScript struct {
	ResourceDeviceManagementScriptGroupAssignments []ResourceDeviceManagementScriptGroupAssignment `json:"deviceManagementScriptGroupAssignments,omitempty"`
	ResourceDeviceManagementScriptAssignments      []ResourceDeviceManagementScriptAssignment      `json:"deviceManagementScriptAssignments,omitempty"`
}

AssignmentDeviceManagementScript represents the request of a script assignment

type AssignmentTarget

type AssignmentTarget struct {
	ID                                         string `json:"id"`
	Type                                       string `json:"@odata.type"` // e.g., "#microsoft.graph.groupTarget", etc.
	DeviceAndAppManagementAssignmentFilterId   string `json:"deviceAndAppManagementAssignmentFilterId"`
	DeviceAndAppManagementAssignmentFilterType string `json:"deviceAndAppManagementAssignmentFilterType"`
	CollectionId                               string `json:"collectionId"`
}

AssignmentTarget represents the target of an Assignment, detailing the type and identifiers for the assignment target.

type BitLockerRecoveryOptions added in v0.0.2

type BitLockerRecoveryOptions struct {
	BlockDataRecoveryAgent                         bool   `json:"blockDataRecoveryAgent,omitempty"`
	RecoveryPasswordUsage                          string `json:"recoveryPasswordUsage,omitempty"`
	RecoveryKeyUsage                               string `json:"recoveryKeyUsage,omitempty"`
	HideRecoveryOptions                            bool   `json:"hideRecoveryOptions,omitempty"`
	EnableRecoveryInformationSaveToStore           bool   `json:"enableRecoveryInformationSaveToStore,omitempty"`
	RecoveryInformationToStore                     string `json:"recoveryInformationToStore,omitempty"`
	EnableBitLockerAfterRecoveryInformationToStore bool   `json:"enableBitLockerAfterRecoveryInformationToStore,omitempty"`
}

BitLockerRecoveryOptions represents the recovery options for BitLocker.

type Client

type Client struct {
	HTTP *httpclient.Client
}

func BuildClient added in v0.0.2

func BuildClient(config httpclient.ClientConfig) (*Client, error)

BuildClient initializes a new Jamf Pro client with the given configuration. This is typically used when you want to manually specify the configuration. e.g by another caller application such as terraform or a custom application.

func BuildClientWithConfigFile added in v0.0.2

func BuildClientWithConfigFile(configFilePath string) (*Client, error)

BuildClientWithConfigFile initializes a new Jamf Pro client using a configuration file for the HTTP client. This is typically used when a user wants to use a configuration file to configure the client locally.

func BuildClientWithEnv added in v0.0.2

func BuildClientWithEnv() (*Client, error)

BuildClientWithEnv initializes a new Jamf Pro client using configurations loaded from environment variables. This is typically used when by a user to use environment variables to configure the client locally or when running in a container or a CI/CD pipeline.

func (*Client) CreateCopyOfDeviceManagementConfigurationPolicyByID

func (c *Client) CreateCopyOfDeviceManagementConfigurationPolicyByID(sourcePolicyId string, copyDisplayName string, copyDescription string) (*ResourceDeviceManagementConfigurationPolicy, error)

CreateCopyOfDeviceManagementConfigurationPolicyByID creates a copy of an existing device management configuration policy.

func (*Client) CreateCopyOfDeviceManagementConfigurationPolicyByName

func (c *Client) CreateCopyOfDeviceManagementConfigurationPolicyByName(sourcePolicyName string, copyDisplayName string, copyDescription string) (*ResourceDeviceManagementConfigurationPolicy, error)

CreateCopyOfDeviceManagementConfigurationPolicyByName creates a copy of an existing device management configuration policy by its name.

func (*Client) CreateDeviceCategory

func (c *Client) CreateDeviceCategory(request *ResourceDeviceCategory) (*ResourceDeviceCategory, error)

CreateDeviceCategory creates a new Device Category in Microsoft Graph API.

func (*Client) CreateDeviceComplianceScript

func (c *Client) CreateDeviceComplianceScript(request *ResourceDeviceComplianceScript) (*ResponseDeviceComplianceScript, error)

CreateDeviceComplianceScript creates a new device compliance script in Microsoft Graph API.

func (*Client) CreateDeviceComplianceScriptAssignment added in v0.0.2

func (c *Client) CreateDeviceComplianceScriptAssignment(scriptID string, assignment ResourceDeviceHealthScriptAssignment) (*ResponseDeviceHealthScriptAssignment, error)

CreateDeviceComplianceScriptAssignment creates a new assignment for a device compliance script.

func (*Client) CreateDeviceManagementAssignmentFilter added in v0.0.2

func (c *Client) CreateDeviceManagementAssignmentFilter(request *ResourceDeviceManagementAssignmentFilter) (*ResponseAssignmentFilter, error)

CreateDeviceManagementAssignmentFilter creates a new Assignment Filter.

func (*Client) CreateDeviceManagementConfigurationPolicy

func (c *Client) CreateDeviceManagementConfigurationPolicy(request *ResourceDeviceManagementConfigurationPolicy) (*ResourceDeviceManagementConfigurationPolicy, error)

CreateDeviceManagementConfigurationPolicy creates a new device management configuration policy.

func (*Client) CreateDeviceManagementScript

func (c *Client) CreateDeviceManagementScript(request *ResourceDeviceManagementScript) (*ResponseDeviceManagementScript, error)

CreateDeviceManagementScript creates a new device management script.

func (*Client) CreateDeviceManagementScriptAssignment

func (c *Client) CreateDeviceManagementScriptAssignment(scriptID string, assignment *AssignmentDeviceManagementScript) (*ResourceDeviceManagementScriptGroupAssignment, error)

CreateDeviceManagementScriptAssignment creates a new device management script assignment.

func (*Client) CreateDeviceManagementScriptWithAssignment

func (c *Client) CreateDeviceManagementScriptWithAssignment(request *ResourceDeviceManagementScript, assignment *AssignmentDeviceManagementScript) (*ResponseDeviceManagementScript, error)

CreateDeviceManagementScriptWithAssignment creates a new device management script and assigns it.

func (*Client) CreateDeviceProactiveRemediationScript added in v0.0.2

func (c *Client) CreateDeviceProactiveRemediationScript(request *ResourceProactiveRemediation) (*ResponseProactiveRemediation, error)

CreateDeviceProactiveRemediationScript creates a new Device Health Script in Microsoft Graph API.

func (*Client) CreateDeviceShellScript

func (c *Client) CreateDeviceShellScript(request *ResourceDeviceShellScript) (*ResponseDeviceShellScript, error)

CreateDeviceShellScript creates a new device management script.

func (*Client) CreateDeviceShellScriptAssignment

func (c *Client) CreateDeviceShellScriptAssignment(scriptID string, assignment *AssignmentDeviceManagementScript) (*ResourceDeviceManagementScriptGroupAssignment, error)

CreateDeviceShellScriptAssignment creates a new device management script assignment.

func (*Client) CreateDeviceShellScriptWithAssignment

func (c *Client) CreateDeviceShellScriptWithAssignment(request *ResourceDeviceShellScript, assignment *AssignmentDeviceManagementScript) (*ResponseDeviceShellScript, error)

CreateDeviceShellScriptWithAssignment creates a new device management script and assigns it.

func (*Client) CreateProactiveRemediationScriptAssignment added in v0.0.2

func (c *Client) CreateProactiveRemediationScriptAssignment(scriptID string, assignment ResourceDeviceHealthScriptAssignment) (*ResponseDeviceHealthScriptAssignment, error)

CreateProactiveRemediationScriptAssignment creates a new assignment for a proactive remediation script.

func (*Client) DeleteDeviceCategoryByDisplayName

func (c *Client) DeleteDeviceCategoryByDisplayName(categoryName string) error

DeleteDeviceCategoryByDisplayName deletes a specific Device Category identified by its name.

func (*Client) DeleteDeviceCategoryByID

func (c *Client) DeleteDeviceCategoryByID(deviceCategoryId string) error

DeleteDeviceCategoryByID deletes a specific Device Category identified by its ID.

func (*Client) DeleteDeviceComplianceScriptByDisplayName

func (c *Client) DeleteDeviceComplianceScriptByDisplayName(displayName string) error

DeleteDeviceComplianceScriptByDisplayName deletes an existing device Shell script by its display name.

func (*Client) DeleteDeviceComplianceScriptByID

func (c *Client) DeleteDeviceComplianceScriptByID(scriptID string) error

DeleteDeviceComplianceScriptByID deletes an existing device compliance script by its ID.

func (*Client) DeleteDeviceManagementAssignmentFilterByDisplayName added in v0.0.2

func (c *Client) DeleteDeviceManagementAssignmentFilterByDisplayName(displayName string) error

DeleteDeviceManagementAssignmentFilterByDisplayName deletes a specific Assignment Filter by its display name.

func (*Client) DeleteDeviceManagementAssignmentFilterByID added in v0.0.2

func (c *Client) DeleteDeviceManagementAssignmentFilterByID(filterID string) error

DeleteDeviceManagementAssignmentFilterByID deletes a specific intune Assignment Filter by its ID.

func (*Client) DeleteDeviceManagementConfigurationPolicyByID

func (c *Client) DeleteDeviceManagementConfigurationPolicyByID(policyId string) error

DeleteDeviceManagementConfigurationPolicyByID deletes a device management configuration policy by its ID.

func (*Client) DeleteDeviceManagementConfigurationPolicyByName

func (c *Client) DeleteDeviceManagementConfigurationPolicyByName(policyName string) error

DeleteDeviceManagementConfigurationPolicyByName deletes a device management configuration policy by its name.

func (*Client) DeleteDeviceManagementScriptByDisplayName

func (c *Client) DeleteDeviceManagementScriptByDisplayName(displayName string) error

DeleteDeviceManagementScriptByDisplayName deletes an existing device management script by its display name.

func (*Client) DeleteDeviceManagementScriptByID

func (c *Client) DeleteDeviceManagementScriptByID(id string) error

DeleteDeviceManagementScriptByID deletes an existing device management script by its ID.

func (*Client) DeleteDeviceProactiveRemediationScriptByDisplayName added in v0.0.2

func (c *Client) DeleteDeviceProactiveRemediationScriptByDisplayName(displayName string) error

DeleteDeviceProactiveRemediationScriptByDisplayName deletes an existing device Shell script by its display name.

func (*Client) DeleteDeviceProactiveRemediationScriptByID added in v0.0.2

func (c *Client) DeleteDeviceProactiveRemediationScriptByID(scriptID string) error

DeleteDeviceProactiveRemediationScriptByID deletes an existing proactive remediation by its ID.

func (*Client) DeleteDeviceShellScriptByDisplayName

func (c *Client) DeleteDeviceShellScriptByDisplayName(displayName string) error

DeleteDeviceShellScriptByDisplayName deletes an existing device Shell script by its display name.

func (*Client) DeleteDeviceShellScriptByID

func (c *Client) DeleteDeviceShellScriptByID(scriptID string) error

DeleteDeviceShellScriptByID deletes an existing device shell script by its ID.

func (*Client) GetDecryptedOmaSetting added in v0.0.2

func (c *Client) GetDecryptedOmaSetting(baseURL, profileId, secretReferenceValueId string) (string, error)

GetDecryptedOmaSetting makes a request to Microsoft Graph API to retrieve the plain text value of an encrypted OMA setting. It constructs the endpoint URL using the provided base URL, profile ID, and secret reference value ID. The function returns the decrypted value of the OMA setting or an error if the retrieval is unsuccessful.

func (*Client) GetDeviceCategories

func (c *Client) GetDeviceCategories() (*ResponseDeviceCategoriesList, error)

GetDeviceCategories retrieves a list of Intune Device Categories from Microsoft Graph API.

func (*Client) GetDeviceCategoryByDisplayName

func (c *Client) GetDeviceCategoryByDisplayName(categoryDisplayName string) (*ResourceDeviceCategory, error)

GetDeviceCategoryByDisplayName retrieves a specific Device Category by its name from Microsoft Graph API.

func (*Client) GetDeviceCategoryByID

func (c *Client) GetDeviceCategoryByID(deviceCategoryId string) (*ResourceDeviceCategory, error)

GetDeviceCategoryByID retrieves a specific Device Category by its ID from Microsoft Graph API.

func (*Client) GetDeviceComplianceScriptAssignmentByID added in v0.0.2

func (c *Client) GetDeviceComplianceScriptAssignmentByID(scriptID string, assignmentID string) (*ResponseDeviceHealthScriptAssignment, error)

GetDeviceComplianceScriptAssignmentByID retrieves a specific assignment for a device compliance script by ID.

func (*Client) GetDeviceComplianceScriptAssignments added in v0.0.2

func (c *Client) GetDeviceComplianceScriptAssignments(scriptID string) (*ResponseDeviceHealthScriptAssignmentList, error)

GetDeviceComplianceScriptAssignments retrieves a list of assignments for a intune device compliance script.

func (*Client) GetDeviceComplianceScriptByDisplayName

func (c *Client) GetDeviceComplianceScriptByDisplayName(displayName string) (*ResponseDeviceComplianceScript, error)

GetProactiveRemediationByDisplayName retrieves a specific Proactive Remediation by its name along with its assignments.

func (*Client) GetDeviceComplianceScriptByID

func (c *Client) GetDeviceComplianceScriptByID(id string) (*ResponseDeviceComplianceScript, error)

GetDeviceComplianceScriptByID retrieves a Device Compliance Script by its ID.

func (*Client) GetDeviceComplianceScripts

func (c *Client) GetDeviceComplianceScripts() (*ResponseDeviceComplianceScriptsList, error)

GetDeviceComplianceScripts retrieves a list of device compliance scripts from Microsoft Graph API.

func (*Client) GetDeviceEnrollmentConfigurationAssignmentsByDeviceEnrollmentConfigurationID

func (c *Client) GetDeviceEnrollmentConfigurationAssignmentsByDeviceEnrollmentConfigurationID(configId string) (*ResourceDeviceEnrollmentConfigurationAssignmentsList, error)

GetDeviceEnrollmentConfigurationAssignmentsByDeviceEnrollmentConfigurationID retrieves all assignments for a device enrollment configuration by its ID.

func (*Client) GetDeviceEnrollmentConfigurationByDisplayName

func (c *Client) GetDeviceEnrollmentConfigurationByDisplayName(displayName string) (*ResourceDeviceEnrollmentConfiguration, error)

GetDeviceEnrollmentConfigurationByDisplayName retrieves a device management script by its display name.

func (*Client) GetDeviceEnrollmentConfigurationByID

func (c *Client) GetDeviceEnrollmentConfigurationByID(id string) (*ResourceDeviceEnrollmentConfiguration, error)

GetDeviceEnrollmentConfigurationByID retrieves a specific device enrollment configuration by its ID.

func (*Client) GetDeviceEnrollmentConfigurations

func (c *Client) GetDeviceEnrollmentConfigurations() (*ResourceDeviceEnrollmentConfigurationsList, error)

GetDeviceEnrollmentConfigurations retrieves a list of all device enrollment configurations.

func (*Client) GetDeviceManagementAssignmentFilterByDisplayName added in v0.0.2

func (c *Client) GetDeviceManagementAssignmentFilterByDisplayName(displayName string) (*ResponseAssignmentFilter, error)

GetDeviceManagementAssignmentFilterByDisplayName retrieves a specific intune Assignment Filter by its display name.

func (*Client) GetDeviceManagementAssignmentFilterByID added in v0.0.2

func (c *Client) GetDeviceManagementAssignmentFilterByID(filterID string) (*ResponseAssignmentFilter, error)

GetDeviceManagementAssignmentFilterByID retrieves a specific Assignment Filter by its ID.

func (*Client) GetDeviceManagementAssignmentFilters added in v0.0.2

func (c *Client) GetDeviceManagementAssignmentFilters() (*ResponseAssignmentFiltersList, error)

GetDeviceManagementAssignmentFilters gets a list of all Intune Assignment Filters.

func (*Client) GetDeviceManagementConfigurationPolicies

func (c *Client) GetDeviceManagementConfigurationPolicies() (*ResponseDeviceManagementConfigurationPoliciesList, error)

GetDeviceManagementConfigurationPolicies retrieves a list of all device management configuration policies.

func (*Client) GetDeviceManagementConfigurationPolicyByID

func (c *Client) GetDeviceManagementConfigurationPolicyByID(policyId string) (*ResourceDeviceManagementConfigurationPolicy, error)

GetDeviceManagementConfigurationPolicyByID retrieves a specific device management configuration policy by its ID.

func (*Client) GetDeviceManagementConfigurationPolicyByName

func (c *Client) GetDeviceManagementConfigurationPolicyByName(policyName string) (*ResourceDeviceManagementConfigurationPolicy, error)

GetDeviceManagementConfigurationPolicyByName retrieves a specific device management configuration policy by its name.

func (*Client) GetDeviceManagementGroupPolicyConfigurationByID

func (c *Client) GetDeviceManagementGroupPolicyConfigurationByID(policyConfigurationId string) (*ResourceDeviceManagementGroupPolicyConfiguration, error)

GetDeviceManagementGroupPolicyConfigurationByID retrieves a specific Group Policy Configuration by its ID with expanded details.

func (*Client) GetDeviceManagementGroupPolicyConfigurationByName

func (c *Client) GetDeviceManagementGroupPolicyConfigurationByName(policyConfigurationName string) (*ResourceDeviceManagementGroupPolicyConfiguration, error)

GetDeviceManagementGroupPolicyConfigurationByName retrieves a specific Group Policy Configuration by its name.

func (*Client) GetDeviceManagementGroupPolicyConfigurations

func (c *Client) GetDeviceManagementGroupPolicyConfigurations() (*ResponseDeviceManagementGroupPolicyConfigurationsList, error)

Function to get the list of Group Policy Configurations

func (*Client) GetDeviceManagementReusablePolicySettingByID

func (c *Client) GetDeviceManagementReusablePolicySettingByID(policySettingId string) (*ResourceDeviceManagementReusablePolicySetting, error)

GetDeviceManagementReusablePolicySettingByID retrieves a specific device management Reusable Policy Setting by its ID.

func (*Client) GetDeviceManagementScriptAssignmentByID

func (c *Client) GetDeviceManagementScriptAssignmentByID(resourceTypeURI, resourceID string) (*AssignmentDeviceManagementScript, error)

GetDeviceManagementScriptAssignmentByID retrieves all group assignments for a specified resource.

func (*Client) GetDeviceManagementScriptByDisplayName

func (c *Client) GetDeviceManagementScriptByDisplayName(displayName string) (*ResponseDeviceManagementScript, error)

GetDeviceManagementScriptByDisplayName retrieves a device management script by its display name.

func (*Client) GetDeviceManagementScriptByID

func (c *Client) GetDeviceManagementScriptByID(id string) (*ResponseDeviceManagementScript, error)

GetDeviceManagementScriptByID retrieves a Device Management Script by its ID.

func (*Client) GetDeviceManagementScripts

func (c *Client) GetDeviceManagementScripts() (*ResponseDeviceManagementScriptsList, error)

GetDeviceManagementScripts gets a list of all Intune Device Management Scripts with expanded information on assignments.

func (*Client) GetDeviceProactiveRemediationScriptByDisplayName added in v0.0.2

func (c *Client) GetDeviceProactiveRemediationScriptByDisplayName(displayName string) (*ResponseProactiveRemediation, error)

GetProactiveRemediationByDisplayName retrieves a specific Proactive Remediation by its name along with its assignments.

func (*Client) GetDeviceProactiveRemediationScriptByID added in v0.0.2

func (c *Client) GetDeviceProactiveRemediationScriptByID(id string) (*ResponseProactiveRemediation, error)

GetDeviceProactiveRemediationScriptByID retrieves a Device Shell Script by its ID.

func (*Client) GetDeviceProactiveRemediationScripts added in v0.0.2

func (c *Client) GetDeviceProactiveRemediationScripts() (*ResponseProactiveRemediationsList, error)

GetDeviceProactiveRemediationScripts retrieves a list of Proactive Remediations (Device Health Scripts) from Microsoft Graph API.

func (*Client) GetDeviceShellScriptByDisplayName

func (c *Client) GetDeviceShellScriptByDisplayName(displayName string) (*ResponseDeviceShellScript, error)

GetDeviceShellScriptByDisplayName retrieves a device shell script by its display name.

func (*Client) GetDeviceShellScriptByID

func (c *Client) GetDeviceShellScriptByID(id string) (*ResponseDeviceShellScript, error)

GetDeviceShellScriptByID retrieves a Device Shell Script by its ID.

func (*Client) GetDeviceShellScripts

func (c *Client) GetDeviceShellScripts() (*ResponseDeviceShellScriptsList, error)

GetDeviceShellScripts gets a list of all Intune Device Shell Scripts with expanded information on assignments.

func (*Client) GetProactiveRemediationScriptAssignmentByID added in v0.0.2

func (c *Client) GetProactiveRemediationScriptAssignmentByID(scriptID string, assignmentID string) (*ResponseDeviceHealthScriptAssignment, error)

GetProactiveRemediationScriptAssignmentByID retrieves a specific assignment for a proactive remediation script by ID.

func (*Client) GetProactiveRemediationScriptAssignments added in v0.0.2

func (c *Client) GetProactiveRemediationScriptAssignments(scriptID string) (*ResponseDeviceHealthScriptAssignmentList, error)

GetProactiveRemediationScriptAssignments retrieves a list of assignments for a intune proactive remediation script.

func (*Client) GetResourceDeviceManagementReusablePolicySettings

func (c *Client) GetResourceDeviceManagementReusablePolicySettings() ([]ResourceDeviceManagementReusablePolicySetting, error)

GetResourceDeviceManagementReusablePolicySettings retrieves a list of all device management reusable policy settings.

func (*Client) GetWindowsDeviceConfigurationProfileByID added in v0.0.2

func (c *Client) GetWindowsDeviceConfigurationProfileByID(id string) (*ResourceWindowsConfigurationProfileTemplate, error)

GetWindowsDeviceConfigurationProfileByID retrieves a Windows device configuration profile by ID from Microsoft Graph API. This function verifies that the called profile ID corresponds to a Windows configuration profile. It also decrypts any encrypted OMA settings within the profile if present.

func (*Client) GetWindowsDeviceConfigurationProfiles added in v0.0.2

func (c *Client) GetWindowsDeviceConfigurationProfiles() (*ResourceWindowsConfigurationProfileTemplatesList, error)

GetWindowsDeviceConfigurationProfiles retrieves a list of Windows device configuration profiles from Microsoft Graph API. Because this is a shared endpoint, an OdataType match is used to filter the response so that only windows configuration profiles are returned.

func (*Client) ReorderDeviceManagementConfigurationPolicyByID

func (c *Client) ReorderDeviceManagementConfigurationPolicyByID(policyId string, newPriority int) (*ResourceDeviceManagementConfigurationPolicy, error)

ReorderDeviceManagementConfigurationPolicyByID updates the priority of a device management configuration policy.

func (*Client) UpdateDeviceCategoryByDisplayName

func (c *Client) UpdateDeviceCategoryByDisplayName(categoryName string, updateRequest *ResourceDeviceCategory) (*ResourceDeviceCategory, error)

UpdateDeviceCategoryByDisplayName updates a specific Device Category identified by its name.

func (*Client) UpdateDeviceCategoryByID

func (c *Client) UpdateDeviceCategoryByID(deviceCategoryId string, updateRequest *ResourceDeviceCategory) (*ResourceDeviceCategory, error)

UpdateDeviceCategoryByID updates a specific Device Category identified by its ID.

func (*Client) UpdateDeviceComplianceScriptByDisplayName

func (c *Client) UpdateDeviceComplianceScriptByDisplayName(displayName string, updateRequest *ResourceDeviceComplianceScript) (*ResponseDeviceComplianceScript, error)

UpdateDeviceComplianceScriptByDisplayName updates an existing Device Compliance script by its display name. Since there is no dedicated endpoint for this, it first retrieves the script by name to get its ID, then updates it using the UpdateDeviceComplianceScriptByID function.

func (*Client) UpdateDeviceComplianceScriptByID

func (c *Client) UpdateDeviceComplianceScriptByID(scriptID string, request *ResourceDeviceComplianceScript) (*ResponseDeviceComplianceScript, error)

UpdateDeviceComplianceScriptByID updates a Device compliance Script by its ID using the PATCH method.

func (*Client) UpdateDeviceManagementAssignmentFilterByDisplayName added in v0.0.2

func (c *Client) UpdateDeviceManagementAssignmentFilterByDisplayName(displayName string, request *ResourceDeviceManagementAssignmentFilter) (*ResponseAssignmentFilter, error)

UpdateDeviceManagementAssignmentFilterByDisplayName updates a specific Assignment Filter by its display name.

func (*Client) UpdateDeviceManagementAssignmentFilterByID added in v0.0.2

func (c *Client) UpdateDeviceManagementAssignmentFilterByID(filterID string, request *ResourceDeviceManagementAssignmentFilter) (*ResponseAssignmentFilter, error)

UpdateDeviceManagementAssignmentFilterByID updates a specific Assignment Filter by its ID.

func (*Client) UpdateDeviceManagementConfigurationPolicyByID

func (c *Client) UpdateDeviceManagementConfigurationPolicyByID(policyId string, request *ResourceDeviceManagementConfigurationPolicy) (*ResourceDeviceManagementConfigurationPolicy, error)

UpdateDeviceManagementConfigurationPolicyByID updates an existing device management configuration policy by its ID.

func (*Client) UpdateDeviceManagementScriptByDisplayName

func (c *Client) UpdateDeviceManagementScriptByDisplayName(displayName string, updateRequest *ResourceDeviceManagementScript) (*ResponseDeviceManagementScript, error)

UpdateDeviceManagementScriptByDisplayName updates an existing device management script by its display name. Since there is no dedicated endpoint for this, it first retrieves the script by name to get its ID, then updates it using the UpdateDeviceManagementScriptByID function.

func (*Client) UpdateDeviceManagementScriptByID

func (c *Client) UpdateDeviceManagementScriptByID(scriptID string, request *ResourceDeviceManagementScript) (*ResponseDeviceManagementScript, error)

UpdateDeviceManagementScriptByID updates a Device Management Script by its ID using the PATCH method.

func (*Client) UpdateDeviceProactiveRemediationScriptByDisplayName added in v0.0.2

func (c *Client) UpdateDeviceProactiveRemediationScriptByDisplayName(displayName string, updateRequest *ResourceProactiveRemediation) (*ResponseProactiveRemediation, error)

UpdateDeviceProactiveRemediationScriptByDisplayName updates an existing Device Shell script by its display name. Since there is no dedicated endpoint for this, it first retrieves the script by name to get its ID, then updates it using the UpdateProactiveRemediationByID function.

func (*Client) UpdateDeviceProactiveRemediationScriptByID added in v0.0.2

func (c *Client) UpdateDeviceProactiveRemediationScriptByID(scriptID string, request *ResourceProactiveRemediation) (*ResponseProactiveRemediation, error)

UpdateDeviceProactiveRemediationScriptByID updates a Device Shell Script by its ID using the PATCH method.

func (*Client) UpdateDeviceShellScriptByDisplayName

func (c *Client) UpdateDeviceShellScriptByDisplayName(displayName string, updateRequest *ResourceDeviceShellScript) (*ResponseDeviceShellScript, error)

UpdateDeviceShellScriptByDisplayName updates an existing Device Shell script by its display name. Since there is no dedicated endpoint for this, it first retrieves the script by name to get its ID, then updates it using the UpdateDeviceShellScriptByID function.

func (*Client) UpdateDeviceShellScriptByID

func (c *Client) UpdateDeviceShellScriptByID(scriptID string, request *ResourceDeviceShellScript) (*ResponseDeviceShellScript, error)

UpdateDeviceShellScriptByID updates a Device Shell Script by its ID using the PATCH method.

type ClientConfig added in v0.0.2

type ClientConfig struct {
	Auth          httpclient.AuthConfig
	Environment   httpclient.EnvironmentConfig
	ClientOptions httpclient.ClientOptions
}

ClientConfig combines authentication and environment settings for the client.

type ConfigurationManagerCollectionTarget added in v0.0.2

type ConfigurationManagerCollectionTarget struct {
	ODataType                                  string `json:"@odata.type"`
	DeviceAndAppManagementAssignmentFilterID   string `json:"deviceAndAppManagementAssignmentFilterId"`
	DeviceAndAppManagementAssignmentFilterType string `json:"deviceAndAppManagementAssignmentFilterType"`
	CollectionID                               string `json:"collectionId"`
}

ConfigurationManagerCollectionTarget represents the target for the device health script assignment.

type DeliveryOptimizationSubsetBandwidthMode added in v0.0.2

type DeliveryOptimizationSubsetBandwidthMode struct {
	MaximumDownloadBandwidthInKilobytesPerSecond int `json:"maximumDownloadBandwidthInKilobytesPerSecond,omitempty"`
	MaximumUploadBandwidthInKilobytesPerSecond   int `json:"maximumUploadBandwidthInKilobytesPerSecond,omitempty"`
}

DeliveryOptimizationSubsetBandwidthMode represents the bandwidth mode configuration in Delivery Optimization.

type DeliveryOptimizationSubsetMaximumCacheSize added in v0.0.2

type DeliveryOptimizationSubsetMaximumCacheSize struct {
	MaximumCacheSizeInGigabytes int `json:"maximumCacheSizeInGigabytes,omitempty"`
}

DeliveryOptimizationSubsetMaximumCacheSize represents the maximum cache size configuration in Delivery Optimization.

type DeviceComplianceAssignment

type DeviceComplianceAssignment struct {
	ODataType            string                            `json:"@odata.type"`
	ID                   string                            `json:"id"`
	RunRemediationScript bool                              `json:"runRemediationScript"`
	Target               DeviceComplianceAssignmentTarget  `json:"target"`
	RunSchedule          DeviceComplianceScriptRunSchedule `json:"runSchedule"`
}

DeviceComplianceAssignment represents an assignment for a Device Compliance Script.

type DeviceComplianceAssignmentItem added in v0.0.2

type DeviceComplianceAssignmentItem struct {
	ODataType            string                                    `json:"@odata.type"`
	ID                   string                                    `json:"id"`
	RunRemediationScript bool                                      `json:"runRemediationScript"`
	Target               DeviceComplianceAssignmentItemTarget      `json:"target"`
	RunSchedule          DeviceComplianceAssignmentItemRunSchedule `json:"runSchedule"`
}

DeviceComplianceAssignmentItem represents an assignment for a Device Compliance Script.

type DeviceComplianceAssignmentItemRunSchedule added in v0.0.2

type DeviceComplianceAssignmentItemRunSchedule struct {
	ODataType string `json:"@odata.type"`
	Interval  int    `json:"interval"`
	UseUTC    bool   `json:"useUtc"`
	Time      string `json:"time"`
}

DeviceComplianceAssignmentItemRunSchedule represents the schedule for running a compliance script.

type DeviceComplianceAssignmentItemTarget added in v0.0.2

type DeviceComplianceAssignmentItemTarget struct {
	ODataType                                  string `json:"@odata.type"`
	DeviceAndAppManagementAssignmentFilterID   string `json:"deviceAndAppManagementAssignmentFilterId"`
	DeviceAndAppManagementAssignmentFilterType string `json:"deviceAndAppManagementAssignmentFilterType"`
	CollectionID                               string `json:"collectionId"`
}

DeviceComplianceAssignmentItemTarget represents the target of a compliance script assignment.

type DeviceComplianceAssignmentTarget

type DeviceComplianceAssignmentTarget struct {
	ODataType                                  string `json:"@odata.type"`
	DeviceAndAppManagementAssignmentFilterID   string `json:"deviceAndAppManagementAssignmentFilterId"`
	DeviceAndAppManagementAssignmentFilterType string `json:"deviceAndAppManagementAssignmentFilterType"`
	GroupID                                    string `json:"groupId"`
}

DeviceComplianceAssignmentTarget represents the target of a compliance script assignment.

type DeviceComplianceScriptRunSchedule

type DeviceComplianceScriptRunSchedule struct {
	ODataType string `json:"@odata.type"`
	Interval  int    `json:"interval"`
}

DeviceComplianceScriptRunSchedule represents the schedule for running a compliance script.

type DeviceConfigurationProfileAssignment added in v0.0.2

type DeviceConfigurationProfileAssignment struct {
	ID       string                                     `json:"id,omitempty"`
	Source   string                                     `json:"source,omitempty"`
	SourceId string                                     `json:"sourceId,omitempty"`
	Intent   string                                     `json:"intent,omitempty"`
	Target   DeviceConfigurationProfileAssignmentTarget `json:"target,omitempty"`
}

DeviceConfigurationProfileAssignment represents an assignment for a Device Configuration Profile.

type DeviceConfigurationProfileAssignmentTarget added in v0.0.2

type DeviceConfigurationProfileAssignmentTarget struct {
	ODataType                                  string `json:"@odata.type,omitempty"`
	GroupId                                    string `json:"groupId,omitempty"`
	DeviceAndAppManagementAssignmentFilterId   string `json:"deviceAndAppManagementAssignmentFilterId,omitempty"`
	DeviceAndAppManagementAssignmentFilterType string `json:"deviceAndAppManagementAssignmentFilterType,omitempty"`
}

DeviceConfigurationProfileAssignmentTarget represents the target of a configuration profile assignment.

type DeviceConfigurationProfileOmaSetting added in v0.0.2

type DeviceConfigurationProfileOmaSetting struct {
	ODataType              string      `json:"@odata.type,omitempty"`
	DisplayName            string      `json:"displayName,omitempty"`
	Description            string      `json:"description,omitempty"`
	OmaUri                 string      `json:"omaUri,omitempty"`
	SecretReferenceValueId string      `json:"secretReferenceValueId,omitempty"`
	IsEncrypted            bool        `json:"isEncrypted,omitempty"`
	Value                  interface{} `json:"value,omitempty"`
	IsReadOnly             bool        `json:"isReadOnly,omitempty"`
	FileName               string      `json:"fileName,omitempty"`
}

Modify the DeviceConfigurationProfileOmaSetting struct to handle additional fields.

type DeviceHealthScriptAssignmentItem added in v0.0.2

type DeviceHealthScriptAssignmentItem struct {
	ODataType            string                               `json:"@odata.type"`
	ID                   string                               `json:"id"`
	Target               ConfigurationManagerCollectionTarget `json:"target"`
	RunRemediationScript bool                                 `json:"runRemediationScript"`
	RunSchedule          DeviceHealthScriptAssignmentSchedule `json:"runSchedule"`
}

DeviceHealthScriptAssignment represents an individual device health script assignment.

type DeviceHealthScriptAssignmentSchedule added in v0.0.2

type DeviceHealthScriptAssignmentSchedule struct {
	ODataType string `json:"@odata.type"`
	Interval  int    `json:"interval"`
	UseUTC    bool   `json:"useUtc"`
	Time      string `json:"time"`
}

DeviceHealthScriptAssignmentSchedule represents the schedule for a device health script assignment.

type DeviceHealthScriptParameter

type DeviceHealthScriptParameter struct {
	ODataType                        string `json:"@odata.type,omitempty"`
	Name                             string `json:"name,omitempty"`
	Description                      string `json:"description,omitempty"`
	IsRequired                       bool   `json:"isRequired,omitempty"`
	ApplyDefaultValueWhenNotAssigned bool   `json:"applyDefaultValueWhenNotAssigned,omitempty"`
	DefaultValue                     string `json:"defaultValue,omitempty"`
}

DeviceHealthScriptParameter represents a parameter for a device health script, which can be used in either detection or remediation scripts.

type DeviceManagementApplicabilityRuleDeviceMode added in v0.0.2

type DeviceManagementApplicabilityRuleDeviceMode struct {
	ODataType  string `json:"@odata.type,omitempty"`
	DeviceMode string `json:"deviceMode,omitempty"`
	Name       string `json:"name,omitempty"`
	RuleType   string `json:"ruleType,omitempty"`
}

DeviceManagementApplicabilityRuleDeviceMode represents the device mode applicability rule.

type DeviceManagementApplicabilityRuleOsEdition added in v0.0.2

type DeviceManagementApplicabilityRuleOsEdition struct {
	ODataType      string   `json:"@odata.type,omitempty"`
	OsEditionTypes []string `json:"osEditionTypes,omitempty"`
	Name           string   `json:"name,omitempty"`
	RuleType       string   `json:"ruleType,omitempty"`
}

DeviceManagementApplicabilityRuleOsEdition represents the OS edition applicability rule.

type DeviceManagementApplicabilityRuleOsVersion added in v0.0.2

type DeviceManagementApplicabilityRuleOsVersion struct {
	ODataType    string `json:"@odata.type,omitempty"`
	MinOSVersion string `json:"minOSVersion,omitempty"`
	MaxOSVersion string `json:"maxOSVersion,omitempty"`
	Name         string `json:"name,omitempty"`
	RuleType     string `json:"ruleType,omitempty"`
}

DeviceManagementApplicabilityRuleOsVersion represents the OS version applicability rule.

type DeviceManagementConfigurationChoiceSettingInstance

type DeviceManagementConfigurationChoiceSettingInstance struct {
	OdataType                        string                                                         `json:"@odata.type"`
	SettingDefinitionId              string                                                         `json:"settingDefinitionId"`
	SettingInstanceTemplateReference *DeviceManagementConfigurationSettingInstanceTemplateReference `json:"settingInstanceTemplateReference,omitempty"`
	ChoiceSettingValue               *DeviceManagementConfigurationChoiceSettingValue               `json:"choiceSettingValue,omitempty"`
}

DeviceManagementConfigurationChoiceSettingInstance represents an instance of a choice setting.

type DeviceManagementConfigurationChoiceSettingValue

type DeviceManagementConfigurationChoiceSettingValue struct {
	OdataType                     string                                                      `json:"@odata.type"`
	SettingValueTemplateReference *DeviceManagementConfigurationSettingValueTemplateReference `json:"settingValueTemplateReference,omitempty"`
	Value                         string                                                      `json:"value"`
	Children                      []*DeviceManagementConfigurationChoiceSettingInstance       `json:"children,omitempty"`
}

DeviceManagementConfigurationChoiceSettingValue represents the value of a choice setting.

type DeviceManagementConfigurationPolicySubsetTemplateReference

type DeviceManagementConfigurationPolicySubsetTemplateReference struct {
	OdataType              string `json:"@odata.type"`
	TemplateId             string `json:"templateId"`
	TemplateFamily         string `json:"templateFamily"`
	TemplateDisplayName    string `json:"templateDisplayName,omitempty"`
	TemplateDisplayVersion string `json:"templateDisplayVersion,omitempty"`
}

DeviceManagementConfigurationPolicyTemplateReference represents the template reference in a configuration policy.

type DeviceManagementConfigurationSettingInstanceTemplateReference

type DeviceManagementConfigurationSettingInstanceTemplateReference struct {
	OdataType                 string `json:"@odata.type"`
	SettingInstanceTemplateId string `json:"settingInstanceTemplateId"`
}

DeviceManagementConfigurationSettingInstanceTemplateReference represents a reference to a setting instance template.

type DeviceManagementConfigurationSettingValueTemplateReference

type DeviceManagementConfigurationSettingValueTemplateReference struct {
	OdataType              string `json:"@odata.type"`
	SettingValueTemplateId string `json:"settingValueTemplateId"`
	UseTemplateDefault     bool   `json:"useTemplateDefault"`
}

DeviceManagementConfigurationSettingValueTemplateReference represents a template reference for a setting value.

type DeviceManagementConfigurationSubsetChoiceSettingValue

type DeviceManagementConfigurationSubsetChoiceSettingValue struct {
	Value                         string                                               `json:"value"`
	Children                      []DeviceManagementConfigurationSubsetSettingInstance `json:"children"`
	SettingValueTemplateReference *DeviceManagementSettingValueTemplateReference       `json:"settingValueTemplateReference,omitempty"`
}

DeviceManagementConfigurationChoiceSettingValue represents the value of a choice setting.

type DeviceManagementConfigurationSubsetSetting

type DeviceManagementConfigurationSubsetSetting struct {
	ID              string                                             `json:"id"`
	SettingInstance DeviceManagementConfigurationSubsetSettingInstance `json:"settingInstance"`
}

DeviceManagementConfigurationSetting represents a configuration settings within a configuration policy.

type DeviceManagementConfigurationSubsetSettingInstance

type DeviceManagementConfigurationSubsetSettingInstance struct {
	OdataType                        string                                                       `json:"@odata.type"`
	SettingDefinitionId              string                                                       `json:"settingDefinitionId"`
	SettingInstanceTemplateReference *DeviceManagementConfigurationSubsetSettingInstanceReference `json:"settingInstanceTemplateReference,omitempty"`
	ChoiceSettingValue               *DeviceManagementConfigurationSubsetChoiceSettingValue       `json:"choiceSettingValue,omitempty"`
	SimpleSettingValue               *DeviceManagementConfigurationSubsetSimpleSettingValue       `json:"simpleSettingValue,omitempty"`
}

DeviceManagementConfigurationSettingInstance represents an instance of a configuration setting.

type DeviceManagementConfigurationSubsetSettingInstanceReference

type DeviceManagementConfigurationSubsetSettingInstanceReference struct {
	SettingInstanceTemplateId string `json:"settingInstanceTemplateId,omitempty"`
}

DeviceManagementConfigurationSettingInstanceReference represents a reference to a setting instance.

type DeviceManagementConfigurationSubsetSimpleSettingValue

type DeviceManagementConfigurationSubsetSimpleSettingValue struct {
	OdataType                     string                                         `json:"@odata.type"`
	SettingValueTemplateReference *DeviceManagementSettingValueTemplateReference `json:"settingValueTemplateReference,omitempty"`
	Value                         interface{}                                    `json:"value"`
}

DeviceManagementConfigurationSimpleSettingValue represents the value of a simple setting.

type DeviceManagementSettingValueTemplateReference

type DeviceManagementSettingValueTemplateReference struct {
	SettingValueTemplateId string `json:"settingValueTemplateId,omitempty"`
	UseTemplateDefault     bool   `json:"useTemplateDefault,omitempty"`
}

type DeviceManagementSubsetPriorityMetaData

type DeviceManagementSubsetPriorityMetaData struct {
	OdataType string `json:"@odata.type"`
	Priority  int    `json:"priority"`
}

DeviceManagementPriorityMetaData represents the priority metadata in a configuration policy.

type DeviceRestrictionsSubsetConfigureTimeZone added in v0.0.2

type DeviceRestrictionsSubsetConfigureTimeZone struct {
	// Define the fields based on the expected properties for ConfigureTimeZone
	// Example (adjust according to actual data model):
	TimeZoneName string `json:"timeZoneName,omitempty"`
}

type DeviceRestrictionsSubsetDefenderDetectedMalwareActions added in v0.0.2

type DeviceRestrictionsSubsetDefenderDetectedMalwareActions struct {
	LowSeverity      string `json:"lowSeverity,omitempty"`
	ModerateSeverity string `json:"moderateSeverity,omitempty"`
	HighSeverity     string `json:"highSeverity,omitempty"`
	SevereSeverity   string `json:"severeSeverity,omitempty"`
}

type DeviceRestrictionsSubsetEdgeSearchEngine added in v0.0.2

type DeviceRestrictionsSubsetEdgeSearchEngine struct {
	OdataType                        string `json:"@odata.type,omitempty"`
	EdgeSearchEngineOpenSearchXMLURL string `json:"edgeSearchEngineOpenSearchXmlUrl,omitempty"`
}

type DeviceRestrictionsSubsetNetworkProxyServer added in v0.0.2

type DeviceRestrictionsSubsetNetworkProxyServer struct {
	Address              string   `json:"address,omitempty"`
	Exceptions           []string `json:"exceptions,omitempty"`
	UseForLocalAddresses bool     `json:"useForLocalAddresses,omitempty"`
}

type DynamicValue

type DynamicValue struct {
	// Use an interface to hold the actual value.
	Value interface{} `json:"Value"`
}

DynamicValue is a type that can hold different types of values, allowing for dynamic handling of the 'value' field in Group Policy Presentation Values.

func (*DynamicValue) UnmarshalJSON

func (dv *DynamicValue) UnmarshalJSON(data []byte) error

UnmarshalJSON is a custom unmarshaler for DynamicValue, allowing it to dynamically handle different data types in JSON. When unmarshaling JSON data, it attempts to decode the value into one of several basic data types: int, float64, bool, or string. If none of these types are compatible, the value is treated as a raw JSON message. This approach provides flexibility in handling various types of data that might be encountered in a graph JSON payload, ensuring that the DynamicValue struct can accommodate a wide range of JSON structures and types.

type EndpointProtectionSubsetBitLockerFixedDrivePolicy added in v0.0.2

type EndpointProtectionSubsetBitLockerFixedDrivePolicy struct {
	EncryptionMethod                string                   `json:"encryptionMethod,omitempty"`
	RequireEncryptionForWriteAccess bool                     `json:"requireEncryptionForWriteAccess,omitempty"`
	RecoveryOptions                 BitLockerRecoveryOptions `json:"recoveryOptions,omitempty"`
}

EndpointProtectionSubsetBitLockerFixedDrivePolicy represents the policy for BitLocker on fixed drives.

type EndpointProtectionSubsetBitLockerRemovableDrivePolicy added in v0.0.2

type EndpointProtectionSubsetBitLockerRemovableDrivePolicy struct {
	EncryptionMethod                  string `json:"encryptionMethod,omitempty"`
	RequireEncryptionForWriteAccess   bool   `json:"requireEncryptionForWriteAccess,omitempty"`
	BlockCrossOrganizationWriteAccess bool   `json:"blockCrossOrganizationWriteAccess,omitempty"`
}

EndpointProtectionSubsetBitLockerRemovableDrivePolicy represents the policy for BitLocker on removable drives.

type EndpointProtectionSubsetBitLockerSystemDrivePolicy added in v0.0.2

type EndpointProtectionSubsetBitLockerSystemDrivePolicy struct {
	EncryptionMethod                         string                   `json:"encryptionMethod,omitempty"`
	StartupAuthenticationRequired            bool                     `json:"startupAuthenticationRequired,omitempty"`
	StartupAuthenticationBlockWithoutTpmChip bool                     `json:"startupAuthenticationBlockWithoutTpmChip,omitempty"`
	StartupAuthenticationTpmUsage            string                   `json:"startupAuthenticationTpmUsage,omitempty"`
	StartupAuthenticationTpmPinUsage         string                   `json:"startupAuthenticationTpmPinUsage,omitempty"`
	StartupAuthenticationTpmKeyUsage         string                   `json:"startupAuthenticationTpmKeyUsage,omitempty"`
	StartupAuthenticationTpmPinAndKeyUsage   string                   `json:"startupAuthenticationTpmPinAndKeyUsage,omitempty"`
	MinimumPinLength                         int                      `json:"minimumPinLength,omitempty"`
	PrebootRecoveryEnableMessageAndURL       bool                     `json:"prebootRecoveryEnableMessageAndUrl,omitempty"`
	PrebootRecoveryMessage                   interface{}              `json:"prebootRecoveryMessage,omitempty"`
	PrebootRecoveryURL                       interface{}              `json:"prebootRecoveryUrl,omitempty"`
	RecoveryOptions                          BitLockerRecoveryOptions `json:"recoveryOptions,omitempty"`
}

EndpointProtectionSubsetitLockerSystemDrivePolicy represents the policy for BitLocker on the system drive.

type EndpointProtectionSubsetFirewallProfile added in v0.0.2

type EndpointProtectionSubsetFirewallProfile struct {
	FirewallEnabled                                    string `json:"firewallEnabled,omitempty"`
	StealthModeRequired                                bool   `json:"stealthModeRequired,omitempty"`
	StealthModeBlocked                                 bool   `json:"stealthModeBlocked,omitempty"`
	IncomingTrafficRequired                            bool   `json:"incomingTrafficRequired,omitempty"`
	IncomingTrafficBlocked                             bool   `json:"incomingTrafficBlocked,omitempty"`
	UnicastResponsesToMulticastBroadcastsRequired      bool   `json:"unicastResponsesToMulticastBroadcastsRequired,omitempty"`
	UnicastResponsesToMulticastBroadcastsBlocked       bool   `json:"unicastResponsesToMulticastBroadcastsBlocked,omitempty"`
	InboundNotificationsRequired                       bool   `json:"inboundNotificationsRequired,omitempty"`
	InboundNotificationsBlocked                        bool   `json:"inboundNotificationsBlocked,omitempty"`
	AuthorizedApplicationRulesFromGroupPolicyMerged    bool   `json:"authorizedApplicationRulesFromGroupPolicyMerged,omitempty"`
	AuthorizedApplicationRulesFromGroupPolicyNotMerged bool   `json:"authorizedApplicationRulesFromGroupPolicyNotMerged,omitempty"`
	GlobalPortRulesFromGroupPolicyMerged               bool   `json:"globalPortRulesFromGroupPolicyMerged,omitempty"`
	GlobalPortRulesFromGroupPolicyNotMerged            bool   `json:"globalPortRulesFromGroupPolicyNotMerged,omitempty"`
	ConnectionSecurityRulesFromGroupPolicyMerged       bool   `json:"connectionSecurityRulesFromGroupPolicyMerged,omitempty"`
	ConnectionSecurityRulesFromGroupPolicyNotMerged    bool   `json:"connectionSecurityRulesFromGroupPolicyNotMerged,omitempty"`
	OutboundConnectionsRequired                        bool   `json:"outboundConnectionsRequired,omitempty"`
	OutboundConnectionsBlocked                         bool   `json:"outboundConnectionsBlocked,omitempty"`
	InboundConnectionsRequired                         bool   `json:"inboundConnectionsRequired,omitempty"`
	InboundConnectionsBlocked                          bool   `json:"inboundConnectionsBlocked,omitempty"`
	SecuredPacketExemptionAllowed                      bool   `json:"securedPacketExemptionAllowed,omitempty"`
	SecuredPacketExemptionBlocked                      bool   `json:"securedPacketExemptionBlocked,omitempty"`
	PolicyRulesFromGroupPolicyMerged                   bool   `json:"policyRulesFromGroupPolicyMerged,omitempty"`
	PolicyRulesFromGroupPolicyNotMerged                bool   `json:"policyRulesFromGroupPolicyNotMerged,omitempty"`
}

EndpointProtectionSubsetFirewallProfile

type EndpointProtectionSubsetFirewallRule added in v0.0.2

type EndpointProtectionSubsetFirewallRule struct {
	DisplayName             string        `json:"displayName,omitempty"`
	Description             string        `json:"description,omitempty"`
	PackageFamilyName       interface{}   `json:"packageFamilyName,omitempty"`
	FilePath                interface{}   `json:"filePath,omitempty"`
	ServiceName             interface{}   `json:"serviceName,omitempty"`
	Protocol                interface{}   `json:"protocol,omitempty"`
	LocalPortRanges         []interface{} `json:"localPortRanges,omitempty"`
	RemotePortRanges        []interface{} `json:"remotePortRanges,omitempty"`
	LocalAddressRanges      []string      `json:"localAddressRanges,omitempty"`
	RemoteAddressRanges     []string      `json:"remoteAddressRanges,omitempty"`
	ProfileTypes            string        `json:"profileTypes,omitempty"`
	Action                  string        `json:"action,omitempty"`
	TrafficDirection        string        `json:"trafficDirection,omitempty"`
	InterfaceTypes          string        `json:"interfaceTypes,omitempty"`
	EdgeTraversal           string        `json:"edgeTraversal,omitempty"`
	LocalUserAuthorizations interface{}   `json:"localUserAuthorizations,omitempty"`
}

EndpointProtectionSubsetFirewallRule

type EndpointProtectionSubsetUserRights added in v0.0.2

type EndpointProtectionSubsetUserRights struct {
	State              string               `json:"state,omitempty"`
	LocalUsersOrGroups []LocalUsersOrGroups `json:"localUsersOrGroups,omitempty"`
}

type EnrollmentAssignmentTarget

type EnrollmentAssignmentTarget struct {
	OdataType                                  string `json:"@odata.type"`
	DeviceAndAppManagementAssignmentFilterId   string `json:"deviceAndAppManagementAssignmentFilterId"`
	DeviceAndAppManagementAssignmentFilterType string `json:"deviceAndAppManagementAssignmentFilterType"`
	TargetType                                 string `json:"targetType"`
	EntraObjectId                              string `json:"entraObjectId"`
}

EnrollmentAssignmentTarget represents the target for an enrollment configuration assignment.

type EnrollmentConfigurationAssignment

type EnrollmentConfigurationAssignment struct {
	OdataType string                     `json:"@odata.type"`
	ID        string                     `json:"id"`
	Target    EnrollmentAssignmentTarget `json:"target"`
	Source    string                     `json:"source"`
	SourceId  string                     `json:"sourceId"`
}

EnrollmentConfigurationAssignment represents an enrollment configuration assignment.

type GroupPolicyDefinition

type GroupPolicyDefinition struct {
	ID          string `json:"id"`
	DisplayName string `json:"displayName"`
	Description string `json:"description"`
}

GroupPolicyDefinition represents the basic information of a Group Policy Definition.

type GroupPolicyDefinitionValue

type GroupPolicyDefinitionValue struct {
	ID                   string                         `json:"id"`
	Enabled              bool                           `json:"enabled"`
	ConfigurationType    string                         `json:"configurationType"`
	CreatedDateTime      time.Time                      `json:"createdDateTime"`
	LastModifiedDateTime time.Time                      `json:"lastModifiedDateTime"`
	Definition           *GroupPolicyDefinition         `json:"definition,omitempty"`
	PresentationValues   []GroupPolicyPresentationValue `json:"presentationValues,omitempty"`
}

GroupPolicyDefinitionValue represents a single Group Policy Definition Value, including its associated definitions and presentation values.

type GroupPolicyPresentation

type GroupPolicyPresentation struct {
	Label       string             `json:"label"`
	ID          string             `json:"id"`
	Required    bool               `json:"required"`
	DefaultItem PresentationItem   `json:"defaultItem"`
	Items       []PresentationItem `json:"items"`
}

GroupPolicyPresentation defines the presentation details for a Group Policy Presentation Value, such as labels, items, and default values.

type GroupPolicyPresentationValue

type GroupPolicyPresentationValue struct {
	ID                   string                  `json:"id"`
	LastModifiedDateTime time.Time               `json:"lastModifiedDateTime"`
	CreatedDateTime      time.Time               `json:"createdDateTime"`
	Label                string                  `json:"label"`
	Description          string                  `json:"description"`
	ValueType            string                  `json:"valueType"`
	Value                DynamicValue            `json:"value"`
	Presentation         GroupPolicyPresentation `json:"presentation,omitempty"`
}

GroupPolicyPresentationValue represents a presentation value for a Group Policy Definition Value, including its type and value.

type KioskSubsetKioskProfile added in v0.0.2

type KioskSubsetKioskProfile struct {
	ProfileID                 string                     `json:"profileId"`
	ProfileName               string                     `json:"profileName"`
	AppConfiguration          WindowsKioskSingleWin32App `json:"appConfiguration"`
	UserAccountsConfiguration []WindowsKioskAutologon    `json:"userAccountsConfiguration"`
}

KioskProfile represents the 'kioskProfiles' JSON object.

type KioskSubsetWindowsKioskForceUpdateSchedule added in v0.0.2

type KioskSubsetWindowsKioskForceUpdateSchedule struct {
	StartDateTime                      time.Time `json:"startDateTime"`
	Recurrence                         string    `json:"recurrence"`
	DayOfWeek                          string    `json:"dayofWeek"`
	DayOfMonth                         int       `json:"dayofMonth"`
	RunImmediatelyIfAfterStartDateTime bool      `json:"runImmediatelyIfAfterStartDateTime"`
}

KioskSubsetWindowsKioskForceUpdateSchedule represents the 'windowsKioskForceUpdateSchedule' JSON object.

type LocalUsersOrGroups added in v0.0.2

type LocalUsersOrGroups struct {
	Name               string `json:"name,omitempty"`
	Description        string `json:"description,omitempty"`
	SecurityIdentifier string `json:"securityIdentifier,omitempty"`
}

type PresentationItem

type PresentationItem struct {
	DisplayName string `json:"displayName"`
	Value       string `json:"value"`
}

PresentationItem represents an individual item in a Group Policy Presentation dropdown or similar collection.

type ResourceDeviceCategory

type ResourceDeviceCategory struct {
	OdataType   string `json:"@odata.type"`
	ID          string `json:"id"`
	DisplayName string `json:"displayName"`
	Description string `json:"description"`
}

ResourceDeviceCategory represents an individual Device Category resource from Microsoft Graph API.

type ResourceDeviceComplianceScript

type ResourceDeviceComplianceScript struct {
	ODataType              string   `json:"@odata.type,omitempty"`
	Publisher              string   `json:"publisher,omitempty"`
	Version                string   `json:"version,omitempty"`
	DisplayName            string   `json:"displayName,omitempty"`
	Description            string   `json:"description,omitempty"`
	DetectionScriptContent string   `json:"detectionScriptContent,omitempty"`
	RunAsAccount           string   `json:"runAsAccount,omitempty"`
	EnforceSignatureCheck  bool     `json:"enforceSignatureCheck,omitempty"`
	RunAs32Bit             bool     `json:"runAs32Bit,omitempty"`
	RoleScopeTagIds        []string `json:"roleScopeTagIds,omitempty"`
}

ResourceDeviceComplianceScript represents the request structure for creating a device compliance script.

type ResourceDeviceEnrollmentConfiguration

type ResourceDeviceEnrollmentConfiguration struct {
	OdataType            string    `json:"@odata.type"`
	ID                   string    `json:"id"`
	DisplayName          string    `json:"displayName"`
	Description          string    `json:"description"`
	Priority             int       `json:"priority"`
	CreatedDateTime      time.Time `json:"createdDateTime"`
	LastModifiedDateTime time.Time `json:"lastModifiedDateTime"`
	Version              int       `json:"version"`
}

DeviceEnrollmentConfiguration represents a device enrollment configuration.

type ResourceDeviceEnrollmentConfigurationAssignmentsList

type ResourceDeviceEnrollmentConfigurationAssignmentsList struct {
	Value []EnrollmentConfigurationAssignment `json:"value"`
}

ResourceDeviceEnrollmentConfigurationAssignmentsList represents the response structure for device enrollment configuration assignments.

type ResourceDeviceEnrollmentConfigurationsList

type ResourceDeviceEnrollmentConfigurationsList struct {
	Value []ResourceDeviceEnrollmentConfiguration `json:"value"`
}

ResourceDeviceEnrollmentConfigurationsList represents the response structure for device enrollment configuration requests.

type ResourceDeviceHealthScriptAssignment added in v0.0.2

type ResourceDeviceHealthScriptAssignment struct {
	ODataType            string                                       `json:"@odata.type"`
	Target               ResourceDeviceHealthScriptAssignmentTarget   `json:"target"`
	RunRemediationScript bool                                         `json:"runRemediationScript"`
	RunSchedule          ResourceDeviceHealthScriptAssignmentSchedule `json:"runSchedule"`
}

ResourceDeviceHealthScriptAssignment represents the request structure for creating a device health script assignment.

type ResourceDeviceHealthScriptAssignmentSchedule added in v0.0.2

type ResourceDeviceHealthScriptAssignmentSchedule struct {
	ODataType string `json:"@odata.type"`
	Interval  int    `json:"interval"`
	UseUTC    bool   `json:"useUtc"`
	Time      string `json:"time"`
}

ResourceDeviceHealthScriptAssignmentSchedule represents the schedule for a device health script assignment.

type ResourceDeviceHealthScriptAssignmentTarget added in v0.0.2

type ResourceDeviceHealthScriptAssignmentTarget struct {
	ODataType                                  string `json:"@odata.type"`
	DeviceAndAppManagementAssignmentFilterID   string `json:"deviceAndAppManagementAssignmentFilterId"`
	DeviceAndAppManagementAssignmentFilterType string `json:"deviceAndAppManagementAssignmentFilterType"`
	CollectionID                               string `json:"collectionId"`
}

ResourceDeviceHealthScriptAssignmentTarget represents the target for the device health script assignment.

type ResourceDeviceManagementAssignmentFilter added in v0.0.2

type ResourceDeviceManagementAssignmentFilter struct {
	ODataType                      string                                            `json:"@odata.type"`
	DisplayName                    string                                            `json:"displayName"`
	Description                    string                                            `json:"description"`
	Platform                       string                                            `json:"platform"`
	Rule                           string                                            `json:"rule"`
	RoleScopeTags                  []string                                          `json:"roleScopeTags"`
	Payloads                       []ResourceDeviceManagementAssignmentFilterPayload `json:"payloads"`
	AssignmentFilterManagementType string                                            `json:"assignmentFilterManagementType"`
}

ResourceDeviceManagementAssignmentFilter represents the request payload for creating a new Assignment Filter.

type ResourceDeviceManagementAssignmentFilterPayload added in v0.0.2

type ResourceDeviceManagementAssignmentFilterPayload struct {
	ODataType            string `json:"@odata.type"`
	PayloadId            string `json:"payloadId"`
	PayloadType          string `json:"payloadType"`
	GroupId              string `json:"groupId"`
	AssignmentFilterType string `json:"assignmentFilterType"`
}

ResourceDeviceManagementAssignmentFilterPayload represents the payload part of an Assignment Filter.

type ResourceDeviceManagementConfigurationPolicy

type ResourceDeviceManagementConfigurationPolicy struct {
	OdataType            string                                                     `json:"@odata.type"`
	ID                   string                                                     `json:"id"`
	Name                 string                                                     `json:"name"`
	Description          string                                                     `json:"description"`
	Platforms            string                                                     `json:"platforms"`
	Technologies         string                                                     `json:"technologies"`
	CreatedDateTime      time.Time                                                  `json:"createdDateTime"`
	LastModifiedDateTime time.Time                                                  `json:"lastModifiedDateTime"`
	SettingCount         int                                                        `json:"settingCount"`
	CreationSource       string                                                     `json:"creationSource"`
	RoleScopeTagIds      []string                                                   `json:"roleScopeTagIds"`
	IsAssigned           bool                                                       `json:"isAssigned"`
	TemplateReference    DeviceManagementConfigurationPolicySubsetTemplateReference `json:"templateReference"`
	PriorityMetaData     *DeviceManagementSubsetPriorityMetaData                    `json:"priorityMetaData,omitempty"`
	Settings             []DeviceManagementConfigurationSubsetSetting               `json:"settings"`
}

ResourceDeviceManagementConfigurationPolicy represents a device management configuration policy.

type ResourceDeviceManagementGroupPolicyConfiguration

type ResourceDeviceManagementGroupPolicyConfiguration struct {
	OdataType                        string                       `json:"@odata.type"`
	ID                               string                       `json:"id"`
	DisplayName                      string                       `json:"displayName"`
	Description                      string                       `json:"description"`
	RoleScopeTagIds                  []string                     `json:"roleScopeTagIds"`
	PolicyConfigurationIngestionType string                       `json:"policyConfigurationIngestionType"`
	CreatedDateTime                  time.Time                    `json:"createdDateTime"`
	LastModifiedDateTime             time.Time                    `json:"lastModifiedDateTime"`
	DefinitionValues                 []GroupPolicyDefinitionValue `json:"definitionValues,omitempty"`
	Assignments                      []Assignment                 `json:"assignments,omitempty"`
}

ResourceDeviceManagementGroupPolicyConfiguration represents an individual Group Policy Configuration resource from Microsoft Graph API.

type ResourceDeviceManagementReusablePolicySetting

type ResourceDeviceManagementReusablePolicySetting struct {
	OdataType                           string                                              `json:"@odata.type"`
	ID                                  string                                              `json:"id"`
	DisplayName                         string                                              `json:"displayName"`
	Description                         string                                              `json:"description"`
	SettingDefinitionId                 string                                              `json:"settingDefinitionId"`
	SettingInstance                     *DeviceManagementConfigurationChoiceSettingInstance `json:"settingInstance,omitempty"`
	CreatedDateTime                     time.Time                                           `json:"createdDateTime"`
	LastModifiedDateTime                time.Time                                           `json:"lastModifiedDateTime"`
	Version                             int                                                 `json:"version"`
	ReferencingConfigurationPolicyCount int                                                 `json:"referencingConfigurationPolicyCount"`
}

ResourceDeviceManagementReusablePolicySetting represents a reusable policy setting resource in device management.

type ResourceDeviceManagementScript

type ResourceDeviceManagementScript struct {
	ODataType             string   `json:"@odata.type,omitempty"`
	DisplayName           string   `json:"displayName,omitempty"`
	Description           string   `json:"description,omitempty"`
	ScriptContent         string   `json:"scriptContent,omitempty"`
	RunAsAccount          string   `json:"runAsAccount,omitempty"`
	EnforceSignatureCheck bool     `json:"enforceSignatureCheck,omitempty"`
	FileName              string   `json:"fileName,omitempty"`
	RoleScopeTagIds       []string `json:"roleScopeTagIds,omitempty"`
	RunAs32Bit            bool     `json:"runAs32Bit,omitempty"`
}

ResourceDeviceManagementScript represents the request payload for creating and updating a new Device Management Script.

type ResourceDeviceManagementScriptAssignment

type ResourceDeviceManagementScriptAssignment struct {
	OdataType string `json:"@odata.type,omitempty"`
	ID        string `json:"id,omitempty"`
	Target    struct {
		OdataType                                  string `json:"@odata.type,omitempty"`
		DeviceAndAppManagementAssignmentFilterID   string `json:"deviceAndAppManagementAssignmentFilterId,omitempty"`
		DeviceAndAppManagementAssignmentFilterType string `json:"deviceAndAppManagementAssignmentFilterType,omitempty"`
		CollectionID                               string `json:"collectionId,omitempty"`
	} `json:"target,omitempty"`
}

ResourceDeviceManagementScriptAssignment represents an assignment of a device management script

type ResourceDeviceManagementScriptGroupAssignment

type ResourceDeviceManagementScriptGroupAssignment struct {
	OdataType     string `json:"@odata.type,omitempty"`
	ID            string `json:"id,omitempty"`
	TargetGroupID string `json:"targetGroupId,omitempty"`
}

ResourceDeviceManagementScriptGroupAssignment represents a group assignment of a device management script

type ResourceDeviceShellScript

type ResourceDeviceShellScript struct {
	ODataType                   string   `json:"@odata.type,omitempty"`
	ExecutionFrequency          string   `json:"executionFrequency,omitempty"`
	RetryCount                  int      `json:"retryCount,omitempty"`
	BlockExecutionNotifications bool     `json:"blockExecutionNotifications,omitempty"`
	DisplayName                 string   `json:"displayName,omitempty"`
	Description                 string   `json:"description,omitempty"`
	ScriptContent               string   `json:"scriptContent,omitempty"`
	RunAsAccount                string   `json:"runAsAccount,omitempty"`
	FileName                    string   `json:"fileName,omitempty"`
	RoleScopeTagIds             []string `json:"roleScopeTagIds,omitempty"`
}

ResourceDeviceShellScript represents the request payload for creating and updating a new Device Shell Script.

type ResourceProactiveRemediation

type ResourceProactiveRemediation struct {
	ODataType                   string                        `json:"@odata.type,omitempty"`
	Publisher                   string                        `json:"publisher,omitempty"`
	Version                     string                        `json:"version,omitempty"`
	DisplayName                 string                        `json:"displayName,omitempty"`
	Description                 string                        `json:"description,omitempty"`
	DetectionScriptContent      string                        `json:"detectionScriptContent,omitempty"`
	RemediationScriptContent    string                        `json:"remediationScriptContent,omitempty"`
	RunAsAccount                string                        `json:"runAsAccount,omitempty"`
	EnforceSignatureCheck       bool                          `json:"enforceSignatureCheck,omitempty"`
	RunAs32Bit                  bool                          `json:"runAs32Bit,omitempty"`
	RoleScopeTagIds             []string                      `json:"roleScopeTagIds,omitempty"`
	IsGlobalScript              bool                          `json:"isGlobalScript,omitempty"`
	HighestAvailableVersion     string                        `json:"highestAvailableVersion,omitempty"`
	DeviceHealthScriptType      string                        `json:"deviceHealthScriptType,omitempty"`
	DetectionScriptParameters   []DeviceHealthScriptParameter `json:"detectionScriptParameters,omitempty"`
	RemediationScriptParameters []DeviceHealthScriptParameter `json:"remediationScriptParameters,omitempty"`
}

ResourceProactiveRemediation represents the structure for a device health script in the Microsoft Graph API.

type ResourceWindowsConfigurationProfileTemplate added in v0.0.2

type ResourceWindowsConfigurationProfileTemplate struct {
	ODataType                                   string                                       `json:"@odata.type"`
	ID                                          string                                       `json:"id"`
	CreatedDateTime                             string                                       `json:"createdDateTime"`
	LastModifiedDateTime                        string                                       `json:"lastModifiedDateTime"`
	Description                                 string                                       `json:"description"`
	DisplayName                                 string                                       `json:"displayName"`
	Version                                     int                                          `json:"version"`
	RoleScopeTagIds                             []string                                     `json:"roleScopeTagIds"`
	SupportsScopeTags                           bool                                         `json:"supportsScopeTags"`
	DeviceManagementApplicabilityRuleOsEdition  *DeviceManagementApplicabilityRuleOsEdition  `json:"deviceManagementApplicabilityRuleOsEdition"`
	DeviceManagementApplicabilityRuleOsVersion  *DeviceManagementApplicabilityRuleOsVersion  `json:"deviceManagementApplicabilityRuleOsVersion"`
	DeviceManagementApplicabilityRuleDeviceMode *DeviceManagementApplicabilityRuleDeviceMode `json:"deviceManagementApplicabilityRuleDeviceMode"`
	// Fields for Template - Custom OMA Uri
	OmaSettings []DeviceConfigurationProfileOmaSetting `json:"omaSettings,omitempty"`
	// Fields for Template - Delivery Optimization
	RestrictPeerSelectionBy                                   string                                     `json:"restrictPeerSelectionBy,omitempty"`
	GroupIdSource                                             string                                     `json:"groupIdSource,omitempty"`
	BackgroundDownloadFromHttpDelayInSeconds                  int                                        `json:"backgroundDownloadFromHttpDelayInSeconds,omitempty"`
	ForegroundDownloadFromHttpDelayInSeconds                  int                                        `json:"foregroundDownloadFromHttpDelayInSeconds,omitempty"`
	MinimumRamAllowedToPeerInGigabytes                        int                                        `json:"minimumRamAllowedToPeerInGigabytes,omitempty"`
	MinimumDiskSizeAllowedToPeerInGigabytes                   int                                        `json:"minimumDiskSizeAllowedToPeerInGigabytes,omitempty"`
	MinimumFileSizeToCacheInMegabytes                         int                                        `json:"minimumFileSizeToCacheInMegabytes,omitempty"`
	MinimumBatteryPercentageAllowedToUpload                   int                                        `json:"minimumBatteryPercentageAllowedToUpload,omitempty"`
	ModifyCacheLocation                                       string                                     `json:"modifyCacheLocation,omitempty"`
	MaximumCacheAgeInDays                                     int                                        `json:"maximumCacheAgeInDays,omitempty"`
	VpnPeerCaching                                            string                                     `json:"vpnPeerCaching,omitempty"`
	CacheServerHostNames                                      []string                                   `json:"cacheServerHostNames,omitempty"`
	CacheServerForegroundDownloadFallbackToHttpDelayInSeconds int                                        `json:"cacheServerForegroundDownloadFallbackToHttpDelayInSeconds,omitempty"`
	CacheServerBackgroundDownloadFallbackToHttpDelayInSeconds int                                        `json:"cacheServerBackgroundDownloadFallbackToHttpDelayInSeconds,omitempty"`
	BandwidthMode                                             DeliveryOptimizationSubsetBandwidthMode    `json:"bandwidthMode,omitempty"`
	MaximumCacheSize                                          DeliveryOptimizationSubsetMaximumCacheSize `json:"maximumCacheSize,omitempty"`
	// Fields for Template - Device Firmware Configuration Interface
	ChangeUefiSettingsPermission   string `json:"changeUefiSettingsPermission,omitempty"`
	VirtualizationOfCpuAndIO       string `json:"virtualizationOfCpuAndIO,omitempty"`
	Cameras                        string `json:"cameras,omitempty"`
	MicrophonesAndSpeakers         string `json:"microphonesAndSpeakers,omitempty"`
	Radios                         string `json:"radios,omitempty"`
	BootFromExternalMedia          string `json:"bootFromExternalMedia,omitempty"`
	BootFromBuiltInNetworkAdapters string `json:"bootFromBuiltInNetworkAdapters,omitempty"`
	WindowsPlatformBinaryTable     string `json:"windowsPlatformBinaryTable,omitempty"`
	SimultaneousMultiThreading     string `json:"simultaneousMultiThreading,omitempty"`
	FrontCamera                    string `json:"frontCamera,omitempty"`
	RearCamera                     string `json:"rearCamera,omitempty"`
	InfraredCamera                 string `json:"infraredCamera,omitempty"`
	Microphone                     string `json:"microphone,omitempty"`
	Bluetooth                      string `json:"bluetooth,omitempty"`
	WirelessWideAreaNetwork        string `json:"wirelessWideAreaNetwork,omitempty"`
	NearFieldCommunication         string `json:"nearFieldCommunication,omitempty"`
	WiFi                           string `json:"wiFi,omitempty"`
	UsbTypeAPort                   string `json:"usbTypeAPort,omitempty"`
	SdCard                         string `json:"sdCard,omitempty"`
	WakeOnLAN                      string `json:"wakeOnLAN,omitempty"`
	WakeOnPower                    string `json:"wakeOnPower,omitempty"`
	// Fields for Template - Device Restrictions
	TaskManagerBlockEndTask                               bool                                                   `json:"taskManagerBlockEndTask,omitempty"`
	EnergySaverOnBatteryThresholdPercentage               int                                                    `json:"energySaverOnBatteryThresholdPercentage,omitempty"`
	EnergySaverPluggedInThresholdPercentage               int                                                    `json:"energySaverPluggedInThresholdPercentage,omitempty"`
	PowerLidCloseActionOnBattery                          string                                                 `json:"powerLidCloseActionOnBattery,omitempty"`
	PowerLidCloseActionPluggedIn                          string                                                 `json:"powerLidCloseActionPluggedIn,omitempty"`
	PowerButtonActionOnBattery                            string                                                 `json:"powerButtonActionOnBattery,omitempty"`
	PowerButtonActionPluggedIn                            string                                                 `json:"powerButtonActionPluggedIn,omitempty"`
	PowerSleepButtonActionOnBattery                       string                                                 `json:"powerSleepButtonActionOnBattery,omitempty"`
	PowerSleepButtonActionPluggedIn                       string                                                 `json:"powerSleepButtonActionPluggedIn,omitempty"`
	PowerHybridSleepOnBattery                             string                                                 `json:"powerHybridSleepOnBattery,omitempty"`
	PowerHybridSleepPluggedIn                             string                                                 `json:"powerHybridSleepPluggedIn,omitempty"`
	Windows10AppsForceUpdateSchedule                      string                                                 `json:"windows10AppsForceUpdateSchedule,omitempty"`
	EnableAutomaticRedeployment                           bool                                                   `json:"enableAutomaticRedeployment,omitempty"`
	MicrosoftAccountSignInAssistantSettings               string                                                 `json:"microsoftAccountSignInAssistantSettings,omitempty"`
	AuthenticationAllowSecondaryDevice                    bool                                                   `json:"authenticationAllowSecondaryDevice,omitempty"`
	AuthenticationWebSignIn                               string                                                 `json:"authenticationWebSignIn,omitempty"`
	AuthenticationPreferredAzureADTenantDomainName        string                                                 `json:"authenticationPreferredAzureADTenantDomainName,omitempty"`
	CryptographyAllowFipsAlgorithmPolicy                  bool                                                   `json:"cryptographyAllowFipsAlgorithmPolicy,omitempty"`
	DisplayAppListWithGdiDPIScalingTurnedOn               []string                                               `json:"displayAppListWithGdiDPIScalingTurnedOn,omitempty"`
	DisplayAppListWithGdiDPIScalingTurnedOff              []string                                               `json:"displayAppListWithGdiDPIScalingTurnedOff,omitempty"`
	EnterpriseCloudPrintDiscoveryEndPoint                 string                                                 `json:"enterpriseCloudPrintDiscoveryEndPoint,omitempty"`
	EnterpriseCloudPrintOAuthAuthority                    string                                                 `json:"enterpriseCloudPrintOAuthAuthority,omitempty"`
	EnterpriseCloudPrintOAuthClientIdentifier             string                                                 `json:"enterpriseCloudPrintOAuthClientIdentifier,omitempty"`
	EnterpriseCloudPrintResourceIdentifier                string                                                 `json:"enterpriseCloudPrintResourceIdentifier,omitempty"`
	EnterpriseCloudPrintDiscoveryMaxLimit                 int                                                    `json:"enterpriseCloudPrintDiscoveryMaxLimit,omitempty"`
	EnterpriseCloudPrintMopriaDiscoveryResourceIdentifier string                                                 `json:"enterpriseCloudPrintMopriaDiscoveryResourceIdentifier,omitempty"`
	ExperienceDoNotSyncBrowserSettings                    string                                                 `json:"experienceDoNotSyncBrowserSettings,omitempty"`
	MessagingBlockSync                                    bool                                                   `json:"messagingBlockSync,omitempty"`
	MessagingBlockMMS                                     bool                                                   `json:"messagingBlockMMS,omitempty"`
	MessagingBlockRichCommunicationServices               bool                                                   `json:"messagingBlockRichCommunicationServices,omitempty"`
	PrinterNames                                          []string                                               `json:"printerNames,omitempty"`
	PrinterDefaultName                                    string                                                 `json:"printerDefaultName,omitempty"`
	PrinterBlockAddition                                  bool                                                   `json:"printerBlockAddition,omitempty"`
	SearchBlockDiacritics                                 bool                                                   `json:"searchBlockDiacritics,omitempty"`
	SearchDisableAutoLanguageDetection                    bool                                                   `json:"searchDisableAutoLanguageDetection,omitempty"`
	SearchDisableIndexingEncryptedItems                   bool                                                   `json:"searchDisableIndexingEncryptedItems,omitempty"`
	SearchEnableRemoteQueries                             bool                                                   `json:"searchEnableRemoteQueries,omitempty"`
	SearchDisableUseLocation                              bool                                                   `json:"searchDisableUseLocation,omitempty"`
	SearchDisableLocation                                 bool                                                   `json:"searchDisableLocation,omitempty"`
	SearchDisableIndexerBackoff                           bool                                                   `json:"searchDisableIndexerBackoff,omitempty"`
	SearchDisableIndexingRemovableDrive                   bool                                                   `json:"searchDisableIndexingRemovableDrive,omitempty"`
	SearchEnableAutomaticIndexSizeManangement             bool                                                   `json:"searchEnableAutomaticIndexSizeManangement,omitempty"`
	SearchBlockWebResults                                 bool                                                   `json:"searchBlockWebResults,omitempty"`
	FindMyFiles                                           string                                                 `json:"findMyFiles,omitempty"`
	SecurityBlockAzureADJoinedDevicesAutoEncryption       bool                                                   `json:"securityBlockAzureADJoinedDevicesAutoEncryption,omitempty"`
	DiagnosticsDataSubmissionMode                         string                                                 `json:"diagnosticsDataSubmissionMode,omitempty"`
	OneDriveDisableFileSync                               bool                                                   `json:"oneDriveDisableFileSync,omitempty"`
	SystemTelemetryProxyServer                            string                                                 `json:"systemTelemetryProxyServer,omitempty"`
	EdgeTelemetryForMicrosoft365Analytics                 string                                                 `json:"edgeTelemetryForMicrosoft365Analytics,omitempty"`
	InkWorkspaceAccess                                    string                                                 `json:"inkWorkspaceAccess,omitempty"`
	InkWorkspaceAccessState                               string                                                 `json:"inkWorkspaceAccessState,omitempty"`
	InkWorkspaceBlockSuggestedApps                        bool                                                   `json:"inkWorkspaceBlockSuggestedApps,omitempty"`
	SmartScreenEnableAppInstallControl                    bool                                                   `json:"smartScreenEnableAppInstallControl,omitempty"`
	SmartScreenAppInstallControl                          string                                                 `json:"smartScreenAppInstallControl,omitempty"`
	PersonalizationDesktopImageURL                        string                                                 `json:"personalizationDesktopImageUrl,omitempty"`
	PersonalizationLockScreenImageURL                     string                                                 `json:"personalizationLockScreenImageUrl,omitempty"`
	BluetoothAllowedServices                              []string                                               `json:"bluetoothAllowedServices,omitempty"`
	BluetoothBlockAdvertising                             bool                                                   `json:"bluetoothBlockAdvertising,omitempty"`
	BluetoothBlockPromptedProximalConnections             bool                                                   `json:"bluetoothBlockPromptedProximalConnections,omitempty"`
	BluetoothBlockDiscoverableMode                        bool                                                   `json:"bluetoothBlockDiscoverableMode,omitempty"`
	BluetoothBlockPrePairing                              bool                                                   `json:"bluetoothBlockPrePairing,omitempty"`
	EdgeBlockAutofill                                     bool                                                   `json:"edgeBlockAutofill,omitempty"`
	EdgeBlocked                                           bool                                                   `json:"edgeBlocked,omitempty"`
	EdgeCookiePolicy                                      string                                                 `json:"edgeCookiePolicy,omitempty"`
	EdgeBlockDeveloperTools                               bool                                                   `json:"edgeBlockDeveloperTools,omitempty"`
	EdgeBlockSendingDoNotTrackHeader                      bool                                                   `json:"edgeBlockSendingDoNotTrackHeader,omitempty"`
	EdgeBlockExtensions                                   bool                                                   `json:"edgeBlockExtensions,omitempty"`
	EdgeBlockInPrivateBrowsing                            bool                                                   `json:"edgeBlockInPrivateBrowsing,omitempty"`
	EdgeBlockJavaScript                                   bool                                                   `json:"edgeBlockJavaScript,omitempty"`
	EdgeBlockPasswordManager                              bool                                                   `json:"edgeBlockPasswordManager,omitempty"`
	EdgeBlockAddressBarDropdown                           bool                                                   `json:"edgeBlockAddressBarDropdown,omitempty"`
	EdgeBlockCompatibilityList                            bool                                                   `json:"edgeBlockCompatibilityList,omitempty"`
	EdgeClearBrowsingDataOnExit                           bool                                                   `json:"edgeClearBrowsingDataOnExit,omitempty"`
	EdgeAllowStartPagesModification                       bool                                                   `json:"edgeAllowStartPagesModification,omitempty"`
	EdgeDisableFirstRunPage                               bool                                                   `json:"edgeDisableFirstRunPage,omitempty"`
	EdgeBlockLiveTileDataCollection                       bool                                                   `json:"edgeBlockLiveTileDataCollection,omitempty"`
	EdgeSyncFavoritesWithInternetExplorer                 bool                                                   `json:"edgeSyncFavoritesWithInternetExplorer,omitempty"`
	EdgeFavoritesListLocation                             string                                                 `json:"edgeFavoritesListLocation,omitempty"`
	EdgeBlockEditFavorites                                bool                                                   `json:"edgeBlockEditFavorites,omitempty"`
	EdgeNewTabPageURL                                     string                                                 `json:"edgeNewTabPageURL,omitempty"`
	EdgeHomeButtonConfiguration                           interface{}                                            `json:"edgeHomeButtonConfiguration,omitempty"`
	EdgeHomeButtonConfigurationEnabled                    bool                                                   `json:"edgeHomeButtonConfigurationEnabled,omitempty"`
	EdgeOpensWith                                         string                                                 `json:"edgeOpensWith,omitempty"`
	EdgeBlockSideloadingExtensions                        bool                                                   `json:"edgeBlockSideloadingExtensions,omitempty"`
	EdgeRequiredExtensionPackageFamilyNames               []string                                               `json:"edgeRequiredExtensionPackageFamilyNames,omitempty"`
	EdgeBlockPrinting                                     bool                                                   `json:"edgeBlockPrinting,omitempty"`
	EdgeFavoritesBarVisibility                            string                                                 `json:"edgeFavoritesBarVisibility,omitempty"`
	EdgeBlockSavingHistory                                bool                                                   `json:"edgeBlockSavingHistory,omitempty"`
	EdgeBlockFullScreenMode                               bool                                                   `json:"edgeBlockFullScreenMode,omitempty"`
	EdgeBlockWebContentOnNewTabPage                       bool                                                   `json:"edgeBlockWebContentOnNewTabPage,omitempty"`
	EdgeBlockTabPreloading                                bool                                                   `json:"edgeBlockTabPreloading,omitempty"`
	EdgeBlockPrelaunch                                    bool                                                   `json:"edgeBlockPrelaunch,omitempty"`
	EdgeShowMessageWhenOpeningInternetExplorerSites       string                                                 `json:"edgeShowMessageWhenOpeningInternetExplorerSites,omitempty"`
	EdgePreventCertificateErrorOverride                   bool                                                   `json:"edgePreventCertificateErrorOverride,omitempty"`
	EdgeKioskModeRestriction                              string                                                 `json:"edgeKioskModeRestriction,omitempty"`
	EdgeKioskResetAfterIdleTimeInMinutes                  int                                                    `json:"edgeKioskResetAfterIdleTimeInMinutes,omitempty"`
	CellularBlockDataWhenRoaming                          bool                                                   `json:"cellularBlockDataWhenRoaming,omitempty"`
	CellularBlockVpn                                      bool                                                   `json:"cellularBlockVpn,omitempty"`
	CellularBlockVpnWhenRoaming                           bool                                                   `json:"cellularBlockVpnWhenRoaming,omitempty"`
	CellularData                                          string                                                 `json:"cellularData,omitempty"`
	DefenderRequireRealTimeMonitoring                     bool                                                   `json:"defenderRequireRealTimeMonitoring,omitempty"`
	DefenderRequireBehaviorMonitoring                     bool                                                   `json:"defenderRequireBehaviorMonitoring,omitempty"`
	DefenderRequireNetworkInspectionSystem                bool                                                   `json:"defenderRequireNetworkInspectionSystem,omitempty"`
	DefenderScanDownloads                                 bool                                                   `json:"defenderScanDownloads,omitempty"`
	DefenderScheduleScanEnableLowCPUPriority              bool                                                   `json:"defenderScheduleScanEnableLowCpuPriority,omitempty"`
	DefenderDisableCatchupQuickScan                       bool                                                   `json:"defenderDisableCatchupQuickScan,omitempty"`
	DefenderDisableCatchupFullScan                        bool                                                   `json:"defenderDisableCatchupFullScan,omitempty"`
	DefenderScanScriptsLoadedInInternetExplorer           bool                                                   `json:"defenderScanScriptsLoadedInInternetExplorer,omitempty"`
	DefenderBlockEndUserAccess                            bool                                                   `json:"defenderBlockEndUserAccess,omitempty"`
	DefenderSignatureUpdateIntervalInHours                int                                                    `json:"defenderSignatureUpdateIntervalInHours,omitempty"`
	DefenderMonitorFileActivity                           string                                                 `json:"defenderMonitorFileActivity,omitempty"`
	DefenderDaysBeforeDeletingQuarantinedMalware          int                                                    `json:"defenderDaysBeforeDeletingQuarantinedMalware,omitempty"`
	DefenderScanMaxCPU                                    int                                                    `json:"defenderScanMaxCpu,omitempty"`
	DefenderScanArchiveFiles                              bool                                                   `json:"defenderScanArchiveFiles,omitempty"`
	DefenderScanIncomingMail                              bool                                                   `json:"defenderScanIncomingMail,omitempty"`
	DefenderScanRemovableDrivesDuringFullScan             bool                                                   `json:"defenderScanRemovableDrivesDuringFullScan,omitempty"`
	DefenderScanMappedNetworkDrivesDuringFullScan         bool                                                   `json:"defenderScanMappedNetworkDrivesDuringFullScan,omitempty"`
	DefenderScanNetworkFiles                              bool                                                   `json:"defenderScanNetworkFiles,omitempty"`
	DefenderRequireCloudProtection                        bool                                                   `json:"defenderRequireCloudProtection,omitempty"`
	DefenderCloudBlockLevel                               string                                                 `json:"defenderCloudBlockLevel,omitempty"`
	DefenderCloudExtendedTimeout                          int                                                    `json:"defenderCloudExtendedTimeout,omitempty"`
	DefenderCloudExtendedTimeoutInSeconds                 int                                                    `json:"defenderCloudExtendedTimeoutInSeconds,omitempty"`
	DefenderPromptForSampleSubmission                     string                                                 `json:"defenderPromptForSampleSubmission,omitempty"`
	DefenderScheduledQuickScanTime                        string                                                 `json:"defenderScheduledQuickScanTime,omitempty"`
	DefenderScanType                                      string                                                 `json:"defenderScanType,omitempty"`
	DefenderSystemScanSchedule                            string                                                 `json:"defenderSystemScanSchedule,omitempty"`
	DefenderScheduledScanTime                             string                                                 `json:"defenderScheduledScanTime,omitempty"`
	DefenderPotentiallyUnwantedAppAction                  string                                                 `json:"defenderPotentiallyUnwantedAppAction,omitempty"`
	DefenderPotentiallyUnwantedAppActionSetting           string                                                 `json:"defenderPotentiallyUnwantedAppActionSetting,omitempty"`
	DefenderSubmitSamplesConsentType                      interface{}                                            `json:"defenderSubmitSamplesConsentType,omitempty"`
	DefenderBlockOnAccessProtection                       bool                                                   `json:"defenderBlockOnAccessProtection,omitempty"`
	DefenderFileExtensionsToExclude                       []string                                               `json:"defenderFileExtensionsToExclude,omitempty"`
	DefenderFilesAndFoldersToExclude                      []string                                               `json:"defenderFilesAndFoldersToExclude,omitempty"`
	DefenderProcessesToExclude                            []string                                               `json:"defenderProcessesToExclude,omitempty"`
	LockScreenAllowTimeoutConfiguration                   bool                                                   `json:"lockScreenAllowTimeoutConfiguration,omitempty"`
	LockScreenBlockActionCenterNotifications              bool                                                   `json:"lockScreenBlockActionCenterNotifications,omitempty"`
	LockScreenBlockCortana                                bool                                                   `json:"lockScreenBlockCortana,omitempty"`
	LockScreenBlockToastNotifications                     bool                                                   `json:"lockScreenBlockToastNotifications,omitempty"`
	LockScreenTimeoutInSeconds                            int                                                    `json:"lockScreenTimeoutInSeconds,omitempty"`
	LockScreenActivateAppsWithVoice                       string                                                 `json:"lockScreenActivateAppsWithVoice,omitempty"`
	PasswordBlockSimple                                   bool                                                   `json:"passwordBlockSimple,omitempty"`
	PasswordExpirationDays                                int                                                    `json:"passwordExpirationDays,omitempty"`
	PasswordMinimumLength                                 int                                                    `json:"passwordMinimumLength,omitempty"`
	PasswordMinutesOfInactivityBeforeScreenTimeout        int                                                    `json:"passwordMinutesOfInactivityBeforeScreenTimeout,omitempty"`
	PasswordMinimumCharacterSetCount                      int                                                    `json:"passwordMinimumCharacterSetCount,omitempty"`
	PasswordPreviousPasswordBlockCount                    int                                                    `json:"passwordPreviousPasswordBlockCount,omitempty"`
	PasswordRequired                                      bool                                                   `json:"passwordRequired,omitempty"`
	PasswordRequireWhenResumeFromIdleState                bool                                                   `json:"passwordRequireWhenResumeFromIdleState,omitempty"`
	PasswordRequiredType                                  string                                                 `json:"passwordRequiredType,omitempty"`
	PasswordSignInFailureCountBeforeFactoryReset          int                                                    `json:"passwordSignInFailureCountBeforeFactoryReset,omitempty"`
	PasswordMinimumAgeInDays                              interface{}                                            `json:"passwordMinimumAgeInDays,omitempty"`
	PrivacyAdvertisingID                                  string                                                 `json:"privacyAdvertisingId,omitempty"`
	PrivacyAutoAcceptPairingAndConsentPrompts             bool                                                   `json:"privacyAutoAcceptPairingAndConsentPrompts,omitempty"`
	PrivacyDisableLaunchExperience                        bool                                                   `json:"privacyDisableLaunchExperience,omitempty"`
	PrivacyBlockInputPersonalization                      bool                                                   `json:"privacyBlockInputPersonalization,omitempty"`
	PrivacyBlockPublishUserActivities                     bool                                                   `json:"privacyBlockPublishUserActivities,omitempty"`
	PrivacyBlockActivityFeed                              bool                                                   `json:"privacyBlockActivityFeed,omitempty"`
	ActivateAppsWithVoice                                 string                                                 `json:"activateAppsWithVoice,omitempty"`
	StartBlockUnpinningAppsFromTaskbar                    bool                                                   `json:"startBlockUnpinningAppsFromTaskbar,omitempty"`
	StartMenuAppListVisibility                            string                                                 `json:"startMenuAppListVisibility,omitempty"`
	StartMenuHideChangeAccountSettings                    bool                                                   `json:"startMenuHideChangeAccountSettings,omitempty"`
	StartMenuHideFrequentlyUsedApps                       bool                                                   `json:"startMenuHideFrequentlyUsedApps,omitempty"`
	StartMenuHideHibernate                                bool                                                   `json:"startMenuHideHibernate,omitempty"`
	StartMenuHideLock                                     bool                                                   `json:"startMenuHideLock,omitempty"`
	StartMenuHidePowerButton                              bool                                                   `json:"startMenuHidePowerButton,omitempty"`
	StartMenuHideRecentJumpLists                          bool                                                   `json:"startMenuHideRecentJumpLists,omitempty"`
	StartMenuHideRecentlyAddedApps                        bool                                                   `json:"startMenuHideRecentlyAddedApps,omitempty"`
	StartMenuHideRestartOptions                           bool                                                   `json:"startMenuHideRestartOptions,omitempty"`
	StartMenuHideShutDown                                 bool                                                   `json:"startMenuHideShutDown,omitempty"`
	StartMenuHideSignOut                                  bool                                                   `json:"startMenuHideSignOut,omitempty"`
	StartMenuHideSleep                                    bool                                                   `json:"startMenuHideSleep,omitempty"`
	StartMenuHideSwitchAccount                            bool                                                   `json:"startMenuHideSwitchAccount,omitempty"`
	StartMenuHideUserTile                                 bool                                                   `json:"startMenuHideUserTile,omitempty"`
	StartMenuLayoutEdgeAssetsXML                          interface{}                                            `json:"startMenuLayoutEdgeAssetsXml,omitempty"`
	StartMenuLayoutXML                                    interface{}                                            `json:"startMenuLayoutXml,omitempty"`
	StartMenuMode                                         string                                                 `json:"startMenuMode,omitempty"`
	StartMenuPinnedFolderDocuments                        string                                                 `json:"startMenuPinnedFolderDocuments,omitempty"`
	StartMenuPinnedFolderDownloads                        string                                                 `json:"startMenuPinnedFolderDownloads,omitempty"`
	StartMenuPinnedFolderFileExplorer                     string                                                 `json:"startMenuPinnedFolderFileExplorer,omitempty"`
	StartMenuPinnedFolderHomeGroup                        string                                                 `json:"startMenuPinnedFolderHomeGroup,omitempty"`
	StartMenuPinnedFolderMusic                            string                                                 `json:"startMenuPinnedFolderMusic,omitempty"`
	StartMenuPinnedFolderNetwork                          string                                                 `json:"startMenuPinnedFolderNetwork,omitempty"`
	StartMenuPinnedFolderPersonalFolder                   string                                                 `json:"startMenuPinnedFolderPersonalFolder,omitempty"`
	StartMenuPinnedFolderPictures                         string                                                 `json:"startMenuPinnedFolderPictures,omitempty"`
	StartMenuPinnedFolderSettings                         string                                                 `json:"startMenuPinnedFolderSettings,omitempty"`
	StartMenuPinnedFolderVideos                           string                                                 `json:"startMenuPinnedFolderVideos,omitempty"`
	SettingsBlockSettingsApp                              bool                                                   `json:"settingsBlockSettingsApp,omitempty"`
	SettingsBlockSystemPage                               bool                                                   `json:"settingsBlockSystemPage,omitempty"`
	SettingsBlockDevicesPage                              bool                                                   `json:"settingsBlockDevicesPage,omitempty"`
	SettingsBlockNetworkInternetPage                      bool                                                   `json:"settingsBlockNetworkInternetPage,omitempty"`
	SettingsBlockPersonalizationPage                      bool                                                   `json:"settingsBlockPersonalizationPage,omitempty"`
	SettingsBlockAccountsPage                             bool                                                   `json:"settingsBlockAccountsPage,omitempty"`
	SettingsBlockTimeLanguagePage                         bool                                                   `json:"settingsBlockTimeLanguagePage,omitempty"`
	SettingsBlockEaseOfAccessPage                         bool                                                   `json:"settingsBlockEaseOfAccessPage,omitempty"`
	SettingsBlockPrivacyPage                              bool                                                   `json:"settingsBlockPrivacyPage,omitempty"`
	SettingsBlockUpdateSecurityPage                       bool                                                   `json:"settingsBlockUpdateSecurityPage,omitempty"`
	SettingsBlockAppsPage                                 bool                                                   `json:"settingsBlockAppsPage,omitempty"`
	SettingsBlockGamingPage                               bool                                                   `json:"settingsBlockGamingPage,omitempty"`
	WindowsSpotlightBlockConsumerSpecificFeatures         bool                                                   `json:"windowsSpotlightBlockConsumerSpecificFeatures,omitempty"`
	WindowsSpotlightBlocked                               bool                                                   `json:"windowsSpotlightBlocked,omitempty"`
	WindowsSpotlightBlockOnActionCenter                   bool                                                   `json:"windowsSpotlightBlockOnActionCenter,omitempty"`
	WindowsSpotlightBlockTailoredExperiences              bool                                                   `json:"windowsSpotlightBlockTailoredExperiences,omitempty"`
	WindowsSpotlightBlockThirdPartyNotifications          bool                                                   `json:"windowsSpotlightBlockThirdPartyNotifications,omitempty"`
	WindowsSpotlightBlockWelcomeExperience                bool                                                   `json:"windowsSpotlightBlockWelcomeExperience,omitempty"`
	WindowsSpotlightBlockWindowsTips                      bool                                                   `json:"windowsSpotlightBlockWindowsTips,omitempty"`
	WindowsSpotlightConfigureOnLockScreen                 string                                                 `json:"windowsSpotlightConfigureOnLockScreen,omitempty"`
	NetworkProxyApplySettingsDeviceWide                   bool                                                   `json:"networkProxyApplySettingsDeviceWide,omitempty"`
	NetworkProxyDisableAutoDetect                         bool                                                   `json:"networkProxyDisableAutoDetect,omitempty"`
	NetworkProxyAutomaticConfigurationURL                 string                                                 `json:"networkProxyAutomaticConfigurationUrl,omitempty"`
	AccountsBlockAddingNonMicrosoftAccountEmail           bool                                                   `json:"accountsBlockAddingNonMicrosoftAccountEmail,omitempty"`
	AntiTheftModeBlocked                                  bool                                                   `json:"antiTheftModeBlocked,omitempty"`
	BluetoothBlocked                                      bool                                                   `json:"bluetoothBlocked,omitempty"`
	CameraBlocked                                         bool                                                   `json:"cameraBlocked,omitempty"`
	ConnectedDevicesServiceBlocked                        bool                                                   `json:"connectedDevicesServiceBlocked,omitempty"`
	CertificatesBlockManualRootCertificateInstallation    bool                                                   `json:"certificatesBlockManualRootCertificateInstallation,omitempty"`
	CopyPasteBlocked                                      bool                                                   `json:"copyPasteBlocked,omitempty"`
	CortanaBlocked                                        bool                                                   `json:"cortanaBlocked,omitempty"`
	DeviceManagementBlockFactoryResetOnMobile             bool                                                   `json:"deviceManagementBlockFactoryResetOnMobile,omitempty"`
	DeviceManagementBlockManualUnenroll                   bool                                                   `json:"deviceManagementBlockManualUnenroll,omitempty"`
	SafeSearchFilter                                      string                                                 `json:"safeSearchFilter,omitempty"`
	EdgeBlockPopups                                       bool                                                   `json:"edgeBlockPopups,omitempty"`
	EdgeBlockSearchSuggestions                            bool                                                   `json:"edgeBlockSearchSuggestions,omitempty"`
	EdgeBlockSearchEngineCustomization                    bool                                                   `json:"edgeBlockSearchEngineCustomization,omitempty"`
	EdgeBlockSendingIntranetTrafficToInternetExplorer     bool                                                   `json:"edgeBlockSendingIntranetTrafficToInternetExplorer,omitempty"`
	EdgeSendIntranetTrafficToInternetExplorer             bool                                                   `json:"edgeSendIntranetTrafficToInternetExplorer,omitempty"`
	EdgeRequireSmartScreen                                bool                                                   `json:"edgeRequireSmartScreen,omitempty"`
	EdgeEnterpriseModeSiteListLocation                    string                                                 `json:"edgeEnterpriseModeSiteListLocation,omitempty"`
	EdgeFirstRunURL                                       string                                                 `json:"edgeFirstRunUrl,omitempty"`
	EdgeHomepageUrls                                      []string                                               `json:"edgeHomepageUrls,omitempty"`
	EdgeBlockAccessToAboutFlags                           bool                                                   `json:"edgeBlockAccessToAboutFlags,omitempty"`
	SmartScreenBlockPromptOverride                        bool                                                   `json:"smartScreenBlockPromptOverride,omitempty"`
	SmartScreenBlockPromptOverrideForFiles                bool                                                   `json:"smartScreenBlockPromptOverrideForFiles,omitempty"`
	WebRtcBlockLocalhostIPAddress                         bool                                                   `json:"webRtcBlockLocalhostIpAddress,omitempty"`
	InternetSharingBlocked                                bool                                                   `json:"internetSharingBlocked,omitempty"`
	SettingsBlockAddProvisioningPackage                   bool                                                   `json:"settingsBlockAddProvisioningPackage,omitempty"`
	SettingsBlockRemoveProvisioningPackage                bool                                                   `json:"settingsBlockRemoveProvisioningPackage,omitempty"`
	SettingsBlockChangeSystemTime                         bool                                                   `json:"settingsBlockChangeSystemTime,omitempty"`
	SettingsBlockEditDeviceName                           bool                                                   `json:"settingsBlockEditDeviceName,omitempty"`
	SettingsBlockChangeRegion                             bool                                                   `json:"settingsBlockChangeRegion,omitempty"`
	SettingsBlockChangeLanguage                           bool                                                   `json:"settingsBlockChangeLanguage,omitempty"`
	SettingsBlockChangePowerSleep                         bool                                                   `json:"settingsBlockChangePowerSleep,omitempty"`
	LocationServicesBlocked                               bool                                                   `json:"locationServicesBlocked,omitempty"`
	MicrosoftAccountBlocked                               bool                                                   `json:"microsoftAccountBlocked,omitempty"`
	MicrosoftAccountBlockSettingsSync                     bool                                                   `json:"microsoftAccountBlockSettingsSync,omitempty"`
	NfcBlocked                                            bool                                                   `json:"nfcBlocked,omitempty"`
	ResetProtectionModeBlocked                            bool                                                   `json:"resetProtectionModeBlocked,omitempty"`
	ScreenCaptureBlocked                                  bool                                                   `json:"screenCaptureBlocked,omitempty"`
	StorageBlockRemovableStorage                          bool                                                   `json:"storageBlockRemovableStorage,omitempty"`
	StorageRequireMobileDeviceEncryption                  bool                                                   `json:"storageRequireMobileDeviceEncryption,omitempty"`
	UsbBlocked                                            bool                                                   `json:"usbBlocked,omitempty"`
	VoiceRecordingBlocked                                 bool                                                   `json:"voiceRecordingBlocked,omitempty"`
	WiFiBlockAutomaticConnectHotspots                     bool                                                   `json:"wiFiBlockAutomaticConnectHotspots,omitempty"`
	WiFiBlocked                                           bool                                                   `json:"wiFiBlocked,omitempty"`
	WiFiBlockManualConfiguration                          bool                                                   `json:"wiFiBlockManualConfiguration,omitempty"`
	WiFiScanInterval                                      int                                                    `json:"wiFiScanInterval,omitempty"`
	WirelessDisplayBlockProjectionToThisDevice            bool                                                   `json:"wirelessDisplayBlockProjectionToThisDevice,omitempty"`
	WirelessDisplayBlockUserInputFromReceiver             bool                                                   `json:"wirelessDisplayBlockUserInputFromReceiver,omitempty"`
	WirelessDisplayRequirePinForPairing                   bool                                                   `json:"wirelessDisplayRequirePinForPairing,omitempty"`
	WindowsStoreBlocked                                   bool                                                   `json:"windowsStoreBlocked,omitempty"`
	AppsAllowTrustedAppsSideloading                       string                                                 `json:"appsAllowTrustedAppsSideloading,omitempty"`
	WindowsStoreBlockAutoUpdate                           bool                                                   `json:"windowsStoreBlockAutoUpdate,omitempty"`
	DeveloperUnlockSetting                                string                                                 `json:"developerUnlockSetting,omitempty"`
	SharedUserAppDataAllowed                              bool                                                   `json:"sharedUserAppDataAllowed,omitempty"`
	AppsBlockWindowsStoreOriginatedApps                   bool                                                   `json:"appsBlockWindowsStoreOriginatedApps,omitempty"`
	WindowsStoreEnablePrivateStoreOnly                    bool                                                   `json:"windowsStoreEnablePrivateStoreOnly,omitempty"`
	StorageRestrictAppDataToSystemVolume                  bool                                                   `json:"storageRestrictAppDataToSystemVolume,omitempty"`
	StorageRestrictAppInstallToSystemVolume               bool                                                   `json:"storageRestrictAppInstallToSystemVolume,omitempty"`
	GameDvrBlocked                                        bool                                                   `json:"gameDvrBlocked,omitempty"`
	ExperienceBlockDeviceDiscovery                        bool                                                   `json:"experienceBlockDeviceDiscovery,omitempty"`
	ExperienceBlockErrorDialogWhenNoSIM                   bool                                                   `json:"experienceBlockErrorDialogWhenNoSIM,omitempty"`
	ExperienceBlockTaskSwitcher                           bool                                                   `json:"experienceBlockTaskSwitcher,omitempty"`
	LogonBlockFastUserSwitching                           bool                                                   `json:"logonBlockFastUserSwitching,omitempty"`
	TenantLockdownRequireNetworkDuringOutOfBoxExperience  bool                                                   `json:"tenantLockdownRequireNetworkDuringOutOfBoxExperience,omitempty"`
	AppManagementMSIAllowUserControlOverInstall           bool                                                   `json:"appManagementMSIAllowUserControlOverInstall,omitempty"`
	AppManagementMSIAlwaysInstallWithElevatedPrivileges   bool                                                   `json:"appManagementMSIAlwaysInstallWithElevatedPrivileges,omitempty"`
	DataProtectionBlockDirectMemoryAccess                 bool                                                   `json:"dataProtectionBlockDirectMemoryAccess,omitempty"`
	AppManagementPackageFamilyNamesToLaunchAfterLogOn     []interface{}                                          `json:"appManagementPackageFamilyNamesToLaunchAfterLogOn,omitempty"`
	UninstallBuiltInApps                                  bool                                                   `json:"uninstallBuiltInApps,omitempty"`
	ConfigureTimeZone                                     *DeviceRestrictionsSubsetConfigureTimeZone             `json:"configureTimeZone,omitempty"`
	DefenderDetectedMalwareActions                        DeviceRestrictionsSubsetDefenderDetectedMalwareActions `json:"defenderDetectedMalwareActions,omitempty"`
	NetworkProxyServer                                    DeviceRestrictionsSubsetNetworkProxyServer             `json:"networkProxyServer,omitempty"`
	EdgeSearchEngine                                      DeviceRestrictionsSubsetEdgeSearchEngine               `json:"edgeSearchEngine,omitempty"`
	// Fields for Template - Device restrictions (Windows 10 Team)
	AzureOperationalInsightsBlockTelemetry bool   `json:"azureOperationalInsightsBlockTelemetry,omitempty"`
	AzureOperationalInsightsWorkspaceId    string `json:"azureOperationalInsightsWorkspaceId,omitempty"`
	AzureOperationalInsightsWorkspaceKey   string `json:"azureOperationalInsightsWorkspaceKey,omitempty"`
	ConnectAppBlockAutoLaunch              bool   `json:"connectAppBlockAutoLaunch,omitempty"`
	MaintenanceWindowBlocked               bool   `json:"maintenanceWindowBlocked,omitempty"`
	MaintenanceWindowDurationInHours       int    `json:"maintenanceWindowDurationInHours,omitempty"`
	MaintenanceWindowStartTime             string `json:"maintenanceWindowStartTime,omitempty"`
	MiracastChannel                        string `json:"miracastChannel,omitempty"`
	MiracastBlocked                        bool   `json:"miracastBlocked,omitempty"`
	MiracastRequirePin                     bool   `json:"miracastRequirePin,omitempty"`
	SettingsBlockMyMeetingsAndFiles        bool   `json:"settingsBlockMyMeetingsAndFiles,omitempty"`
	SettingsBlockSessionResume             bool   `json:"settingsBlockSessionResume,omitempty"`
	SettingsBlockSigninSuggestions         bool   `json:"settingsBlockSigninSuggestions,omitempty"`
	SettingsDefaultVolume                  int    `json:"settingsDefaultVolume,omitempty"`
	SettingsScreenTimeoutInMinutes         int    `json:"settingsScreenTimeoutInMinutes,omitempty"`
	SettingsSessionTimeoutInMinutes        int    `json:"settingsSessionTimeoutInMinutes,omitempty"`
	SettingsSleepTimeoutInMinutes          int    `json:"settingsSleepTimeoutInMinutes,omitempty"`
	WelcomeScreenBlockAutomaticWakeUp      bool   `json:"welcomeScreenBlockAutomaticWakeUp,omitempty"`
	WelcomeScreenBackgroundImageUrl        string `json:"welcomeScreenBackgroundImageUrl,omitempty"`
	WelcomeScreenMeetingInformation        string `json:"welcomeScreenMeetingInformation,omitempty"`
	// Fields for Template - Domain Join
	ComputerNameStaticPrefix          string `json:"computerNameStaticPrefix,omitempty"`
	ComputerNameSuffixRandomCharCount int    `json:"computerNameSuffixRandomCharCount,omitempty"`
	ActiveDirectoryDomainName         string `json:"activeDirectoryDomainName,omitempty"`
	OrganizationalUnit                string `json:"organizationalUnit,omitempty"`
	// Fields for Template - Edition upgrade and mode switch
	LicenseType   string `json:"licenseType,omitempty"`
	TargetEdition string `json:"targetEdition,omitempty"`
	License       string `json:"license,omitempty"`
	ProductKey    string `json:"productKey,omitempty"`
	WindowsSMode  string `json:"windowsSMode,omitempty"`
	// Fields for Template - Email
	UsernameSource        string `json:"usernameSource,omitempty"`
	UsernameAADSource     string `json:"usernameAADSource,omitempty"`
	UserDomainNameSource  string `json:"userDomainNameSource,omitempty"`
	CustomDomainName      string `json:"customDomainName,omitempty"`
	AccountName           string `json:"accountName,omitempty"`
	SyncCalendar          bool   `json:"syncCalendar,omitempty"`
	SyncContacts          bool   `json:"syncContacts,omitempty"`
	SyncTasks             bool   `json:"syncTasks,omitempty"`
	DurationOfEmailToSync string `json:"durationOfEmailToSync,omitempty"`
	EmailAddressSource    string `json:"emailAddressSource,omitempty"`
	EmailSyncSchedule     string `json:"emailSyncSchedule,omitempty"`
	HostName              string `json:"hostName,omitempty"`
	RequireSsl            bool   `json:"requireSsl,omitempty"`
	// Fields for Template Endpoint Protection
	DmaGuardDeviceEnumerationPolicy                                              string                                  `json:"dmaGuardDeviceEnumerationPolicy,omitempty"`
	UserRightsAccessCredentialManagerAsTrustedCaller                             interface{}                             `json:"userRightsAccessCredentialManagerAsTrustedCaller,omitempty"`
	UserRightsBlockAccessFromNetwork                                             interface{}                             `json:"userRightsBlockAccessFromNetwork,omitempty"`
	UserRightsDenyLocalLogOn                                                     interface{}                             `json:"userRightsDenyLocalLogOn,omitempty"`
	UserRightsDebugPrograms                                                      interface{}                             `json:"userRightsDebugPrograms,omitempty"`
	XboxServicesEnableXboxGameSaveTask                                           bool                                    `json:"xboxServicesEnableXboxGameSaveTask,omitempty"`
	XboxServicesAccessoryManagementServiceStartupMode                            string                                  `json:"xboxServicesAccessoryManagementServiceStartupMode,omitempty"`
	XboxServicesLiveAuthManagerServiceStartupMode                                string                                  `json:"xboxServicesLiveAuthManagerServiceStartupMode,omitempty"`
	XboxServicesLiveGameSaveServiceStartupMode                                   string                                  `json:"xboxServicesLiveGameSaveServiceStartupMode,omitempty"`
	XboxServicesLiveNetworkingServiceStartupMode                                 string                                  `json:"xboxServicesLiveNetworkingServiceStartupMode,omitempty"`
	LocalSecurityOptionsBlockMicrosoftAccounts                                   bool                                    `json:"localSecurityOptionsBlockMicrosoftAccounts,omitempty"`
	LocalSecurityOptionsBlockRemoteLogonWithBlankPassword                        bool                                    `json:"localSecurityOptionsBlockRemoteLogonWithBlankPassword,omitempty"`
	LocalSecurityOptionsDisableAdministratorAccount                              bool                                    `json:"localSecurityOptionsDisableAdministratorAccount,omitempty"`
	LocalSecurityOptionsAdministratorAccountName                                 string                                  `json:"localSecurityOptionsAdministratorAccountName,omitempty"`
	LocalSecurityOptionsDisableGuestAccount                                      bool                                    `json:"localSecurityOptionsDisableGuestAccount,omitempty"`
	LocalSecurityOptionsGuestAccountName                                         string                                  `json:"localSecurityOptionsGuestAccountName,omitempty"`
	LocalSecurityOptionsAllowUndockWithoutHavingToLogon                          bool                                    `json:"localSecurityOptionsAllowUndockWithoutHavingToLogon,omitempty"`
	LocalSecurityOptionsBlockUsersInstallingPrinterDrivers                       bool                                    `json:"localSecurityOptionsBlockUsersInstallingPrinterDrivers,omitempty"`
	LocalSecurityOptionsBlockRemoteOpticalDriveAccess                            bool                                    `json:"localSecurityOptionsBlockRemoteOpticalDriveAccess,omitempty"`
	LocalSecurityOptionsFormatAndEjectOfRemovableMediaAllowedUser                string                                  `json:"localSecurityOptionsFormatAndEjectOfRemovableMediaAllowedUser,omitempty"`
	LocalSecurityOptionsMachineInactivityLimit                                   int                                     `json:"localSecurityOptionsMachineInactivityLimit,omitempty"`
	LocalSecurityOptionsMachineInactivityLimitInMinutes                          int                                     `json:"localSecurityOptionsMachineInactivityLimitInMinutes,omitempty"`
	LocalSecurityOptionsDoNotRequireCtrlAltDel                                   bool                                    `json:"localSecurityOptionsDoNotRequireCtrlAltDel,omitempty"`
	LocalSecurityOptionsHideLastSignedInUser                                     bool                                    `json:"localSecurityOptionsHideLastSignedInUser,omitempty"`
	LocalSecurityOptionsHideUsernameAtSignIn                                     bool                                    `json:"localSecurityOptionsHideUsernameAtSignIn,omitempty"`
	LocalSecurityOptionsLogOnMessageTitle                                        interface{}                             `json:"localSecurityOptionsLogOnMessageTitle,omitempty"`
	LocalSecurityOptionsLogOnMessageText                                         interface{}                             `json:"localSecurityOptionsLogOnMessageText,omitempty"`
	LocalSecurityOptionsAllowPKU2UAuthenticationRequests                         bool                                    `json:"localSecurityOptionsAllowPKU2UAuthenticationRequests,omitempty"`
	LocalSecurityOptionsAllowRemoteCallsToSecurityAccountsManagerHelperBool      bool                                    `json:"localSecurityOptionsAllowRemoteCallsToSecurityAccountsManagerHelperBool,omitempty"`
	LocalSecurityOptionsAllowRemoteCallsToSecurityAccountsManager                interface{}                             `json:"localSecurityOptionsAllowRemoteCallsToSecurityAccountsManager,omitempty"`
	LocalSecurityOptionsMinimumSessionSecurityForNtlmSspBasedClients             string                                  `json:"localSecurityOptionsMinimumSessionSecurityForNtlmSspBasedClients,omitempty"`
	LocalSecurityOptionsMinimumSessionSecurityForNtlmSspBasedServers             string                                  `json:"localSecurityOptionsMinimumSessionSecurityForNtlmSspBasedServers,omitempty"`
	LanManagerAuthenticationLevel                                                string                                  `json:"lanManagerAuthenticationLevel,omitempty"`
	LanManagerWorkstationDisableInsecureGuestLogons                              bool                                    `json:"lanManagerWorkstationDisableInsecureGuestLogons,omitempty"`
	LocalSecurityOptionsClearVirtualMemoryPageFile                               bool                                    `json:"localSecurityOptionsClearVirtualMemoryPageFile,omitempty"`
	LocalSecurityOptionsAllowSystemToBeShutDownWithoutHavingToLogOn              bool                                    `json:"localSecurityOptionsAllowSystemToBeShutDownWithoutHavingToLogOn,omitempty"`
	LocalSecurityOptionsAllowUIAccessApplicationElevation                        bool                                    `json:"localSecurityOptionsAllowUIAccessApplicationElevation,omitempty"`
	LocalSecurityOptionsVirtualizeFileAndRegistryWriteFailuresToPerUserLocations bool                                    `json:"localSecurityOptionsVirtualizeFileAndRegistryWriteFailuresToPerUserLocations,omitempty"`
	LocalSecurityOptionsOnlyElevateSignedExecutables                             bool                                    `json:"localSecurityOptionsOnlyElevateSignedExecutables,omitempty"`
	LocalSecurityOptionsAdministratorElevationPromptBehavior                     string                                  `json:"localSecurityOptionsAdministratorElevationPromptBehavior,omitempty"`
	LocalSecurityOptionsStandardUserElevationPromptBehavior                      string                                  `json:"localSecurityOptionsStandardUserElevationPromptBehavior,omitempty"`
	LocalSecurityOptionsSwitchToSecureDesktopWhenPromptingForElevation           bool                                    `json:"localSecurityOptionsSwitchToSecureDesktopWhenPromptingForElevation,omitempty"`
	LocalSecurityOptionsDetectApplicationInstallationsAndPromptForElevation      bool                                    `json:"localSecurityOptionsDetectApplicationInstallationsAndPromptForElevation,omitempty"`
	LocalSecurityOptionsAllowUIAccessApplicationsForSecureLocations              bool                                    `json:"localSecurityOptionsAllowUIAccessApplicationsForSecureLocations,omitempty"`
	LocalSecurityOptionsUseAdminApprovalMode                                     bool                                    `json:"localSecurityOptionsUseAdminApprovalMode,omitempty"`
	LocalSecurityOptionsUseAdminApprovalModeForAdministrators                    bool                                    `json:"localSecurityOptionsUseAdminApprovalModeForAdministrators,omitempty"`
	LocalSecurityOptionsInformationShownOnLockScreen                             string                                  `json:"localSecurityOptionsInformationShownOnLockScreen,omitempty"`
	LocalSecurityOptionsInformationDisplayedOnLockScreen                         string                                  `json:"localSecurityOptionsInformationDisplayedOnLockScreen,omitempty"`
	LocalSecurityOptionsDisableClientDigitallySignCommunicationsIfServerAgrees   bool                                    `json:"localSecurityOptionsDisableClientDigitallySignCommunicationsIfServerAgrees,omitempty"`
	LocalSecurityOptionsClientDigitallySignCommunicationsAlways                  bool                                    `json:"localSecurityOptionsClientDigitallySignCommunicationsAlways,omitempty"`
	LocalSecurityOptionsClientSendUnencryptedPasswordToThirdPartySMBServers      bool                                    `json:"localSecurityOptionsClientSendUnencryptedPasswordToThirdPartySMBServers,omitempty"`
	LocalSecurityOptionsDisableServerDigitallySignCommunicationsAlways           bool                                    `json:"localSecurityOptionsDisableServerDigitallySignCommunicationsAlways,omitempty"`
	LocalSecurityOptionsDisableServerDigitallySignCommunicationsIfClientAgrees   bool                                    `json:"localSecurityOptionsDisableServerDigitallySignCommunicationsIfClientAgrees,omitempty"`
	LocalSecurityOptionsRestrictAnonymousAccessToNamedPipesAndShares             bool                                    `json:"localSecurityOptionsRestrictAnonymousAccessToNamedPipesAndShares,omitempty"`
	LocalSecurityOptionsDoNotAllowAnonymousEnumerationOfSAMAccounts              bool                                    `json:"localSecurityOptionsDoNotAllowAnonymousEnumerationOfSAMAccounts,omitempty"`
	LocalSecurityOptionsAllowAnonymousEnumerationOfSAMAccountsAndShares          bool                                    `json:"localSecurityOptionsAllowAnonymousEnumerationOfSAMAccountsAndShares,omitempty"`
	LocalSecurityOptionsDoNotStoreLANManagerHashValueOnNextPasswordChange        bool                                    `json:"localSecurityOptionsDoNotStoreLANManagerHashValueOnNextPasswordChange,omitempty"`
	LocalSecurityOptionsSmartCardRemovalBehavior                                 string                                  `json:"localSecurityOptionsSmartCardRemovalBehavior,omitempty"`
	DefenderSecurityCenterDisableAppBrowserUI                                    bool                                    `json:"defenderSecurityCenterDisableAppBrowserUI,omitempty"`
	DefenderSecurityCenterDisableFamilyUI                                        bool                                    `json:"defenderSecurityCenterDisableFamilyUI,omitempty"`
	DefenderSecurityCenterDisableHealthUI                                        bool                                    `json:"defenderSecurityCenterDisableHealthUI,omitempty"`
	DefenderSecurityCenterDisableNetworkUI                                       bool                                    `json:"defenderSecurityCenterDisableNetworkUI,omitempty"`
	DefenderSecurityCenterDisableVirusUI                                         bool                                    `json:"defenderSecurityCenterDisableVirusUI,omitempty"`
	DefenderSecurityCenterDisableAccountUI                                       bool                                    `json:"defenderSecurityCenterDisableAccountUI,omitempty"`
	DefenderSecurityCenterDisableClearTpmUI                                      bool                                    `json:"defenderSecurityCenterDisableClearTpmUI,omitempty"`
	DefenderSecurityCenterDisableHardwareUI                                      bool                                    `json:"defenderSecurityCenterDisableHardwareUI,omitempty"`
	DefenderSecurityCenterDisableNotificationAreaUI                              bool                                    `json:"defenderSecurityCenterDisableNotificationAreaUI,omitempty"`
	DefenderSecurityCenterDisableRansomwareUI                                    bool                                    `json:"defenderSecurityCenterDisableRansomwareUI,omitempty"`
	DefenderSecurityCenterDisableSecureBootUI                                    interface{}                             `json:"defenderSecurityCenterDisableSecureBootUI,omitempty"`
	DefenderSecurityCenterDisableTroubleshootingUI                               interface{}                             `json:"defenderSecurityCenterDisableTroubleshootingUI,omitempty"`
	DefenderSecurityCenterDisableVulnerableTpmFirmwareUpdateUI                   bool                                    `json:"defenderSecurityCenterDisableVulnerableTpmFirmwareUpdateUI,omitempty"`
	DefenderSecurityCenterOrganizationDisplayName                                string                                  `json:"defenderSecurityCenterOrganizationDisplayName,omitempty"`
	DefenderSecurityCenterHelpEmail                                              string                                  `json:"defenderSecurityCenterHelpEmail,omitempty"`
	DefenderSecurityCenterHelpPhone                                              string                                  `json:"defenderSecurityCenterHelpPhone,omitempty"`
	DefenderSecurityCenterHelpURL                                                string                                  `json:"defenderSecurityCenterHelpURL,omitempty"`
	DefenderSecurityCenterNotificationsFromApp                                   string                                  `json:"defenderSecurityCenterNotificationsFromApp,omitempty"`
	DefenderSecurityCenterITContactDisplay                                       string                                  `json:"defenderSecurityCenterITContactDisplay,omitempty"`
	WindowsDefenderTamperProtection                                              string                                  `json:"windowsDefenderTamperProtection,omitempty"`
	FirewallBlockStatefulFTP                                                     bool                                    `json:"firewallBlockStatefulFTP,omitempty"`
	FirewallIdleTimeoutForSecurityAssociationInSeconds                           int                                     `json:"firewallIdleTimeoutForSecurityAssociationInSeconds,omitempty"`
	FirewallPreSharedKeyEncodingMethod                                           string                                  `json:"firewallPreSharedKeyEncodingMethod,omitempty"`
	FirewallIPSecExemptionsNone                                                  bool                                    `json:"firewallIPSecExemptionsNone,omitempty"`
	FirewallIPSecExemptionsAllowNeighborDiscovery                                bool                                    `json:"firewallIPSecExemptionsAllowNeighborDiscovery,omitempty"`
	FirewallIPSecExemptionsAllowICMP                                             bool                                    `json:"firewallIPSecExemptionsAllowICMP,omitempty"`
	FirewallIPSecExemptionsAllowRouterDiscovery                                  bool                                    `json:"firewallIPSecExemptionsAllowRouterDiscovery,omitempty"`
	FirewallIPSecExemptionsAllowDHCP                                             bool                                    `json:"firewallIPSecExemptionsAllowDHCP,omitempty"`
	FirewallCertificateRevocationListCheckMethod                                 string                                  `json:"firewallCertificateRevocationListCheckMethod,omitempty"`
	FirewallMergeKeyingModuleSettings                                            bool                                    `json:"firewallMergeKeyingModuleSettings,omitempty"`
	FirewallPacketQueueingMethod                                                 string                                  `json:"firewallPacketQueueingMethod,omitempty"`
	FirewallProfileDomain                                                        EndpointProtectionSubsetFirewallProfile `json:"firewallProfileDomain,omitempty"`
	FirewallProfilePublic                                                        EndpointProtectionSubsetFirewallProfile `json:"firewallProfilePublic,omitempty"`
	FirewallProfilePrivate                                                       EndpointProtectionSubsetFirewallProfile `json:"firewallProfilePrivate,omitempty"`
	FirewallRules                                                                []EndpointProtectionSubsetFirewallRule  `json:"firewallRules,omitempty"`
	DefenderAdobeReaderLaunchChildProcess                                        string                                  `json:"defenderAdobeReaderLaunchChildProcess,omitempty"`
	DefenderAttackSurfaceReductionExcludedPaths                                  []string                                `json:"defenderAttackSurfaceReductionExcludedPaths,omitempty"`
	DefenderOfficeAppsOtherProcessInjectionType                                  string                                  `json:"defenderOfficeAppsOtherProcessInjectionType,omitempty"`
	DefenderOfficeAppsOtherProcessInjection                                      string                                  `json:"defenderOfficeAppsOtherProcessInjection,omitempty"`
	DefenderOfficeCommunicationAppsLaunchChildProcess                            string                                  `json:"defenderOfficeCommunicationAppsLaunchChildProcess,omitempty"`
	DefenderOfficeAppsExecutableContentCreationOrLaunchType                      string                                  `json:"defenderOfficeAppsExecutableContentCreationOrLaunchType,omitempty"`
	DefenderOfficeAppsExecutableContentCreationOrLaunch                          string                                  `json:"defenderOfficeAppsExecutableContentCreationOrLaunch,omitempty"`
	DefenderOfficeAppsLaunchChildProcessType                                     string                                  `json:"defenderOfficeAppsLaunchChildProcessType,omitempty"`
	DefenderOfficeAppsLaunchChildProcess                                         string                                  `json:"defenderOfficeAppsLaunchChildProcess,omitempty"`
	DefenderOfficeMacroCodeAllowWin32ImportsType                                 string                                  `json:"defenderOfficeMacroCodeAllowWin32ImportsType,omitempty"`
	DefenderOfficeMacroCodeAllowWin32Imports                                     string                                  `json:"defenderOfficeMacroCodeAllowWin32Imports,omitempty"`
	DefenderScriptObfuscatedMacroCodeType                                        string                                  `json:"defenderScriptObfuscatedMacroCodeType,omitempty"`
	DefenderScriptObfuscatedMacroCode                                            string                                  `json:"defenderScriptObfuscatedMacroCode,omitempty"`
	DefenderScriptDownloadedPayloadExecutionType                                 string                                  `json:"defenderScriptDownloadedPayloadExecutionType,omitempty"`
	DefenderScriptDownloadedPayloadExecution                                     string                                  `json:"defenderScriptDownloadedPayloadExecution,omitempty"`
	DefenderPreventCredentialStealingType                                        string                                  `json:"defenderPreventCredentialStealingType,omitempty"`
	DefenderProcessCreationType                                                  string                                  `json:"defenderProcessCreationType,omitempty"`
	DefenderProcessCreation                                                      string                                  `json:"defenderProcessCreation,omitempty"`
	DefenderUntrustedUSBProcessType                                              string                                  `json:"defenderUntrustedUSBProcessType,omitempty"`
	DefenderUntrustedUSBProcess                                                  string                                  `json:"defenderUntrustedUSBProcess,omitempty"`
	DefenderUntrustedExecutableType                                              string                                  `json:"defenderUntrustedExecutableType,omitempty"`
	DefenderUntrustedExecutable                                                  string                                  `json:"defenderUntrustedExecutable,omitempty"`
	DefenderEmailContentExecutionType                                            string                                  `json:"defenderEmailContentExecutionType,omitempty"`
	DefenderEmailContentExecution                                                string                                  `json:"defenderEmailContentExecution,omitempty"`
	DefenderAdvancedRansomewareProtectionType                                    string                                  `json:"defenderAdvancedRansomewareProtectionType,omitempty"`
	DefenderGuardMyFoldersType                                                   string                                  `json:"defenderGuardMyFoldersType,omitempty"`
	DefenderGuardedFoldersAllowedAppPaths                                        []string                                `json:"defenderGuardedFoldersAllowedAppPaths,omitempty"`
	DefenderAdditionalGuardedFolders                                             []string                                `json:"defenderAdditionalGuardedFolders,omitempty"`
	DefenderNetworkProtectionType                                                string                                  `json:"defenderNetworkProtectionType,omitempty"`
	DefenderExploitProtectionXML                                                 interface{}                             `json:"defenderExploitProtectionXml,omitempty"`
	DefenderExploitProtectionXMLFileName                                         interface{}                             `json:"defenderExploitProtectionXmlFileName,omitempty"`
	DefenderSecurityCenterBlockExploitProtectionOverride                         bool                                    `json:"defenderSecurityCenterBlockExploitProtectionOverride,omitempty"`
	DefenderBlockPersistenceThroughWmiType                                       string                                  `json:"defenderBlockPersistenceThroughWmiType,omitempty"`
	AppLockerApplicationControl                                                  string                                  `json:"appLockerApplicationControl,omitempty"`
	DeviceGuardLocalSystemAuthorityCredentialGuardSettings                       string                                  `json:"deviceGuardLocalSystemAuthorityCredentialGuardSettings,omitempty"`
	DeviceGuardEnableVirtualizationBasedSecurity                                 bool                                    `json:"deviceGuardEnableVirtualizationBasedSecurity,omitempty"`
	DeviceGuardEnableSecureBootWithDMA                                           bool                                    `json:"deviceGuardEnableSecureBootWithDMA,omitempty"`
	DeviceGuardSecureBootWithDMA                                                 string                                  `json:"deviceGuardSecureBootWithDMA,omitempty"`
	DeviceGuardLaunchSystemGuard                                                 string                                  `json:"deviceGuardLaunchSystemGuard,omitempty"`
	SmartScreenEnableInShell                                                     bool                                    `json:"smartScreenEnableInShell,omitempty"`
	SmartScreenBlockOverrideForFiles                                             bool                                    `json:"smartScreenBlockOverrideForFiles,omitempty"`
	ApplicationGuardEnabled                                                      bool                                    `json:"applicationGuardEnabled,omitempty"`
	ApplicationGuardEnabledOptions                                               string                                  `json:"applicationGuardEnabledOptions,omitempty"`
	ApplicationGuardBlockFileTransfer                                            string                                  `json:"applicationGuardBlockFileTransfer,omitempty"`
	ApplicationGuardBlockNonEnterpriseContent                                    bool                                    `json:"applicationGuardBlockNonEnterpriseContent,omitempty"`
	ApplicationGuardAllowPersistence                                             bool                                    `json:"applicationGuardAllowPersistence,omitempty"`
	ApplicationGuardForceAuditing                                                bool                                    `json:"applicationGuardForceAuditing,omitempty"`
	ApplicationGuardBlockClipboardSharing                                        string                                  `json:"applicationGuardBlockClipboardSharing,omitempty"`
	ApplicationGuardAllowPrintToPDF                                              bool                                    `json:"applicationGuardAllowPrintToPDF,omitempty"`
	ApplicationGuardAllowPrintToXPS                                              bool                                    `json:"applicationGuardAllowPrintToXPS,omitempty"`
	ApplicationGuardAllowPrintToLocalPrinters                                    bool                                    `json:"applicationGuardAllowPrintToLocalPrinters,omitempty"`
	ApplicationGuardAllowPrintToNetworkPrinters                                  bool                                    `json:"applicationGuardAllowPrintToNetworkPrinters,omitempty"`
	ApplicationGuardAllowVirtualGPU                                              bool                                    `json:"applicationGuardAllowVirtualGPU,omitempty"`
	ApplicationGuardAllowFileSaveOnHost                                          bool                                    `json:"applicationGuardAllowFileSaveOnHost,omitempty"`
	ApplicationGuardAllowCameraMicrophoneRedirection                             interface{}                             `json:"applicationGuardAllowCameraMicrophoneRedirection,omitempty"`
	ApplicationGuardCertificateThumbprints                                       []interface{}                           `json:"applicationGuardCertificateThumbprints,omitempty"`
	BitLockerAllowStandardUserEncryption                                         bool                                    `json:"bitLockerAllowStandardUserEncryption,omitempty"`
	BitLockerDisableWarningForOtherDiskEncryption                                bool                                    `json:"bitLockerDisableWarningForOtherDiskEncryption,omitempty"`
	BitLockerEnableStorageCardEncryptionOnMobile                                 bool                                    `json:"bitLockerEnableStorageCardEncryptionOnMobile,omitempty"`
	BitLockerEncryptDevice                                                       bool                                    `json:"bitLockerEncryptDevice,omitempty"`
	BitLockerRecoveryPasswordRotation                                            string                                  `json:"bitLockerRecoveryPasswordRotation,omitempty"`
	DefenderDisableScanArchiveFiles                                              interface{}                             `json:"defenderDisableScanArchiveFiles,omitempty"`
	DefenderAllowScanArchiveFiles                                                interface{}                             `json:"defenderAllowScanArchiveFiles,omitempty"`
	DefenderDisableBehaviorMonitoring                                            interface{}                             `json:"defenderDisableBehaviorMonitoring,omitempty"`
	DefenderAllowBehaviorMonitoring                                              interface{}                             `json:"defenderAllowBehaviorMonitoring,omitempty"`
	DefenderDisableCloudProtection                                               interface{}                             `json:"defenderDisableCloudProtection,omitempty"`
	DefenderAllowCloudProtection                                                 interface{}                             `json:"defenderAllowCloudProtection,omitempty"`
	DefenderEnableScanIncomingMail                                               interface{}                             `json:"defenderEnableScanIncomingMail,omitempty"`
	DefenderEnableScanMappedNetworkDrivesDuringFullScan                          interface{}                             `json:"defenderEnableScanMappedNetworkDrivesDuringFullScan,omitempty"`
	DefenderDisableScanRemovableDrivesDuringFullScan                             interface{}                             `json:"defenderDisableScanRemovableDrivesDuringFullScan,omitempty"`
	DefenderAllowScanRemovableDrivesDuringFullScan                               interface{}                             `json:"defenderAllowScanRemovableDrivesDuringFullScan,omitempty"`
	DefenderDisableScanDownloads                                                 interface{}                             `json:"defenderDisableScanDownloads,omitempty"`
	DefenderAllowScanDownloads                                                   interface{}                             `json:"defenderAllowScanDownloads,omitempty"`
	DefenderDisableIntrusionPreventionSystem                                     interface{}                             `json:"defenderDisableIntrusionPreventionSystem,omitempty"`
	DefenderAllowIntrusionPreventionSystem                                       interface{}                             `json:"defenderAllowIntrusionPreventionSystem,omitempty"`
	DefenderDisableOnAccessProtection                                            interface{}                             `json:"defenderDisableOnAccessProtection,omitempty"`
	DefenderAllowOnAccessProtection                                              interface{}                             `json:"defenderAllowOnAccessProtection,omitempty"`
	DefenderDisableRealTimeMonitoring                                            interface{}                             `json:"defenderDisableRealTimeMonitoring,omitempty"`
	DefenderAllowRealTimeMonitoring                                              interface{}                             `json:"defenderAllowRealTimeMonitoring,omitempty"`
	DefenderDisableScanNetworkFiles                                              interface{}                             `json:"defenderDisableScanNetworkFiles,omitempty"`
	DefenderAllowScanNetworkFiles                                                interface{}                             `json:"defenderAllowScanNetworkFiles,omitempty"`
	DefenderDisableScanScriptsLoadedInInternetExplorer                           interface{}                             `json:"defenderDisableScanScriptsLoadedInInternetExplorer,omitempty"`
	DefenderAllowScanScriptsLoadedInInternetExplorer                             interface{}                             `json:"defenderAllowScanScriptsLoadedInInternetExplorer,omitempty"`
	//DefenderBlockEndUserAccess                                                   interface{}   `json:"defenderBlockEndUserAccess,omitempty"`
	DefenderAllowEndUserAccess                  interface{} `json:"defenderAllowEndUserAccess,omitempty"`
	DefenderScanMaxCPUPercentage                interface{} `json:"defenderScanMaxCpuPercentage,omitempty"`
	DefenderCheckForSignaturesBeforeRunningScan interface{} `json:"defenderCheckForSignaturesBeforeRunningScan,omitempty"`
	//DefenderCloudBlockLevel                                                      interface{}   `json:"defenderCloudBlockLevel,omitempty"`
	//DefenderCloudExtendedTimeoutInSeconds                                        interface{}   `json:"defenderCloudExtendedTimeoutInSeconds,omitempty"`
	//DefenderDaysBeforeDeletingQuarantinedMalware                                 interface{}   `json:"defenderDaysBeforeDeletingQuarantinedMalware,omitempty"`
	//DefenderDisableCatchupFullScan                                               interface{}   `json:"defenderDisableCatchupFullScan,omitempty"`
	//DefenderDisableCatchupQuickScan                                              interface{}   `json:"defenderDisableCatchupQuickScan,omitempty"`
	DefenderEnableLowCPUPriority interface{} `json:"defenderEnableLowCpuPriority,omitempty"`
	//DefenderFileExtensionsToExclude                                              []interface{} `json:"defenderFileExtensionsToExclude,omitempty"`
	//DefenderFilesAndFoldersToExclude                                             []interface{} `json:"defenderFilesAndFoldersToExclude,omitempty"`
	//DefenderProcessesToExclude                                                   []interface{} `json:"defenderProcessesToExclude,omitempty"`
	//DefenderPotentiallyUnwantedAppAction                                         interface{}   `json:"defenderPotentiallyUnwantedAppAction,omitempty"`
	DefenderScanDirection interface{} `json:"defenderScanDirection,omitempty"`
	//DefenderScanType                                                             interface{}   `json:"defenderScanType,omitempty"`
	//DefenderScheduledQuickScanTime                                               interface{}   `json:"defenderScheduledQuickScanTime,omitempty"`
	DefenderScheduledScanDay interface{} `json:"defenderScheduledScanDay,omitempty"`
	//DefenderScheduledScanTime                                                    interface{}   `json:"defenderScheduledScanTime,omitempty"`
	//DefenderSignatureUpdateIntervalInHours                                       interface{}   `json:"defenderSignatureUpdateIntervalInHours,omitempty"`
	//DefenderSubmitSamplesConsentType                                             interface{}   `json:"defenderSubmitSamplesConsentType,omitempty"`
	//DefenderDetectedMalwareActions                                               interface{}   `json:"defenderDetectedMalwareActions,omitempty"`
	UserRightsAllowAccessFromNetwork        EndpointProtectionSubsetUserRights                    `json:"userRightsAllowAccessFromNetwork,omitempty"`
	UserRightsActAsPartOfTheOperatingSystem EndpointProtectionSubsetUserRights                    `json:"userRightsActAsPartOfTheOperatingSystem,omitempty"`
	UserRightsLocalLogOn                    EndpointProtectionSubsetUserRights                    `json:"userRightsLocalLogOn,omitempty"`
	UserRightsBackupData                    EndpointProtectionSubsetUserRights                    `json:"userRightsBackupData,omitempty"`
	UserRightsChangeSystemTime              EndpointProtectionSubsetUserRights                    `json:"userRightsChangeSystemTime,omitempty"`
	UserRightsCreateGlobalObjects           EndpointProtectionSubsetUserRights                    `json:"userRightsCreateGlobalObjects,omitempty"`
	UserRightsCreatePageFile                EndpointProtectionSubsetUserRights                    `json:"userRightsCreatePageFile,omitempty"`
	UserRightsCreatePermanentSharedObjects  EndpointProtectionSubsetUserRights                    `json:"userRightsCreatePermanentSharedObjects,omitempty"`
	UserRightsCreateSymbolicLinks           EndpointProtectionSubsetUserRights                    `json:"userRightsCreateSymbolicLinks,omitempty"`
	UserRightsCreateToken                   EndpointProtectionSubsetUserRights                    `json:"userRightsCreateToken,omitempty"`
	UserRightsRemoteDesktopServicesLogOn    EndpointProtectionSubsetUserRights                    `json:"userRightsRemoteDesktopServicesLogOn,omitempty"`
	UserRightsDelegation                    EndpointProtectionSubsetUserRights                    `json:"userRightsDelegation,omitempty"`
	UserRightsGenerateSecurityAudits        EndpointProtectionSubsetUserRights                    `json:"userRightsGenerateSecurityAudits,omitempty"`
	UserRightsImpersonateClient             EndpointProtectionSubsetUserRights                    `json:"userRightsImpersonateClient,omitempty"`
	UserRightsIncreaseSchedulingPriority    EndpointProtectionSubsetUserRights                    `json:"userRightsIncreaseSchedulingPriority,omitempty"`
	UserRightsLoadUnloadDrivers             EndpointProtectionSubsetUserRights                    `json:"userRightsLoadUnloadDrivers,omitempty"`
	UserRightsLockMemory                    EndpointProtectionSubsetUserRights                    `json:"userRightsLockMemory,omitempty"`
	UserRightsManageAuditingAndSecurityLogs EndpointProtectionSubsetUserRights                    `json:"userRightsManageAuditingAndSecurityLogs,omitempty"`
	UserRightsManageVolumes                 EndpointProtectionSubsetUserRights                    `json:"userRightsManageVolumes,omitempty"`
	UserRightsModifyFirmwareEnvironment     EndpointProtectionSubsetUserRights                    `json:"userRightsModifyFirmwareEnvironment,omitempty"`
	UserRightsModifyObjectLabels            EndpointProtectionSubsetUserRights                    `json:"userRightsModifyObjectLabels,omitempty"`
	UserRightsProfileSingleProcess          EndpointProtectionSubsetUserRights                    `json:"userRightsProfileSingleProcess,omitempty"`
	UserRightsRemoteShutdown                EndpointProtectionSubsetUserRights                    `json:"userRightsRemoteShutdown,omitempty"`
	UserRightsRestoreData                   EndpointProtectionSubsetUserRights                    `json:"userRightsRestoreData,omitempty"`
	UserRightsTakeOwnership                 EndpointProtectionSubsetUserRights                    `json:"userRightsTakeOwnership,omitempty"`
	BitLockerSystemDrivePolicy              EndpointProtectionSubsetBitLockerSystemDrivePolicy    `json:"bitLockerSystemDrivePolicy,omitempty"`
	BitLockerFixedDrivePolicy               EndpointProtectionSubsetBitLockerFixedDrivePolicy     `json:"bitLockerFixedDrivePolicy,omitempty"`
	BitLockerRemovableDrivePolicy           EndpointProtectionSubsetBitLockerRemovableDrivePolicy `json:"bitLockerRemovableDrivePolicy,omitempty"`
	// Fields for Template - Identity protection
	UseSecurityKeyForSignin                      bool   `json:"useSecurityKeyForSignin,omitempty"`
	EnhancedAntiSpoofingForFacialFeaturesEnabled bool   `json:"enhancedAntiSpoofingForFacialFeaturesEnabled,omitempty"`
	PinMinimumLength                             *int   `json:"pinMinimumLength,omitempty"`
	PinMaximumLength                             *int   `json:"pinMaximumLength,omitempty"`
	PinUppercaseCharactersUsage                  string `json:"pinUppercaseCharactersUsage,omitempty"`
	PinLowercaseCharactersUsage                  string `json:"pinLowercaseCharactersUsage,omitempty"`
	PinSpecialCharactersUsage                    string `json:"pinSpecialCharactersUsage,omitempty"`
	PinExpirationInDays                          *int   `json:"pinExpirationInDays,omitempty"`
	PinPreviousBlockCount                        *int   `json:"pinPreviousBlockCount,omitempty"`
	PinRecoveryEnabled                           bool   `json:"pinRecoveryEnabled,omitempty"`
	SecurityDeviceRequired                       bool   `json:"securityDeviceRequired,omitempty"`
	UnlockWithBiometricsEnabled                  bool   `json:"unlockWithBiometricsEnabled,omitempty"`
	UseCertificatesForOnPremisesAuthEnabled      bool   `json:"useCertificatesForOnPremisesAuthEnabled,omitempty"`
	WindowsHelloForBusinessBlocked               bool   `json:"windowsHelloForBusinessBlocked,omitempty"`
	// Fields for Template - Imported Administrative Templates
	// TODO
	// Fields for Template - Kiosk
	KioskBrowserDefaultUrl                 string                                     `json:"kioskBrowserDefaultUrl"`
	KioskBrowserEnableHomeButton           bool                                       `json:"kioskBrowserEnableHomeButton"`
	KioskBrowserEnableNavigationButtons    bool                                       `json:"kioskBrowserEnableNavigationButtons"`
	KioskBrowserEnableEndSessionButton     bool                                       `json:"kioskBrowserEnableEndSessionButton"`
	KioskBrowserRestartOnIdleTimeInMinutes *interface{}                               `json:"kioskBrowserRestartOnIdleTimeInMinutes"`
	KioskBrowserBlockedURLs                []string                                   `json:"kioskBrowserBlockedURLs"`
	KioskBrowserBlockedUrlExceptions       []string                                   `json:"kioskBrowserBlockedUrlExceptions"`
	EdgeKioskEnablePublicBrowsing          bool                                       `json:"edgeKioskEnablePublicBrowsing"`
	KioskProfiles                          []KioskSubsetKioskProfile                  `json:"kioskProfiles"`
	WindowsKioskForceUpdateSchedule        KioskSubsetWindowsKioskForceUpdateSchedule `json:"windowsKioskForceUpdateSchedule"`
	// configuration profile assignments
	AssignmentsODataContext string                                 `json:"assignments@odata.context,omitempty"`
	Assignments             []DeviceConfigurationProfileAssignment `json:"assignments"`
}

ResourceWindowsConfigurationProfileTemplate represents a single windows device configuration profile template.

type ResourceWindowsConfigurationProfileTemplatesList added in v0.0.2

type ResourceWindowsConfigurationProfileTemplatesList struct {
	ODataContext       string                                        `json:"@odata.context"`
	MicrosoftGraphTips string                                        `json:"@microsoft.graph.tips"`
	Value              []ResourceWindowsConfigurationProfileTemplate `json:"value"`
}

ResourceWindowsConfigurationProfileTemplatesList represents a response containing a list of Device Configuration Profiles.

type ResponseAssignmentFilter added in v0.0.2

type ResponseAssignmentFilter struct {
	ID                             string                            `json:"id"`
	CreatedDateTime                string                            `json:"createdDateTime"`
	LastModifiedDateTime           string                            `json:"lastModifiedDateTime"`
	DisplayName                    string                            `json:"displayName"`
	Description                    string                            `json:"description"`
	Platform                       string                            `json:"platform"`
	Rule                           string                            `json:"rule"`
	RoleScopeTags                  []string                          `json:"roleScopeTags"`
	AssignmentFilterManagementType string                            `json:"assignmentFilterManagementType"`
	Payloads                       []ResponseAssignmentFilterPayload `json:"payloads"`
}

ResponseAssignmentFilter represents an Assignment Filter resource.

type ResponseAssignmentFilterPayload added in v0.0.2

type ResponseAssignmentFilterPayload struct {
	ODataType            string `json:"@odata.type"`
	PayloadId            string `json:"payloadId"`
	PayloadType          string `json:"payloadType"`
	GroupId              string `json:"groupId"`
	AssignmentFilterType string `json:"assignmentFilterType"`
}

ResponseAssignmentFilterPayload represents the payload part of an Assignment Filter.

type ResponseAssignmentFiltersList added in v0.0.2

type ResponseAssignmentFiltersList struct {
	ODataContext string                     `json:"@odata.context"`
	Value        []ResponseAssignmentFilter `json:"value"`
}

ResponseAssignmentFiltersList represents a list of Assignment Filters.

type ResponseAssignmentsList

type ResponseAssignmentsList struct {
	Value []Assignment `json:"value"`
}

ResponseAssignmentsList is used to parse the list response of Assignments from Microsoft Graph API.

type ResponseDeviceCategoriesList

type ResponseDeviceCategoriesList struct {
	ODataContext string                   `json:"@odata.context"`
	Value        []ResourceDeviceCategory `json:"value"`
}

ResponseDeviceCategoriesList is used to parse the list response of Device Categories from Microsoft Graph API.

type ResponseDeviceComplianceScript

type ResponseDeviceComplianceScript struct {
	ODataContext            string                       `json:"@odata.context"`
	MicrosoftGraphTips      string                       `json:"@microsoft.graph.tips"`
	ID                      string                       `json:"id"`
	Publisher               string                       `json:"publisher"`
	Version                 string                       `json:"version"`
	DisplayName             string                       `json:"displayName"`
	Description             string                       `json:"description"`
	DetectionScriptContent  string                       `json:"detectionScriptContent"`
	CreatedDateTime         time.Time                    `json:"createdDateTime"`
	LastModifiedDateTime    time.Time                    `json:"lastModifiedDateTime"`
	RunAsAccount            string                       `json:"runAsAccount"`
	EnforceSignatureCheck   bool                         `json:"enforceSignatureCheck"`
	RunAs32Bit              bool                         `json:"runAs32Bit"`
	RoleScopeTagIds         []string                     `json:"roleScopeTagIds"`
	AssignmentsODataContext string                       `json:"assignments@odata.context"`
	Assignments             []DeviceComplianceAssignment `json:"assignments"`
}

ResponseDeviceComplianceScript represents the detailed information of a single device compliance script.

type ResponseDeviceComplianceScriptsList

type ResponseDeviceComplianceScriptsList struct {
	ODataContext       string                                    `json:"@odata.context"`
	ODataCount         int                                       `json:"@odata.count"`
	MicrosoftGraphTips string                                    `json:"@microsoft.graph.tips"`
	Value              []ResponseDeviceComplianceScriptsListItem `json:"value"`
}

ResponseDeviceComplianceScripts represents a response containing a list of Device Compliance Scripts.

type ResponseDeviceComplianceScriptsListAssignment

type ResponseDeviceComplianceScriptsListAssignment struct {
	ID                   string                                          `json:"id"`
	RunRemediationScript bool                                            `json:"runRemediationScript"`
	Target               ResponseDeviceComplianceScriptsListTarget       `json:"target"`
	RunSchedule          *ResponseDeviceComplianceScriptsListRunSchedule `json:"runSchedule,omitempty"` // Can be null, so pointer type is used
}

DeviceComplianceAssignment represents an assignment for a Device Compliance Script.

type ResponseDeviceComplianceScriptsListItem

type ResponseDeviceComplianceScriptsListItem struct {
	ID                     string                                          `json:"id"`
	Publisher              string                                          `json:"publisher"`
	Version                string                                          `json:"version"`
	DisplayName            string                                          `json:"displayName"`
	Description            string                                          `json:"description"`
	DetectionScriptContent *string                                         `json:"detectionScriptContent"`
	CreatedDateTime        time.Time                                       `json:"createdDateTime"`
	LastModifiedDateTime   time.Time                                       `json:"lastModifiedDateTime"`
	RunAsAccount           string                                          `json:"runAsAccount"`
	EnforceSignatureCheck  bool                                            `json:"enforceSignatureCheck"`
	RunAs32Bit             bool                                            `json:"runAs32Bit"`
	RoleScopeTagIds        []string                                        `json:"roleScopeTagIds"`
	Assignments            []ResponseDeviceComplianceScriptsListAssignment `json:"assignments"`
}

ResponseDeviceComplianceScriptsListItem represents a single Device Compliance Script item.

type ResponseDeviceComplianceScriptsListRunSchedule

type ResponseDeviceComplianceScriptsListRunSchedule struct {
	ODataType string `json:"@odata.type"`
	Interval  int    `json:"interval"`
}

ResponseDeviceComplianceScriptsListRunSchedule represents the schedule for running a compliance script.

type ResponseDeviceComplianceScriptsListTarget

type ResponseDeviceComplianceScriptsListTarget struct {
	ODataType                                  string `json:"@odata.type"`
	DeviceAndAppManagementAssignmentFilterID   string `json:"deviceAndAppManagementAssignmentFilterId"`
	DeviceAndAppManagementAssignmentFilterType string `json:"deviceAndAppManagementAssignmentFilterType"`
	GroupID                                    string `json:"groupId"`
}

ResponseDeviceComplianceScriptsListTarget represents the target of a compliance script assignment.

type ResponseDeviceHealthScriptAssignment added in v0.0.2

type ResponseDeviceHealthScriptAssignment struct {
	ODataType            string                               `json:"@odata.type"`
	ID                   string                               `json:"id"`
	Target               ConfigurationManagerCollectionTarget `json:"target"`
	RunRemediationScript bool                                 `json:"runRemediationScript"`
	RunSchedule          DeviceHealthScriptAssignmentSchedule `json:"runSchedule"`
}

ResponseDeviceHealthScriptAssignment represents the response structure for a device health script assignment.

type ResponseDeviceHealthScriptAssignmentList added in v0.0.2

type ResponseDeviceHealthScriptAssignmentList struct {
	Value []DeviceHealthScriptAssignmentItem `json:"value"`
}

ResponseDeviceHealthScriptAssignmentList represents a list of device health script assignments.

type ResponseDeviceManagementConfigurationPoliciesList

type ResponseDeviceManagementConfigurationPoliciesList struct {
	ODataContext string                                        `json:"@odata.context"`
	ODataCount   int                                           `json:"@odata.count"`
	Value        []ResourceDeviceManagementConfigurationPolicy `json:"value"`
}

ResourceDeviceManagementConfigurationPoliciesList represents the response structure for configuration policies.

type ResponseDeviceManagementGroupPolicyConfigurationsList

type ResponseDeviceManagementGroupPolicyConfigurationsList struct {
	ODataContext string                                             `json:"@odata.context"`
	Value        []ResourceDeviceManagementGroupPolicyConfiguration `json:"value"`
}

ResponseDeviceManagementGroupPolicyConfigurationsList is used to parse the list response of Group Policy Configurations from Microsoft Graph API.

type ResponseDeviceManagementReusablePolicySettingsList

type ResponseDeviceManagementReusablePolicySettingsList struct {
	ODataContext string                                          `json:"@odata.context"`
	ODataCount   int                                             `json:"@odata.count"`
	Value        []ResourceDeviceManagementReusablePolicySetting `json:"value"`
}

ResourceDeviceManagementReusablePolicySetting represents a list of reusable policy settings in device management.

type ResponseDeviceManagementScript

type ResponseDeviceManagementScript struct {
	ODataContext          string                                     `json:"@odata.context"`
	Tips                  string                                     `json:"@microsoft.graph.tips"`
	EnforceSignatureCheck bool                                       `json:"enforceSignatureCheck"`
	RunAs32Bit            bool                                       `json:"runAs32Bit"`
	ID                    string                                     `json:"id"`
	DisplayName           string                                     `json:"displayName"`
	Description           string                                     `json:"description"`
	ScriptContent         string                                     `json:"scriptContent"`
	CreatedDateTime       string                                     `json:"createdDateTime"`
	LastModifiedDateTime  string                                     `json:"lastModifiedDateTime"`
	RunAsAccount          string                                     `json:"runAsAccount"`
	FileName              string                                     `json:"fileName"`
	RoleScopeTagIds       []string                                   `json:"roleScopeTagIds"`
	AssignmentsContext    string                                     `json:"assignments@odata.context"`
	Assignments           []ResponseDeviceManagementScriptAssignment `json:"assignments"`
}

ResponseDeviceManagementScript represents a Device Management Script resource.

type ResponseDeviceManagementScriptAssignment

type ResponseDeviceManagementScriptAssignment struct {
	ID     string                               `json:"id"`
	Target ResponseDeviceManagementScriptTarget `json:"target"`
}

ResponseDeviceManagementScriptAssignment represents an assignment of a Device Management Script.

type ResponseDeviceManagementScriptListAssignment

type ResponseDeviceManagementScriptListAssignment struct {
	ID     string                                   `json:"id"`
	Target ResponseDeviceManagementScriptListTarget `json:"target"`
}

ResponseDeviceManagementScriptListAssignment represents an assignment of a Device Management Script.

type ResponseDeviceManagementScriptListItem

type ResponseDeviceManagementScriptListItem struct {
	ExecutionFrequency          string                                         `json:"executionFrequency"`
	RetryCount                  int                                            `json:"retryCount"`
	BlockExecutionNotifications bool                                           `json:"blockExecutionNotifications"`
	ID                          string                                         `json:"id"`
	DisplayName                 string                                         `json:"displayName"`
	Description                 string                                         `json:"description"`
	ScriptContent               string                                         `json:"scriptContent"`
	CreatedDateTime             string                                         `json:"createdDateTime"`
	LastModifiedDateTime        string                                         `json:"lastModifiedDateTime"`
	RunAsAccount                string                                         `json:"runAsAccount"`
	FileName                    string                                         `json:"fileName"`
	RoleScopeTagIds             []string                                       `json:"roleScopeTagIds"`
	Assignments                 []ResponseDeviceManagementScriptListAssignment `json:"assignments,omitempty"`
}

ResponseDeviceManagementScriptListItem represents a Device Management Script resource.

type ResponseDeviceManagementScriptListTarget

type ResponseDeviceManagementScriptListTarget struct {
	ODataType                                  string `json:"@odata.type"`
	DeviceAndAppManagementAssignmentFilterID   string `json:"deviceAndAppManagementAssignmentFilterId"`
	DeviceAndAppManagementAssignmentFilterType string `json:"deviceAndAppManagementAssignmentFilterType"`
	CollectionId                               string `json:"collectionId"`
}

ResponseDeviceManagementScriptListTarget represents the target of a script assignment.

type ResponseDeviceManagementScriptTarget

type ResponseDeviceManagementScriptTarget struct {
	ODataType                                  string `json:"@odata.type"`
	DeviceAndAppManagementAssignmentFilterID   string `json:"deviceAndAppManagementAssignmentFilterId"`
	DeviceAndAppManagementAssignmentFilterType string `json:"deviceAndAppManagementAssignmentFilterType"`
	GroupId                                    string `json:"groupId"`
}

ResponseDeviceManagementScriptTarget represents the target of a script assignment.

type ResponseDeviceManagementScriptsList

type ResponseDeviceManagementScriptsList struct {
	ODataContext string                                   `json:"@odata.context"`
	Value        []ResponseDeviceManagementScriptListItem `json:"value"`
}

ResponseDeviceManagementScriptsList represents a list of Device Management Scripts.

type ResponseDeviceShellScript

type ResponseDeviceShellScript struct {
	ODataContext                string                                `json:"@odata.context"`
	Tips                        string                                `json:"@microsoft.graph.tips"`
	ExecutionFrequency          string                                `json:"executionFrequency"`
	RetryCount                  int                                   `json:"retryCount"`
	BlockExecutionNotifications bool                                  `json:"blockExecutionNotifications"`
	ID                          string                                `json:"id"`
	DisplayName                 string                                `json:"displayName"`
	Description                 string                                `json:"description"`
	ScriptContent               string                                `json:"scriptContent"`
	CreatedDateTime             string                                `json:"createdDateTime"`
	LastModifiedDateTime        string                                `json:"lastModifiedDateTime"`
	RunAsAccount                string                                `json:"runAsAccount"`
	FileName                    string                                `json:"fileName"`
	RoleScopeTagIds             []string                              `json:"roleScopeTagIds"`
	AssignmentsContext          string                                `json:"assignments@odata.context"`
	Assignments                 []ResponseDeviceShellScriptAssignment `json:"assignments"`
}

ResponseDeviceShellScript represents a Device Shell Script by its ID.

type ResponseDeviceShellScriptAssignment

type ResponseDeviceShellScriptAssignment struct {
	ID     string                          `json:"id"`
	Target ResponseDeviceShellScriptTarget `json:"target"`
}

ResponseDeviceShellScriptAssignment represents an assignment of a Device Shell Script by its ID.

type ResponseDeviceShellScriptListAssignment

type ResponseDeviceShellScriptListAssignment struct {
	ID     string                              `json:"id"`
	Target ResponseDeviceShellScriptListTarget `json:"target"`
}

ResponseDeviceShellScriptListAssignment represents an assignment of a Device Shell Script.

type ResponseDeviceShellScriptListItem

type ResponseDeviceShellScriptListItem struct {
	ExecutionFrequency          string                                    `json:"executionFrequency"`
	RetryCount                  int                                       `json:"retryCount"`
	BlockExecutionNotifications bool                                      `json:"blockExecutionNotifications"`
	ID                          string                                    `json:"id"`
	DisplayName                 string                                    `json:"displayName"`
	Description                 string                                    `json:"description"`
	ScriptContent               string                                    `json:"scriptContent"`
	CreatedDateTime             time.Time                                 `json:"createdDateTime"`
	LastModifiedDateTime        time.Time                                 `json:"lastModifiedDateTime"`
	RunAsAccount                string                                    `json:"runAsAccount"`
	FileName                    string                                    `json:"fileName"`
	RoleScopeTagIds             []string                                  `json:"roleScopeTagIds"`
	Assignments                 []ResponseDeviceShellScriptListAssignment `json:"assignments,omitempty"`
}

ResponseDeviceShellScript represents a Device Shell Script resource.

type ResponseDeviceShellScriptListTarget

type ResponseDeviceShellScriptListTarget struct {
	ODataType                                  string `json:"@odata.type"`
	DeviceAndAppManagementAssignmentFilterID   string `json:"deviceAndAppManagementAssignmentFilterId"`
	DeviceAndAppManagementAssignmentFilterType string `json:"deviceAndAppManagementAssignmentFilterType"`
	CollectionId                               string `json:"collectionId"`
}

ResponseDeviceShellScriptTarget represents the target of a script assignment.

type ResponseDeviceShellScriptTarget

type ResponseDeviceShellScriptTarget struct {
	ODataType                                  string `json:"@odata.type"`
	DeviceAndAppManagementAssignmentFilterId   string `json:"deviceAndAppManagementAssignmentFilterId"`
	DeviceAndAppManagementAssignmentFilterType string `json:"deviceAndAppManagementAssignmentFilterType"`
	GroupId                                    string `json:"groupId"`
}

ResponseDeviceShellScriptTarget represents the target of a script assignment.

type ResponseDeviceShellScriptsList

type ResponseDeviceShellScriptsList struct {
	ODataContext string                              `json:"@odata.context"`
	Value        []ResponseDeviceShellScriptListItem `json:"value"`
}

ResponseDeviceShellScriptsList represents a list of Device Shell Scripts.

type ResponseGroupPolicyDefinitionValuesList

type ResponseGroupPolicyDefinitionValuesList struct {
	Value []GroupPolicyDefinitionValue `json:"value"`
}

ResponseGroupPolicyDefinitionValuesList is used to parse the list response of Group Policy Definition Values from Microsoft Graph API.

type ResponsePresentationValuesList

type ResponsePresentationValuesList struct {
	Value []GroupPolicyPresentationValue `json:"value"`
}

ResponsePresentationValuesList is used to parse the list response of Group Policy Presentation Values from Microsoft Graph API.

type ResponseProactiveRemediatioAssignment

type ResponseProactiveRemediatioAssignment struct {
	ID                   string                                      `json:"id"`
	RunRemediationScript bool                                        `json:"runRemediationScript"`
	Target               ResponseProactiveRemediationListTarget      `json:"target"`
	RunSchedule          ResponseProactiveRemediationListRunSchedule `json:"runSchedule"`
}

ResponseProactiveRemediatioAssignment represents an assignment for a health script.

type ResponseProactiveRemediation

type ResponseProactiveRemediation struct {
	ODataContext                string                                   `json:"@odata.context"`
	MicrosoftGraphTips          string                                   `json:"@microsoft.graph.tips"`
	ID                          string                                   `json:"id"`
	Publisher                   string                                   `json:"publisher"`
	Version                     string                                   `json:"version"`
	DisplayName                 string                                   `json:"displayName"`
	Description                 string                                   `json:"description"`
	DetectionScriptContent      string                                   `json:"detectionScriptContent"`
	RemediationScriptContent    string                                   `json:"remediationScriptContent"`
	CreatedDateTime             time.Time                                `json:"createdDateTime"`
	LastModifiedDateTime        time.Time                                `json:"lastModifiedDateTime"`
	RunAsAccount                string                                   `json:"runAsAccount"`
	EnforceSignatureCheck       bool                                     `json:"enforceSignatureCheck"`
	RunAs32Bit                  bool                                     `json:"runAs32Bit"`
	RoleScopeTagIds             []string                                 `json:"roleScopeTagIds"`
	IsGlobalScript              bool                                     `json:"isGlobalScript"`
	HighestAvailableVersion     *string                                  `json:"highestAvailableVersion"`
	DeviceHealthScriptType      string                                   `json:"deviceHealthScriptType"`
	DetectionScriptParameters   []interface{}                            `json:"detectionScriptParameters"`
	RemediationScriptParameters []interface{}                            `json:"remediationScriptParameters"`
	AssignmentsODataContext     string                                   `json:"assignments@odata.context"`
	Assignments                 []ResponseProactiveRemediationAssignment `json:"assignments"`
}

ResponseProactiveRemediation represents the response for a single Proactive Remediation resource.

type ResponseProactiveRemediationAssignment

type ResponseProactiveRemediationAssignment struct {
	ID                   string                                            `json:"id"`
	RunRemediationScript bool                                              `json:"runRemediationScript"`
	Target               ResponseProactiveRemediationGroupAssignmentTarget `json:"target"`
	RunSchedule          ResponseProactiveRemediationRunSchedule           `json:"runSchedule"`
}

ResponseProactiveRemediationAssignment represents an assignment for a health script.

type ResponseProactiveRemediationGroupAssignmentTarget

type ResponseProactiveRemediationGroupAssignmentTarget struct {
	ODataType                                  string `json:"@odata.type"`
	DeviceAndAppManagementAssignmentFilterId   string `json:"deviceAndAppManagementAssignmentFilterId"`
	DeviceAndAppManagementAssignmentFilterType string `json:"deviceAndAppManagementAssignmentFilterType"`
	GroupId                                    string `json:"groupId"`
}

ResponseProactiveRemediationGroupAssignmentTarget represents the target of a script assignment.

type ResponseProactiveRemediationListItem

type ResponseProactiveRemediationListItem struct {
	ID                          string                                  `json:"id"`
	Publisher                   string                                  `json:"publisher"`
	Version                     string                                  `json:"version"`
	DisplayName                 string                                  `json:"displayName"`
	Description                 string                                  `json:"description"`
	DetectionScriptContent      string                                  `json:"detectionScriptContent"`
	RemediationScriptContent    string                                  `json:"remediationScriptContent"`
	CreatedDateTime             string                                  `json:"createdDateTime"`
	LastModifiedDateTime        string                                  `json:"lastModifiedDateTime"`
	RunAsAccount                string                                  `json:"runAsAccount"`
	EnforceSignatureCheck       bool                                    `json:"enforceSignatureCheck"`
	RunAs32Bit                  bool                                    `json:"runAs32Bit"`
	RoleScopeTagIds             []string                                `json:"roleScopeTagIds"`
	IsGlobalScript              bool                                    `json:"isGlobalScript"`
	HighestAvailableVersion     string                                  `json:"highestAvailableVersion"`
	DeviceHealthScriptType      string                                  `json:"deviceHealthScriptType"`
	DetectionScriptParameters   []interface{}                           `json:"detectionScriptParameters"`
	RemediationScriptParameters []interface{}                           `json:"remediationScriptParameters"`
	AssignmentsODataContext     string                                  `json:"assignments@odata.context"`
	Assignments                 []ResponseProactiveRemediatioAssignment `json:"assignments"`
}

ResponseProactiveRemediationListItem represents a single health script entry from a list.

type ResponseProactiveRemediationListRunSchedule

type ResponseProactiveRemediationListRunSchedule struct {
	ODataType string `json:"@odata.type"`
	Interval  int    `json:"interval"`
	UseUTC    bool   `json:"useUtc"`
	Time      string `json:"time"`
}

ResponseProactiveRemediationListRunSchedule represents the schedule for running a script.

type ResponseProactiveRemediationListTarget

type ResponseProactiveRemediationListTarget struct {
	ODataType                                  string `json:"@odata.type"`
	DeviceAndAppManagementAssignmentFilterID   string `json:"deviceAndAppManagementAssignmentFilterId"`
	DeviceAndAppManagementAssignmentFilterType string `json:"deviceAndAppManagementAssignmentFilterType"`
	GroupID                                    string `json:"groupId"`
}

ResponseProactiveRemediationListTarget represents the target of a script assignment.

type ResponseProactiveRemediationRunSchedule

type ResponseProactiveRemediationRunSchedule struct {
	ODataType string `json:"@odata.type"`
	Interval  int    `json:"interval"`
	UseUtc    bool   `json:"useUtc"`
	Time      string `json:"time"`
}

ResponseProactiveRemediationRunSchedule represents the schedule for running a script.

type ResponseProactiveRemediationsList

type ResponseProactiveRemediationsList struct {
	ODataContext       string                                 `json:"@odata.context"`
	ODataCount         int                                    `json:"@odata.count"`
	MicrosoftGraphTips string                                 `json:"@microsoft.graph.tips"`
	Value              []ResponseProactiveRemediationListItem `json:"value"`
}

ResponseProactiveRemediationsList represents a list of Proactive Remediation resources.

type Win32App added in v0.0.2

type Win32App struct {
	StartLayoutTileSize         string       `json:"startLayoutTileSize"`
	Name                        *interface{} `json:"name"`
	AppType                     string       `json:"appType"`
	AutoLaunch                  bool         `json:"autoLaunch"`
	ClassicAppPath              string       `json:"classicAppPath"`
	EdgeNoFirstRun              bool         `json:"edgeNoFirstRun"`
	EdgeKioskIdleTimeoutMinutes *interface{} `json:"edgeKioskIdleTimeoutMinutes"`
	EdgeKioskType               string       `json:"edgeKioskType"`
	EdgeKiosk                   string       `json:"edgeKiosk"`
}

Win32App represents the 'win32App' JSON object.

type WindowsKioskAutologon added in v0.0.2

type WindowsKioskAutologon struct {
	ODataType string `json:"@odata.type"`
}

WindowsKioskAutologon represents the 'userAccountsConfiguration' JSON object.

type WindowsKioskSingleWin32App added in v0.0.2

type WindowsKioskSingleWin32App struct {
	ODataType string   `json:"@odata.type"`
	Win32App  Win32App `json:"win32App"`
}

WindowsKioskSingleWin32App represents the 'appConfiguration' JSON object.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL