github.com/yaegashi/msgraph.go@v0.1.4/beta/ModelDevice.go (about)

     1  // Code generated by msgraph.go/gen DO NOT EDIT.
     2  
     3  package msgraph
     4  
     5  import "time"
     6  
     7  // Device undocumented
     8  type Device struct {
     9  	// DirectoryObject is the base model of Device
    10  	DirectoryObject
    11  	// AccountEnabled undocumented
    12  	AccountEnabled *bool `json:"accountEnabled,omitempty"`
    13  	// AlternativeSecurityIDs undocumented
    14  	AlternativeSecurityIDs []AlternativeSecurityID `json:"alternativeSecurityIds,omitempty"`
    15  	// ApproximateLastSignInDateTime undocumented
    16  	ApproximateLastSignInDateTime *time.Time `json:"approximateLastSignInDateTime,omitempty"`
    17  	// ComplianceExpirationDateTime undocumented
    18  	ComplianceExpirationDateTime *time.Time `json:"complianceExpirationDateTime,omitempty"`
    19  	// DeviceID undocumented
    20  	DeviceID *string `json:"deviceId,omitempty"`
    21  	// DeviceMetadata undocumented
    22  	DeviceMetadata *string `json:"deviceMetadata,omitempty"`
    23  	// DeviceVersion undocumented
    24  	DeviceVersion *int `json:"deviceVersion,omitempty"`
    25  	// DisplayName undocumented
    26  	DisplayName *string `json:"displayName,omitempty"`
    27  	// IsCompliant undocumented
    28  	IsCompliant *bool `json:"isCompliant,omitempty"`
    29  	// IsManaged undocumented
    30  	IsManaged *bool `json:"isManaged,omitempty"`
    31  	// OnPremisesLastSyncDateTime undocumented
    32  	OnPremisesLastSyncDateTime *time.Time `json:"onPremisesLastSyncDateTime,omitempty"`
    33  	// OnPremisesSyncEnabled undocumented
    34  	OnPremisesSyncEnabled *bool `json:"onPremisesSyncEnabled,omitempty"`
    35  	// OperatingSystem undocumented
    36  	OperatingSystem *string `json:"operatingSystem,omitempty"`
    37  	// OperatingSystemVersion undocumented
    38  	OperatingSystemVersion *string `json:"operatingSystemVersion,omitempty"`
    39  	// PhysicalIDs undocumented
    40  	PhysicalIDs []string `json:"physicalIds,omitempty"`
    41  	// ProfileType undocumented
    42  	ProfileType *string `json:"profileType,omitempty"`
    43  	// SystemLabels undocumented
    44  	SystemLabels []string `json:"systemLabels,omitempty"`
    45  	// TrustType undocumented
    46  	TrustType *string `json:"trustType,omitempty"`
    47  	// Name undocumented
    48  	Name *string `json:"Name,omitempty"`
    49  	// Manufacturer undocumented
    50  	Manufacturer *string `json:"Manufacturer,omitempty"`
    51  	// Model undocumented
    52  	Model *string `json:"Model,omitempty"`
    53  	// Kind undocumented
    54  	Kind *string `json:"Kind,omitempty"`
    55  	// Status undocumented
    56  	Status *string `json:"Status,omitempty"`
    57  	// Platform undocumented
    58  	Platform *string `json:"Platform,omitempty"`
    59  	// MemberOf undocumented
    60  	MemberOf []DirectoryObject `json:"memberOf,omitempty"`
    61  	// RegisteredOwners undocumented
    62  	RegisteredOwners []DirectoryObject `json:"registeredOwners,omitempty"`
    63  	// RegisteredUsers undocumented
    64  	RegisteredUsers []DirectoryObject `json:"registeredUsers,omitempty"`
    65  	// TransitiveMemberOf undocumented
    66  	TransitiveMemberOf []DirectoryObject `json:"transitiveMemberOf,omitempty"`
    67  	// Extensions undocumented
    68  	Extensions []Extension `json:"extensions,omitempty"`
    69  	// Commands undocumented
    70  	Commands []Command `json:"commands,omitempty"`
    71  }
    72  
    73  // DeviceActionResult undocumented
    74  type DeviceActionResult struct {
    75  	// Object is the base model of DeviceActionResult
    76  	Object
    77  	// ActionName Action name
    78  	ActionName *string `json:"actionName,omitempty"`
    79  	// ActionState State of the action
    80  	ActionState *ActionState `json:"actionState,omitempty"`
    81  	// StartDateTime Time the action was initiated
    82  	StartDateTime *time.Time `json:"startDateTime,omitempty"`
    83  	// LastUpdatedDateTime Time the action state was last updated
    84  	LastUpdatedDateTime *time.Time `json:"lastUpdatedDateTime,omitempty"`
    85  }
    86  
    87  // DeviceAndAppManagementAssignedRoleDetails undocumented
    88  type DeviceAndAppManagementAssignedRoleDetails struct {
    89  	// Object is the base model of DeviceAndAppManagementAssignedRoleDetails
    90  	Object
    91  	// RoleDefinitionIDs Role Definition IDs for the specifc Role Definitions assigned to a user.
    92  	RoleDefinitionIDs []string `json:"roleDefinitionIds,omitempty"`
    93  	// RoleAssignmentIDs Role Assignment IDs for the specifc Role Assignments assigned to a user.
    94  	RoleAssignmentIDs []string `json:"roleAssignmentIds,omitempty"`
    95  }
    96  
    97  // DeviceAndAppManagementAssignmentTarget undocumented
    98  type DeviceAndAppManagementAssignmentTarget struct {
    99  	// Object is the base model of DeviceAndAppManagementAssignmentTarget
   100  	Object
   101  }
   102  
   103  // DeviceAndAppManagementData undocumented
   104  type DeviceAndAppManagementData struct {
   105  	// Object is the base model of DeviceAndAppManagementData
   106  	Object
   107  	// Content undocumented
   108  	Content *Stream `json:"content,omitempty"`
   109  }
   110  
   111  // DeviceAndAppManagementRoleAssignment The Role Assignment resource. Role assignments tie together a role definition with members and scopes. There can be one or more role assignments per role. This applies to custom and built-in roles.
   112  type DeviceAndAppManagementRoleAssignment struct {
   113  	// RoleAssignment is the base model of DeviceAndAppManagementRoleAssignment
   114  	RoleAssignment
   115  	// Members The list of ids of role member security groups. These are IDs from Azure Active Directory.
   116  	Members []string `json:"members,omitempty"`
   117  	// RoleScopeTags undocumented
   118  	RoleScopeTags []RoleScopeTag `json:"roleScopeTags,omitempty"`
   119  }
   120  
   121  // DeviceAndAppManagementRoleDefinition The Role Definition resource. The role definition is the foundation of role based access in Intune. The role combines an Intune resource such as a Mobile App and associated role permissions such as Create or Read for the resource. There are two types of roles, built-in and custom. Built-in roles cannot be modified. Both built-in roles and custom roles must have assignments to be enforced. Create custom roles if you want to define a role that allows any of the available resources and role permissions to be combined into a single role.
   122  type DeviceAndAppManagementRoleDefinition struct {
   123  	// RoleDefinition is the base model of DeviceAndAppManagementRoleDefinition
   124  	RoleDefinition
   125  }
   126  
   127  // DeviceAppManagement Singleton entity that acts as a container for all device and app management functionality.
   128  type DeviceAppManagement struct {
   129  	// Entity is the base model of DeviceAppManagement
   130  	Entity
   131  	// MicrosoftStoreForBusinessLastSuccessfulSyncDateTime The last time the apps from the Microsoft Store for Business were synced successfully for the account.
   132  	MicrosoftStoreForBusinessLastSuccessfulSyncDateTime *time.Time `json:"microsoftStoreForBusinessLastSuccessfulSyncDateTime,omitempty"`
   133  	// IsEnabledForMicrosoftStoreForBusiness Whether the account is enabled for syncing applications from the Microsoft Store for Business.
   134  	IsEnabledForMicrosoftStoreForBusiness *bool `json:"isEnabledForMicrosoftStoreForBusiness,omitempty"`
   135  	// MicrosoftStoreForBusinessLanguage The locale information used to sync applications from the Microsoft Store for Business. Cultures that are specific to a country/region. The names of these cultures follow RFC 4646 (Windows Vista and later). The format is <languagecode2>-<country/regioncode2>, where <languagecode2> is a lowercase two-letter code derived from ISO 639-1 and <country/regioncode2> is an uppercase two-letter code derived from ISO 3166. For example, en-US for English (United States) is a specific culture.
   136  	MicrosoftStoreForBusinessLanguage *string `json:"microsoftStoreForBusinessLanguage,omitempty"`
   137  	// MicrosoftStoreForBusinessLastCompletedApplicationSyncTime The last time an application sync from the Microsoft Store for Business was completed.
   138  	MicrosoftStoreForBusinessLastCompletedApplicationSyncTime *time.Time `json:"microsoftStoreForBusinessLastCompletedApplicationSyncTime,omitempty"`
   139  	// MicrosoftStoreForBusinessPortalSelection The end user portal information is used to sync applications from the Microsoft Store for Business to Intune Company Portal. There are three options to pick from ['Company portal only', 'Company portal and private store', 'Private store only']
   140  	MicrosoftStoreForBusinessPortalSelection *MicrosoftStoreForBusinessPortalSelectionOptions `json:"microsoftStoreForBusinessPortalSelection,omitempty"`
   141  	// ManagedEBooks undocumented
   142  	ManagedEBooks []ManagedEBook `json:"managedEBooks,omitempty"`
   143  	// MobileApps undocumented
   144  	MobileApps []MobileApp `json:"mobileApps,omitempty"`
   145  	// MobileAppCategories undocumented
   146  	MobileAppCategories []MobileAppCategory `json:"mobileAppCategories,omitempty"`
   147  	// EnterpriseCodeSigningCertificates undocumented
   148  	EnterpriseCodeSigningCertificates []EnterpriseCodeSigningCertificate `json:"enterpriseCodeSigningCertificates,omitempty"`
   149  	// IOSLobAppProvisioningConfigurations undocumented
   150  	IOSLobAppProvisioningConfigurations []IOSLobAppProvisioningConfiguration `json:"iosLobAppProvisioningConfigurations,omitempty"`
   151  	// SymantecCodeSigningCertificate undocumented
   152  	SymantecCodeSigningCertificate *SymantecCodeSigningCertificate `json:"symantecCodeSigningCertificate,omitempty"`
   153  	// MobileAppConfigurations undocumented
   154  	MobileAppConfigurations []ManagedDeviceMobileAppConfiguration `json:"mobileAppConfigurations,omitempty"`
   155  	// ManagedEBookCategories undocumented
   156  	ManagedEBookCategories []ManagedEBookCategory `json:"managedEBookCategories,omitempty"`
   157  	// PolicySets undocumented
   158  	PolicySets []PolicySet `json:"policySets,omitempty"`
   159  	// SideLoadingKeys undocumented
   160  	SideLoadingKeys []SideLoadingKey `json:"sideLoadingKeys,omitempty"`
   161  	// VPPTokens undocumented
   162  	VPPTokens []VPPToken `json:"vppTokens,omitempty"`
   163  	// WindowsManagementApp undocumented
   164  	WindowsManagementApp *WindowsManagementApp `json:"windowsManagementApp,omitempty"`
   165  	// ManagedAppPolicies undocumented
   166  	ManagedAppPolicies []ManagedAppPolicy `json:"managedAppPolicies,omitempty"`
   167  	// IOSManagedAppProtections undocumented
   168  	IOSManagedAppProtections []IOSManagedAppProtection `json:"iosManagedAppProtections,omitempty"`
   169  	// AndroidManagedAppProtections undocumented
   170  	AndroidManagedAppProtections []AndroidManagedAppProtection `json:"androidManagedAppProtections,omitempty"`
   171  	// DefaultManagedAppProtections undocumented
   172  	DefaultManagedAppProtections []DefaultManagedAppProtection `json:"defaultManagedAppProtections,omitempty"`
   173  	// TargetedManagedAppConfigurations undocumented
   174  	TargetedManagedAppConfigurations []TargetedManagedAppConfiguration `json:"targetedManagedAppConfigurations,omitempty"`
   175  	// MDMWindowsInformationProtectionPolicies undocumented
   176  	MDMWindowsInformationProtectionPolicies []MDMWindowsInformationProtectionPolicy `json:"mdmWindowsInformationProtectionPolicies,omitempty"`
   177  	// WindowsInformationProtectionPolicies undocumented
   178  	WindowsInformationProtectionPolicies []WindowsInformationProtectionPolicy `json:"windowsInformationProtectionPolicies,omitempty"`
   179  	// ManagedAppRegistrations undocumented
   180  	ManagedAppRegistrations []ManagedAppRegistration `json:"managedAppRegistrations,omitempty"`
   181  	// ManagedAppStatuses undocumented
   182  	ManagedAppStatuses []ManagedAppStatus `json:"managedAppStatuses,omitempty"`
   183  	// WindowsInformationProtectionDeviceRegistrations undocumented
   184  	WindowsInformationProtectionDeviceRegistrations []WindowsInformationProtectionDeviceRegistration `json:"windowsInformationProtectionDeviceRegistrations,omitempty"`
   185  	// WindowsInformationProtectionWipeActions undocumented
   186  	WindowsInformationProtectionWipeActions []WindowsInformationProtectionWipeAction `json:"windowsInformationProtectionWipeActions,omitempty"`
   187  	// DeviceAppManagementTasks undocumented
   188  	DeviceAppManagementTasks []DeviceAppManagementTask `json:"deviceAppManagementTasks,omitempty"`
   189  	// WdacSupplementalPolicies undocumented
   190  	WdacSupplementalPolicies []WindowsDefenderApplicationControlSupplementalPolicy `json:"wdacSupplementalPolicies,omitempty"`
   191  }
   192  
   193  // DeviceAppManagementTask A device app management task.
   194  type DeviceAppManagementTask struct {
   195  	// Entity is the base model of DeviceAppManagementTask
   196  	Entity
   197  	// DisplayName The name.
   198  	DisplayName *string `json:"displayName,omitempty"`
   199  	// Description The description.
   200  	Description *string `json:"description,omitempty"`
   201  	// CreatedDateTime The created date.
   202  	CreatedDateTime *time.Time `json:"createdDateTime,omitempty"`
   203  	// DueDateTime The due date.
   204  	DueDateTime *time.Time `json:"dueDateTime,omitempty"`
   205  	// Category The category.
   206  	Category *DeviceAppManagementTaskCategory `json:"category,omitempty"`
   207  	// Priority The priority.
   208  	Priority *DeviceAppManagementTaskPriority `json:"priority,omitempty"`
   209  	// Creator The email address of the creator.
   210  	Creator *string `json:"creator,omitempty"`
   211  	// CreatorNotes Notes from the creator.
   212  	CreatorNotes *string `json:"creatorNotes,omitempty"`
   213  	// AssignedTo The name or email of the admin this task is assigned to.
   214  	AssignedTo *string `json:"assignedTo,omitempty"`
   215  	// Status The status.
   216  	Status *DeviceAppManagementTaskStatus `json:"status,omitempty"`
   217  }
   218  
   219  // DeviceCategory Device categories provides a way to organize your devices. Using device categories, company administrators can define their own categories that make sense to their company. These categories can then be applied to a device in the Intune Azure console or selected by a user during device enrollment. You can filter reports and create dynamic Azure Active Directory device groups based on device categories.
   220  type DeviceCategory struct {
   221  	// Entity is the base model of DeviceCategory
   222  	Entity
   223  	// DisplayName Display name for the device category.
   224  	DisplayName *string `json:"displayName,omitempty"`
   225  	// Description Optional description for the device category.
   226  	Description *string `json:"description,omitempty"`
   227  	// RoleScopeTagIDs Optional role scope tags for the device category.
   228  	RoleScopeTagIDs []string `json:"roleScopeTagIds,omitempty"`
   229  }
   230  
   231  // DeviceComplianceActionItem Scheduled Action Configuration
   232  type DeviceComplianceActionItem struct {
   233  	// Entity is the base model of DeviceComplianceActionItem
   234  	Entity
   235  	// GracePeriodHours Number of hours to wait till the action will be enforced. Valid values 0 to 8760
   236  	GracePeriodHours *int `json:"gracePeriodHours,omitempty"`
   237  	// ActionType What action to take
   238  	ActionType *DeviceComplianceActionType `json:"actionType,omitempty"`
   239  	// NotificationTemplateID What notification Message template to use
   240  	NotificationTemplateID *string `json:"notificationTemplateId,omitempty"`
   241  	// NotificationMessageCCList A list of group IDs to speicify who to CC this notification message to.
   242  	NotificationMessageCCList []string `json:"notificationMessageCCList,omitempty"`
   243  }
   244  
   245  // DeviceComplianceDeviceOverview undocumented
   246  type DeviceComplianceDeviceOverview struct {
   247  	// Entity is the base model of DeviceComplianceDeviceOverview
   248  	Entity
   249  	// PendingCount Number of pending devices
   250  	PendingCount *int `json:"pendingCount,omitempty"`
   251  	// NotApplicableCount Number of not applicable devices
   252  	NotApplicableCount *int `json:"notApplicableCount,omitempty"`
   253  	// NotApplicablePlatformCount Number of not applicable devices due to mismatch platform and policy
   254  	NotApplicablePlatformCount *int `json:"notApplicablePlatformCount,omitempty"`
   255  	// SuccessCount Number of succeeded devices
   256  	SuccessCount *int `json:"successCount,omitempty"`
   257  	// ErrorCount Number of error devices
   258  	ErrorCount *int `json:"errorCount,omitempty"`
   259  	// FailedCount Number of failed devices
   260  	FailedCount *int `json:"failedCount,omitempty"`
   261  	// ConflictCount Number of devices in conflict
   262  	ConflictCount *int `json:"conflictCount,omitempty"`
   263  	// LastUpdateDateTime Last update time
   264  	LastUpdateDateTime *time.Time `json:"lastUpdateDateTime,omitempty"`
   265  	// ConfigurationVersion Version of the policy for that overview
   266  	ConfigurationVersion *int `json:"configurationVersion,omitempty"`
   267  }
   268  
   269  // DeviceComplianceDeviceStatus undocumented
   270  type DeviceComplianceDeviceStatus struct {
   271  	// Entity is the base model of DeviceComplianceDeviceStatus
   272  	Entity
   273  	// DeviceDisplayName Device name of the DevicePolicyStatus.
   274  	DeviceDisplayName *string `json:"deviceDisplayName,omitempty"`
   275  	// UserName The User Name that is being reported
   276  	UserName *string `json:"userName,omitempty"`
   277  	// DeviceModel The device model that is being reported
   278  	DeviceModel *string `json:"deviceModel,omitempty"`
   279  	// Platform Platform of the device that is being reported
   280  	Platform *int `json:"platform,omitempty"`
   281  	// ComplianceGracePeriodExpirationDateTime The DateTime when device compliance grace period expires
   282  	ComplianceGracePeriodExpirationDateTime *time.Time `json:"complianceGracePeriodExpirationDateTime,omitempty"`
   283  	// Status Compliance status of the policy report.
   284  	Status *ComplianceStatus `json:"status,omitempty"`
   285  	// LastReportedDateTime Last modified date time of the policy report.
   286  	LastReportedDateTime *time.Time `json:"lastReportedDateTime,omitempty"`
   287  	// UserPrincipalName UserPrincipalName.
   288  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
   289  }
   290  
   291  // DeviceCompliancePolicy This is the base class for Compliance policy. Compliance policies are platform specific and individual per-platform compliance policies inherit from here.
   292  type DeviceCompliancePolicy struct {
   293  	// Entity is the base model of DeviceCompliancePolicy
   294  	Entity
   295  	// RoleScopeTagIDs List of Scope Tags for this Entity instance.
   296  	RoleScopeTagIDs []string `json:"roleScopeTagIds,omitempty"`
   297  	// CreatedDateTime DateTime the object was created.
   298  	CreatedDateTime *time.Time `json:"createdDateTime,omitempty"`
   299  	// Description Admin provided description of the Device Configuration.
   300  	Description *string `json:"description,omitempty"`
   301  	// LastModifiedDateTime DateTime the object was last modified.
   302  	LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"`
   303  	// DisplayName Admin provided name of the device configuration.
   304  	DisplayName *string `json:"displayName,omitempty"`
   305  	// Version Version of the device configuration.
   306  	Version *int `json:"version,omitempty"`
   307  	// ScheduledActionsForRule undocumented
   308  	ScheduledActionsForRule []DeviceComplianceScheduledActionForRule `json:"scheduledActionsForRule,omitempty"`
   309  	// DeviceStatuses undocumented
   310  	DeviceStatuses []DeviceComplianceDeviceStatus `json:"deviceStatuses,omitempty"`
   311  	// UserStatuses undocumented
   312  	UserStatuses []DeviceComplianceUserStatus `json:"userStatuses,omitempty"`
   313  	// DeviceStatusOverview undocumented
   314  	DeviceStatusOverview *DeviceComplianceDeviceOverview `json:"deviceStatusOverview,omitempty"`
   315  	// UserStatusOverview undocumented
   316  	UserStatusOverview *DeviceComplianceUserOverview `json:"userStatusOverview,omitempty"`
   317  	// DeviceSettingStateSummaries undocumented
   318  	DeviceSettingStateSummaries []SettingStateDeviceSummary `json:"deviceSettingStateSummaries,omitempty"`
   319  	// Assignments undocumented
   320  	Assignments []DeviceCompliancePolicyAssignment `json:"assignments,omitempty"`
   321  }
   322  
   323  // DeviceCompliancePolicyAssignment Device compliance policy assignment.
   324  type DeviceCompliancePolicyAssignment struct {
   325  	// Entity is the base model of DeviceCompliancePolicyAssignment
   326  	Entity
   327  	// Target Target for the compliance policy assignment.
   328  	Target *DeviceAndAppManagementAssignmentTarget `json:"target,omitempty"`
   329  	// Source The assignment source for the device compliance policy, direct or parcel/policySet.
   330  	Source *DeviceAndAppManagementAssignmentSource `json:"source,omitempty"`
   331  	// SourceID The identifier of the source of the assignment.
   332  	SourceID *string `json:"sourceId,omitempty"`
   333  }
   334  
   335  // DeviceCompliancePolicyDeviceStateSummary undocumented
   336  type DeviceCompliancePolicyDeviceStateSummary struct {
   337  	// Entity is the base model of DeviceCompliancePolicyDeviceStateSummary
   338  	Entity
   339  	// InGracePeriodCount Number of devices that are in grace period
   340  	InGracePeriodCount *int `json:"inGracePeriodCount,omitempty"`
   341  	// ConfigManagerCount Number of devices that have compliance managed by System Center Configuration Manager
   342  	ConfigManagerCount *int `json:"configManagerCount,omitempty"`
   343  	// UnknownDeviceCount Number of unknown devices
   344  	UnknownDeviceCount *int `json:"unknownDeviceCount,omitempty"`
   345  	// NotApplicableDeviceCount Number of not applicable devices
   346  	NotApplicableDeviceCount *int `json:"notApplicableDeviceCount,omitempty"`
   347  	// CompliantDeviceCount Number of compliant devices
   348  	CompliantDeviceCount *int `json:"compliantDeviceCount,omitempty"`
   349  	// RemediatedDeviceCount Number of remediated devices
   350  	RemediatedDeviceCount *int `json:"remediatedDeviceCount,omitempty"`
   351  	// NonCompliantDeviceCount Number of NonCompliant devices
   352  	NonCompliantDeviceCount *int `json:"nonCompliantDeviceCount,omitempty"`
   353  	// ErrorDeviceCount Number of error devices
   354  	ErrorDeviceCount *int `json:"errorDeviceCount,omitempty"`
   355  	// ConflictDeviceCount Number of conflict devices
   356  	ConflictDeviceCount *int `json:"conflictDeviceCount,omitempty"`
   357  }
   358  
   359  // DeviceCompliancePolicyGroupAssignment Device compliance policy group assignment.
   360  type DeviceCompliancePolicyGroupAssignment struct {
   361  	// Entity is the base model of DeviceCompliancePolicyGroupAssignment
   362  	Entity
   363  	// TargetGroupID The Id of the AAD group we are targeting the device compliance policy to.
   364  	TargetGroupID *string `json:"targetGroupId,omitempty"`
   365  	// ExcludeGroup Indicates if this group is should be excluded. Defaults that the group should be included
   366  	ExcludeGroup *bool `json:"excludeGroup,omitempty"`
   367  	// DeviceCompliancePolicy undocumented
   368  	DeviceCompliancePolicy *DeviceCompliancePolicy `json:"deviceCompliancePolicy,omitempty"`
   369  }
   370  
   371  // DeviceCompliancePolicyPolicySetItem A class containing the properties used for device compliance policy PolicySetItem.
   372  type DeviceCompliancePolicyPolicySetItem struct {
   373  	// PolicySetItem is the base model of DeviceCompliancePolicyPolicySetItem
   374  	PolicySetItem
   375  }
   376  
   377  // DeviceCompliancePolicySettingState undocumented
   378  type DeviceCompliancePolicySettingState struct {
   379  	// Object is the base model of DeviceCompliancePolicySettingState
   380  	Object
   381  	// Setting The setting that is being reported
   382  	Setting *string `json:"setting,omitempty"`
   383  	// SettingName Localized/user friendly setting name that is being reported
   384  	SettingName *string `json:"settingName,omitempty"`
   385  	// InstanceDisplayName Name of setting instance that is being reported.
   386  	InstanceDisplayName *string `json:"instanceDisplayName,omitempty"`
   387  	// State The compliance state of the setting
   388  	State *ComplianceStatus `json:"state,omitempty"`
   389  	// ErrorCode Error code for the setting
   390  	ErrorCode *int `json:"errorCode,omitempty"`
   391  	// ErrorDescription Error description
   392  	ErrorDescription *string `json:"errorDescription,omitempty"`
   393  	// UserID UserId
   394  	UserID *string `json:"userId,omitempty"`
   395  	// UserName UserName
   396  	UserName *string `json:"userName,omitempty"`
   397  	// UserEmail UserEmail
   398  	UserEmail *string `json:"userEmail,omitempty"`
   399  	// UserPrincipalName UserPrincipalName.
   400  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
   401  	// Sources Contributing policies
   402  	Sources []SettingSource `json:"sources,omitempty"`
   403  	// CurrentValue Current value of setting on device
   404  	CurrentValue *string `json:"currentValue,omitempty"`
   405  }
   406  
   407  // DeviceCompliancePolicySettingStateSummary Device Compilance Policy Setting State summary across the account.
   408  type DeviceCompliancePolicySettingStateSummary struct {
   409  	// Entity is the base model of DeviceCompliancePolicySettingStateSummary
   410  	Entity
   411  	// Setting The setting class name and property name.
   412  	Setting *string `json:"setting,omitempty"`
   413  	// SettingName Name of the setting.
   414  	SettingName *string `json:"settingName,omitempty"`
   415  	// PlatformType Setting platform
   416  	PlatformType *PolicyPlatformType `json:"platformType,omitempty"`
   417  	// UnknownDeviceCount Number of unknown devices
   418  	UnknownDeviceCount *int `json:"unknownDeviceCount,omitempty"`
   419  	// NotApplicableDeviceCount Number of not applicable devices
   420  	NotApplicableDeviceCount *int `json:"notApplicableDeviceCount,omitempty"`
   421  	// CompliantDeviceCount Number of compliant devices
   422  	CompliantDeviceCount *int `json:"compliantDeviceCount,omitempty"`
   423  	// RemediatedDeviceCount Number of remediated devices
   424  	RemediatedDeviceCount *int `json:"remediatedDeviceCount,omitempty"`
   425  	// NonCompliantDeviceCount Number of NonCompliant devices
   426  	NonCompliantDeviceCount *int `json:"nonCompliantDeviceCount,omitempty"`
   427  	// ErrorDeviceCount Number of error devices
   428  	ErrorDeviceCount *int `json:"errorDeviceCount,omitempty"`
   429  	// ConflictDeviceCount Number of conflict devices
   430  	ConflictDeviceCount *int `json:"conflictDeviceCount,omitempty"`
   431  	// DeviceComplianceSettingStates undocumented
   432  	DeviceComplianceSettingStates []DeviceComplianceSettingState `json:"deviceComplianceSettingStates,omitempty"`
   433  }
   434  
   435  // DeviceCompliancePolicyState Device Compliance Policy State for a given device.
   436  type DeviceCompliancePolicyState struct {
   437  	// Entity is the base model of DeviceCompliancePolicyState
   438  	Entity
   439  	// SettingStates undocumented
   440  	SettingStates []DeviceCompliancePolicySettingState `json:"settingStates,omitempty"`
   441  	// DisplayName The name of the policy for this policyBase
   442  	DisplayName *string `json:"displayName,omitempty"`
   443  	// Version The version of the policy
   444  	Version *int `json:"version,omitempty"`
   445  	// PlatformType Platform type that the policy applies to
   446  	PlatformType *PolicyPlatformType `json:"platformType,omitempty"`
   447  	// State The compliance state of the policy
   448  	State *ComplianceStatus `json:"state,omitempty"`
   449  	// SettingCount Count of how many setting a policy holds
   450  	SettingCount *int `json:"settingCount,omitempty"`
   451  	// UserID User unique identifier, must be Guid
   452  	UserID *string `json:"userId,omitempty"`
   453  	// UserPrincipalName User Principal Name
   454  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
   455  }
   456  
   457  // DeviceComplianceScheduledActionForRule Scheduled Action for Rule
   458  type DeviceComplianceScheduledActionForRule struct {
   459  	// Entity is the base model of DeviceComplianceScheduledActionForRule
   460  	Entity
   461  	// RuleName Name of the rule which this scheduled action applies to.
   462  	RuleName *string `json:"ruleName,omitempty"`
   463  	// ScheduledActionConfigurations undocumented
   464  	ScheduledActionConfigurations []DeviceComplianceActionItem `json:"scheduledActionConfigurations,omitempty"`
   465  }
   466  
   467  // DeviceComplianceSettingState Device compliance setting State for a given device.
   468  type DeviceComplianceSettingState struct {
   469  	// Entity is the base model of DeviceComplianceSettingState
   470  	Entity
   471  	// PlatformType Device platform type
   472  	PlatformType *DeviceType `json:"platformType,omitempty"`
   473  	// Setting The setting class name and property name.
   474  	Setting *string `json:"setting,omitempty"`
   475  	// SettingName The Setting Name that is being reported
   476  	SettingName *string `json:"settingName,omitempty"`
   477  	// DeviceID The Device Id that is being reported
   478  	DeviceID *string `json:"deviceId,omitempty"`
   479  	// DeviceName The Device Name that is being reported
   480  	DeviceName *string `json:"deviceName,omitempty"`
   481  	// UserID The user Id that is being reported
   482  	UserID *string `json:"userId,omitempty"`
   483  	// UserEmail The User email address that is being reported
   484  	UserEmail *string `json:"userEmail,omitempty"`
   485  	// UserName The User Name that is being reported
   486  	UserName *string `json:"userName,omitempty"`
   487  	// UserPrincipalName The User PrincipalName that is being reported
   488  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
   489  	// DeviceModel The device model that is being reported
   490  	DeviceModel *string `json:"deviceModel,omitempty"`
   491  	// State The compliance state of the setting
   492  	State *ComplianceStatus `json:"state,omitempty"`
   493  	// ComplianceGracePeriodExpirationDateTime The DateTime when device compliance grace period expires
   494  	ComplianceGracePeriodExpirationDateTime *time.Time `json:"complianceGracePeriodExpirationDateTime,omitempty"`
   495  }
   496  
   497  // DeviceComplianceUserOverview undocumented
   498  type DeviceComplianceUserOverview struct {
   499  	// Entity is the base model of DeviceComplianceUserOverview
   500  	Entity
   501  	// PendingCount Number of pending Users
   502  	PendingCount *int `json:"pendingCount,omitempty"`
   503  	// NotApplicableCount Number of not applicable users
   504  	NotApplicableCount *int `json:"notApplicableCount,omitempty"`
   505  	// SuccessCount Number of succeeded Users
   506  	SuccessCount *int `json:"successCount,omitempty"`
   507  	// ErrorCount Number of error Users
   508  	ErrorCount *int `json:"errorCount,omitempty"`
   509  	// FailedCount Number of failed Users
   510  	FailedCount *int `json:"failedCount,omitempty"`
   511  	// ConflictCount Number of users in conflict
   512  	ConflictCount *int `json:"conflictCount,omitempty"`
   513  	// LastUpdateDateTime Last update time
   514  	LastUpdateDateTime *time.Time `json:"lastUpdateDateTime,omitempty"`
   515  	// ConfigurationVersion Version of the policy for that overview
   516  	ConfigurationVersion *int `json:"configurationVersion,omitempty"`
   517  }
   518  
   519  // DeviceComplianceUserStatus undocumented
   520  type DeviceComplianceUserStatus struct {
   521  	// Entity is the base model of DeviceComplianceUserStatus
   522  	Entity
   523  	// UserDisplayName User name of the DevicePolicyStatus.
   524  	UserDisplayName *string `json:"userDisplayName,omitempty"`
   525  	// DevicesCount Devices count for that user.
   526  	DevicesCount *int `json:"devicesCount,omitempty"`
   527  	// Status Compliance status of the policy report.
   528  	Status *ComplianceStatus `json:"status,omitempty"`
   529  	// LastReportedDateTime Last modified date time of the policy report.
   530  	LastReportedDateTime *time.Time `json:"lastReportedDateTime,omitempty"`
   531  	// UserPrincipalName UserPrincipalName.
   532  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
   533  }
   534  
   535  // DeviceConfiguration Device Configuration.
   536  type DeviceConfiguration struct {
   537  	// Entity is the base model of DeviceConfiguration
   538  	Entity
   539  	// LastModifiedDateTime DateTime the object was last modified.
   540  	LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"`
   541  	// RoleScopeTagIDs List of Scope Tags for this Entity instance.
   542  	RoleScopeTagIDs []string `json:"roleScopeTagIds,omitempty"`
   543  	// SupportsScopeTags Indicates whether or not the underlying Device Configuration supports the assignment of scope tags. Assigning to the ScopeTags property is not allowed when this value is false and entities will not be visible to scoped users. This occurs for Legacy policies created in Silverlight and can be resolved by deleting and recreating the policy in the Azure Portal. This property is read-only.
   544  	SupportsScopeTags *bool `json:"supportsScopeTags,omitempty"`
   545  	// DeviceManagementApplicabilityRuleOsEdition The OS edition applicability for this Policy.
   546  	DeviceManagementApplicabilityRuleOsEdition *DeviceManagementApplicabilityRuleOsEdition `json:"deviceManagementApplicabilityRuleOsEdition,omitempty"`
   547  	// DeviceManagementApplicabilityRuleOsVersion The OS version applicability rule for this Policy.
   548  	DeviceManagementApplicabilityRuleOsVersion *DeviceManagementApplicabilityRuleOsVersion `json:"deviceManagementApplicabilityRuleOsVersion,omitempty"`
   549  	// DeviceManagementApplicabilityRuleDeviceMode The device mode applicability rule for this Policy.
   550  	DeviceManagementApplicabilityRuleDeviceMode *DeviceManagementApplicabilityRuleDeviceMode `json:"deviceManagementApplicabilityRuleDeviceMode,omitempty"`
   551  	// CreatedDateTime DateTime the object was created.
   552  	CreatedDateTime *time.Time `json:"createdDateTime,omitempty"`
   553  	// Description Admin provided description of the Device Configuration.
   554  	Description *string `json:"description,omitempty"`
   555  	// DisplayName Admin provided name of the device configuration.
   556  	DisplayName *string `json:"displayName,omitempty"`
   557  	// Version Version of the device configuration.
   558  	Version *int `json:"version,omitempty"`
   559  	// GroupAssignments undocumented
   560  	GroupAssignments []DeviceConfigurationGroupAssignment `json:"groupAssignments,omitempty"`
   561  	// Assignments undocumented
   562  	Assignments []DeviceConfigurationAssignment `json:"assignments,omitempty"`
   563  	// DeviceStatuses undocumented
   564  	DeviceStatuses []DeviceConfigurationDeviceStatus `json:"deviceStatuses,omitempty"`
   565  	// UserStatuses undocumented
   566  	UserStatuses []DeviceConfigurationUserStatus `json:"userStatuses,omitempty"`
   567  	// DeviceStatusOverview undocumented
   568  	DeviceStatusOverview *DeviceConfigurationDeviceOverview `json:"deviceStatusOverview,omitempty"`
   569  	// UserStatusOverview undocumented
   570  	UserStatusOverview *DeviceConfigurationUserOverview `json:"userStatusOverview,omitempty"`
   571  	// DeviceSettingStateSummaries undocumented
   572  	DeviceSettingStateSummaries []SettingStateDeviceSummary `json:"deviceSettingStateSummaries,omitempty"`
   573  }
   574  
   575  // DeviceConfigurationAssignment The device configuration assignment entity assigns an AAD group to a specific device configuration.
   576  type DeviceConfigurationAssignment struct {
   577  	// Entity is the base model of DeviceConfigurationAssignment
   578  	Entity
   579  	// Target The assignment target for the device configuration.
   580  	Target *DeviceAndAppManagementAssignmentTarget `json:"target,omitempty"`
   581  	// Source The assignment source for the device configuration, direct or parcel/policySet. This property is read-only.
   582  	Source *DeviceAndAppManagementAssignmentSource `json:"source,omitempty"`
   583  	// SourceID The identifier of the source of the assignment. This property is read-only.
   584  	SourceID *string `json:"sourceId,omitempty"`
   585  }
   586  
   587  // DeviceConfigurationConflictSummary Conflict summary for a set of device configuration policies.
   588  type DeviceConfigurationConflictSummary struct {
   589  	// Entity is the base model of DeviceConfigurationConflictSummary
   590  	Entity
   591  	// ConflictingDeviceConfigurations The set of policies in conflict with the given setting
   592  	ConflictingDeviceConfigurations []SettingSource `json:"conflictingDeviceConfigurations,omitempty"`
   593  	// ContributingSettings The set of settings in conflict with the given policies
   594  	ContributingSettings []string `json:"contributingSettings,omitempty"`
   595  	// DeviceCheckinsImpacted The count of checkins impacted by the conflicting policies and settings
   596  	DeviceCheckinsImpacted *int `json:"deviceCheckinsImpacted,omitempty"`
   597  }
   598  
   599  // DeviceConfigurationDeviceOverview undocumented
   600  type DeviceConfigurationDeviceOverview struct {
   601  	// Entity is the base model of DeviceConfigurationDeviceOverview
   602  	Entity
   603  	// PendingCount Number of pending devices
   604  	PendingCount *int `json:"pendingCount,omitempty"`
   605  	// NotApplicableCount Number of not applicable devices
   606  	NotApplicableCount *int `json:"notApplicableCount,omitempty"`
   607  	// NotApplicablePlatformCount Number of not applicable devices due to mismatch platform and policy
   608  	NotApplicablePlatformCount *int `json:"notApplicablePlatformCount,omitempty"`
   609  	// SuccessCount Number of succeeded devices
   610  	SuccessCount *int `json:"successCount,omitempty"`
   611  	// ErrorCount Number of error devices
   612  	ErrorCount *int `json:"errorCount,omitempty"`
   613  	// FailedCount Number of failed devices
   614  	FailedCount *int `json:"failedCount,omitempty"`
   615  	// ConflictCount Number of devices in conflict
   616  	ConflictCount *int `json:"conflictCount,omitempty"`
   617  	// LastUpdateDateTime Last update time
   618  	LastUpdateDateTime *time.Time `json:"lastUpdateDateTime,omitempty"`
   619  	// ConfigurationVersion Version of the policy for that overview
   620  	ConfigurationVersion *int `json:"configurationVersion,omitempty"`
   621  }
   622  
   623  // DeviceConfigurationDeviceStateSummary undocumented
   624  type DeviceConfigurationDeviceStateSummary struct {
   625  	// Entity is the base model of DeviceConfigurationDeviceStateSummary
   626  	Entity
   627  	// UnknownDeviceCount Number of unknown devices
   628  	UnknownDeviceCount *int `json:"unknownDeviceCount,omitempty"`
   629  	// NotApplicableDeviceCount Number of not applicable devices
   630  	NotApplicableDeviceCount *int `json:"notApplicableDeviceCount,omitempty"`
   631  	// CompliantDeviceCount Number of compliant devices
   632  	CompliantDeviceCount *int `json:"compliantDeviceCount,omitempty"`
   633  	// RemediatedDeviceCount Number of remediated devices
   634  	RemediatedDeviceCount *int `json:"remediatedDeviceCount,omitempty"`
   635  	// NonCompliantDeviceCount Number of NonCompliant devices
   636  	NonCompliantDeviceCount *int `json:"nonCompliantDeviceCount,omitempty"`
   637  	// ErrorDeviceCount Number of error devices
   638  	ErrorDeviceCount *int `json:"errorDeviceCount,omitempty"`
   639  	// ConflictDeviceCount Number of conflict devices
   640  	ConflictDeviceCount *int `json:"conflictDeviceCount,omitempty"`
   641  }
   642  
   643  // DeviceConfigurationDeviceStatus undocumented
   644  type DeviceConfigurationDeviceStatus struct {
   645  	// Entity is the base model of DeviceConfigurationDeviceStatus
   646  	Entity
   647  	// DeviceDisplayName Device name of the DevicePolicyStatus.
   648  	DeviceDisplayName *string `json:"deviceDisplayName,omitempty"`
   649  	// UserName The User Name that is being reported
   650  	UserName *string `json:"userName,omitempty"`
   651  	// DeviceModel The device model that is being reported
   652  	DeviceModel *string `json:"deviceModel,omitempty"`
   653  	// Platform Platform of the device that is being reported
   654  	Platform *int `json:"platform,omitempty"`
   655  	// ComplianceGracePeriodExpirationDateTime The DateTime when device compliance grace period expires
   656  	ComplianceGracePeriodExpirationDateTime *time.Time `json:"complianceGracePeriodExpirationDateTime,omitempty"`
   657  	// Status Compliance status of the policy report.
   658  	Status *ComplianceStatus `json:"status,omitempty"`
   659  	// LastReportedDateTime Last modified date time of the policy report.
   660  	LastReportedDateTime *time.Time `json:"lastReportedDateTime,omitempty"`
   661  	// UserPrincipalName UserPrincipalName.
   662  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
   663  }
   664  
   665  // DeviceConfigurationGroupAssignment Device configuration group assignment.
   666  type DeviceConfigurationGroupAssignment struct {
   667  	// Entity is the base model of DeviceConfigurationGroupAssignment
   668  	Entity
   669  	// TargetGroupID The Id of the AAD group we are targeting the device configuration to.
   670  	TargetGroupID *string `json:"targetGroupId,omitempty"`
   671  	// ExcludeGroup Indicates if this group is should be excluded. Defaults that the group should be included
   672  	ExcludeGroup *bool `json:"excludeGroup,omitempty"`
   673  	// DeviceConfiguration undocumented
   674  	DeviceConfiguration *DeviceConfiguration `json:"deviceConfiguration,omitempty"`
   675  }
   676  
   677  // DeviceConfigurationPolicySetItem A class containing the properties used for device configuration PolicySetItem.
   678  type DeviceConfigurationPolicySetItem struct {
   679  	// PolicySetItem is the base model of DeviceConfigurationPolicySetItem
   680  	PolicySetItem
   681  }
   682  
   683  // DeviceConfigurationSettingState undocumented
   684  type DeviceConfigurationSettingState struct {
   685  	// Object is the base model of DeviceConfigurationSettingState
   686  	Object
   687  	// Setting The setting that is being reported
   688  	Setting *string `json:"setting,omitempty"`
   689  	// SettingName Localized/user friendly setting name that is being reported
   690  	SettingName *string `json:"settingName,omitempty"`
   691  	// InstanceDisplayName Name of setting instance that is being reported.
   692  	InstanceDisplayName *string `json:"instanceDisplayName,omitempty"`
   693  	// State The compliance state of the setting
   694  	State *ComplianceStatus `json:"state,omitempty"`
   695  	// ErrorCode Error code for the setting
   696  	ErrorCode *int `json:"errorCode,omitempty"`
   697  	// ErrorDescription Error description
   698  	ErrorDescription *string `json:"errorDescription,omitempty"`
   699  	// UserID UserId
   700  	UserID *string `json:"userId,omitempty"`
   701  	// UserName UserName
   702  	UserName *string `json:"userName,omitempty"`
   703  	// UserEmail UserEmail
   704  	UserEmail *string `json:"userEmail,omitempty"`
   705  	// UserPrincipalName UserPrincipalName.
   706  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
   707  	// Sources Contributing policies
   708  	Sources []SettingSource `json:"sources,omitempty"`
   709  	// CurrentValue Current value of setting on device
   710  	CurrentValue *string `json:"currentValue,omitempty"`
   711  }
   712  
   713  // DeviceConfigurationState Device Configuration State for a given device.
   714  type DeviceConfigurationState struct {
   715  	// Entity is the base model of DeviceConfigurationState
   716  	Entity
   717  	// SettingStates undocumented
   718  	SettingStates []DeviceConfigurationSettingState `json:"settingStates,omitempty"`
   719  	// DisplayName The name of the policy for this policyBase
   720  	DisplayName *string `json:"displayName,omitempty"`
   721  	// Version The version of the policy
   722  	Version *int `json:"version,omitempty"`
   723  	// PlatformType Platform type that the policy applies to
   724  	PlatformType *PolicyPlatformType `json:"platformType,omitempty"`
   725  	// State The compliance state of the policy
   726  	State *ComplianceStatus `json:"state,omitempty"`
   727  	// SettingCount Count of how many setting a policy holds
   728  	SettingCount *int `json:"settingCount,omitempty"`
   729  	// UserID User unique identifier, must be Guid
   730  	UserID *string `json:"userId,omitempty"`
   731  	// UserPrincipalName User Principal Name
   732  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
   733  }
   734  
   735  // DeviceConfigurationTargetedUserAndDevice undocumented
   736  type DeviceConfigurationTargetedUserAndDevice struct {
   737  	// Object is the base model of DeviceConfigurationTargetedUserAndDevice
   738  	Object
   739  	// DeviceID The id of the device in the checkin.
   740  	DeviceID *string `json:"deviceId,omitempty"`
   741  	// DeviceName The name of the device in the checkin.
   742  	DeviceName *string `json:"deviceName,omitempty"`
   743  	// UserID The id of the user in the checkin.
   744  	UserID *string `json:"userId,omitempty"`
   745  	// UserDisplayName The display name of the user in the checkin
   746  	UserDisplayName *string `json:"userDisplayName,omitempty"`
   747  	// UserPrincipalName The UPN of the user in the checkin.
   748  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
   749  	// LastCheckinDateTime Last checkin time for this user/device pair.
   750  	LastCheckinDateTime *time.Time `json:"lastCheckinDateTime,omitempty"`
   751  }
   752  
   753  // DeviceConfigurationUserOverview undocumented
   754  type DeviceConfigurationUserOverview struct {
   755  	// Entity is the base model of DeviceConfigurationUserOverview
   756  	Entity
   757  	// PendingCount Number of pending Users
   758  	PendingCount *int `json:"pendingCount,omitempty"`
   759  	// NotApplicableCount Number of not applicable users
   760  	NotApplicableCount *int `json:"notApplicableCount,omitempty"`
   761  	// SuccessCount Number of succeeded Users
   762  	SuccessCount *int `json:"successCount,omitempty"`
   763  	// ErrorCount Number of error Users
   764  	ErrorCount *int `json:"errorCount,omitempty"`
   765  	// FailedCount Number of failed Users
   766  	FailedCount *int `json:"failedCount,omitempty"`
   767  	// ConflictCount Number of users in conflict
   768  	ConflictCount *int `json:"conflictCount,omitempty"`
   769  	// LastUpdateDateTime Last update time
   770  	LastUpdateDateTime *time.Time `json:"lastUpdateDateTime,omitempty"`
   771  	// ConfigurationVersion Version of the policy for that overview
   772  	ConfigurationVersion *int `json:"configurationVersion,omitempty"`
   773  }
   774  
   775  // DeviceConfigurationUserStateSummary undocumented
   776  type DeviceConfigurationUserStateSummary struct {
   777  	// Entity is the base model of DeviceConfigurationUserStateSummary
   778  	Entity
   779  	// UnknownUserCount Number of unknown users
   780  	UnknownUserCount *int `json:"unknownUserCount,omitempty"`
   781  	// NotApplicableUserCount Number of not applicable users
   782  	NotApplicableUserCount *int `json:"notApplicableUserCount,omitempty"`
   783  	// CompliantUserCount Number of compliant users
   784  	CompliantUserCount *int `json:"compliantUserCount,omitempty"`
   785  	// RemediatedUserCount Number of remediated users
   786  	RemediatedUserCount *int `json:"remediatedUserCount,omitempty"`
   787  	// NonCompliantUserCount Number of NonCompliant users
   788  	NonCompliantUserCount *int `json:"nonCompliantUserCount,omitempty"`
   789  	// ErrorUserCount Number of error users
   790  	ErrorUserCount *int `json:"errorUserCount,omitempty"`
   791  	// ConflictUserCount Number of conflict users
   792  	ConflictUserCount *int `json:"conflictUserCount,omitempty"`
   793  }
   794  
   795  // DeviceConfigurationUserStatus undocumented
   796  type DeviceConfigurationUserStatus struct {
   797  	// Entity is the base model of DeviceConfigurationUserStatus
   798  	Entity
   799  	// UserDisplayName User name of the DevicePolicyStatus.
   800  	UserDisplayName *string `json:"userDisplayName,omitempty"`
   801  	// DevicesCount Devices count for that user.
   802  	DevicesCount *int `json:"devicesCount,omitempty"`
   803  	// Status Compliance status of the policy report.
   804  	Status *ComplianceStatus `json:"status,omitempty"`
   805  	// LastReportedDateTime Last modified date time of the policy report.
   806  	LastReportedDateTime *time.Time `json:"lastReportedDateTime,omitempty"`
   807  	// UserPrincipalName UserPrincipalName.
   808  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
   809  }
   810  
   811  // DeviceDetail undocumented
   812  type DeviceDetail struct {
   813  	// Object is the base model of DeviceDetail
   814  	Object
   815  	// DeviceID undocumented
   816  	DeviceID *string `json:"deviceId,omitempty"`
   817  	// DisplayName undocumented
   818  	DisplayName *string `json:"displayName,omitempty"`
   819  	// OperatingSystem undocumented
   820  	OperatingSystem *string `json:"operatingSystem,omitempty"`
   821  	// Browser undocumented
   822  	Browser *string `json:"browser,omitempty"`
   823  	// BrowserID undocumented
   824  	BrowserID *string `json:"browserId,omitempty"`
   825  	// IsCompliant undocumented
   826  	IsCompliant *bool `json:"isCompliant,omitempty"`
   827  	// IsManaged undocumented
   828  	IsManaged *bool `json:"isManaged,omitempty"`
   829  	// TrustType undocumented
   830  	TrustType *string `json:"trustType,omitempty"`
   831  }
   832  
   833  // DeviceEnrollmentConfiguration The Base Class of Device Enrollment Configuration
   834  type DeviceEnrollmentConfiguration struct {
   835  	// Entity is the base model of DeviceEnrollmentConfiguration
   836  	Entity
   837  	// DisplayName The display name of the device enrollment configuration
   838  	DisplayName *string `json:"displayName,omitempty"`
   839  	// Description The description of the device enrollment configuration
   840  	Description *string `json:"description,omitempty"`
   841  	// Priority Priority is used when a user exists in multiple groups that are assigned enrollment configuration. Users are subject only to the configuration with the lowest priority value.
   842  	Priority *int `json:"priority,omitempty"`
   843  	// CreatedDateTime Created date time in UTC of the device enrollment configuration
   844  	CreatedDateTime *time.Time `json:"createdDateTime,omitempty"`
   845  	// LastModifiedDateTime Last modified date time in UTC of the device enrollment configuration
   846  	LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"`
   847  	// Version The version of the device enrollment configuration
   848  	Version *int `json:"version,omitempty"`
   849  	// Assignments undocumented
   850  	Assignments []EnrollmentConfigurationAssignment `json:"assignments,omitempty"`
   851  }
   852  
   853  // DeviceEnrollmentLimitConfiguration Device Enrollment Configuration that restricts the number of devices a user can enroll
   854  type DeviceEnrollmentLimitConfiguration struct {
   855  	// DeviceEnrollmentConfiguration is the base model of DeviceEnrollmentLimitConfiguration
   856  	DeviceEnrollmentConfiguration
   857  	// Limit The maximum number of devices that a user can enroll
   858  	Limit *int `json:"limit,omitempty"`
   859  }
   860  
   861  // DeviceEnrollmentPlatformRestriction undocumented
   862  type DeviceEnrollmentPlatformRestriction struct {
   863  	// Object is the base model of DeviceEnrollmentPlatformRestriction
   864  	Object
   865  	// PlatformBlocked Block the platform from enrolling
   866  	PlatformBlocked *bool `json:"platformBlocked,omitempty"`
   867  	// PersonalDeviceEnrollmentBlocked Block personally owned devices from enrolling
   868  	PersonalDeviceEnrollmentBlocked *bool `json:"personalDeviceEnrollmentBlocked,omitempty"`
   869  	// OsMinimumVersion Min OS version supported
   870  	OsMinimumVersion *string `json:"osMinimumVersion,omitempty"`
   871  	// OsMaximumVersion Max OS version supported
   872  	OsMaximumVersion *string `json:"osMaximumVersion,omitempty"`
   873  }
   874  
   875  // DeviceEnrollmentPlatformRestrictionsConfiguration Device Enrollment Configuration that restricts the types of devices a user can enroll
   876  type DeviceEnrollmentPlatformRestrictionsConfiguration struct {
   877  	// DeviceEnrollmentConfiguration is the base model of DeviceEnrollmentPlatformRestrictionsConfiguration
   878  	DeviceEnrollmentConfiguration
   879  	// IOSRestriction Ios restrictions based on platform, platform operating system version, and device ownership
   880  	IOSRestriction *DeviceEnrollmentPlatformRestriction `json:"iosRestriction,omitempty"`
   881  	// WindowsRestriction Windows restrictions based on platform, platform operating system version, and device ownership
   882  	WindowsRestriction *DeviceEnrollmentPlatformRestriction `json:"windowsRestriction,omitempty"`
   883  	// WindowsMobileRestriction Windows mobile restrictions based on platform, platform operating system version, and device ownership
   884  	WindowsMobileRestriction *DeviceEnrollmentPlatformRestriction `json:"windowsMobileRestriction,omitempty"`
   885  	// AndroidRestriction Android restrictions based on platform, platform operating system version, and device ownership
   886  	AndroidRestriction *DeviceEnrollmentPlatformRestriction `json:"androidRestriction,omitempty"`
   887  	// AndroidForWorkRestriction Android for work restrictions based on platform, platform operating system version, and device ownership
   888  	AndroidForWorkRestriction *DeviceEnrollmentPlatformRestriction `json:"androidForWorkRestriction,omitempty"`
   889  	// MacRestriction Mac restrictions based on platform, platform operating system version, and device ownership
   890  	MacRestriction *DeviceEnrollmentPlatformRestriction `json:"macRestriction,omitempty"`
   891  	// MacOSRestriction Mac restrictions based on platform, platform operating system version, and device ownership
   892  	MacOSRestriction *DeviceEnrollmentPlatformRestriction `json:"macOSRestriction,omitempty"`
   893  }
   894  
   895  // DeviceEnrollmentWindowsHelloForBusinessConfiguration Windows Hello for Business settings lets users access their devices using a gesture, such as biometric authentication, or a PIN. Configure settings for enrolled Windows 10, Windows 10 Mobile and later.
   896  type DeviceEnrollmentWindowsHelloForBusinessConfiguration struct {
   897  	// DeviceEnrollmentConfiguration is the base model of DeviceEnrollmentWindowsHelloForBusinessConfiguration
   898  	DeviceEnrollmentConfiguration
   899  	// PinMinimumLength Controls the minimum number of characters required for the Windows Hello for Business PIN.  This value must be between 4 and 127, inclusive, and less than or equal to the value set for the maximum PIN.
   900  	PinMinimumLength *int `json:"pinMinimumLength,omitempty"`
   901  	// PinMaximumLength Controls the maximum number of characters allowed for the Windows Hello for Business PIN. This value must be between 4 and 127, inclusive. This value must be greater than or equal to the value set for the minimum PIN.
   902  	PinMaximumLength *int `json:"pinMaximumLength,omitempty"`
   903  	// PinUppercaseCharactersUsage Controls the ability to use uppercase letters in the Windows Hello for Business PIN.  Allowed permits the use of uppercase letter(s), whereas Required ensures they are present. If set to Not Allowed, uppercase letters will not be permitted.
   904  	PinUppercaseCharactersUsage *WindowsHelloForBusinessPinUsage `json:"pinUppercaseCharactersUsage,omitempty"`
   905  	// PinLowercaseCharactersUsage Controls the ability to use lowercase letters in the Windows Hello for Business PIN.  Allowed permits the use of lowercase letter(s), whereas Required ensures they are present. If set to Not Allowed, lowercase letters will not be permitted.
   906  	PinLowercaseCharactersUsage *WindowsHelloForBusinessPinUsage `json:"pinLowercaseCharactersUsage,omitempty"`
   907  	// PinSpecialCharactersUsage Controls the ability to use special characters in the Windows Hello for Business PIN.  Allowed permits the use of special character(s), whereas Required ensures they are present. If set to Not Allowed, special character(s) will not be permitted.
   908  	PinSpecialCharactersUsage *WindowsHelloForBusinessPinUsage `json:"pinSpecialCharactersUsage,omitempty"`
   909  	// State Controls whether to allow the device to be configured for Windows Hello for Business. If set to disabled, the user cannot provision Windows Hello for Business except on Azure Active Directory joined mobile phones if otherwise required. If set to Not Configured, Intune will not override client defaults.
   910  	State *Enablement `json:"state,omitempty"`
   911  	// SecurityDeviceRequired Controls whether to require a Trusted Platform Module (TPM) for provisioning Windows Hello for Business. A TPM provides an additional security benefit in that data stored on it cannot be used on other devices. If set to False, all devices can provision Windows Hello for Business even if there is not a usable TPM.
   912  	SecurityDeviceRequired *bool `json:"securityDeviceRequired,omitempty"`
   913  	// UnlockWithBiometricsEnabled Controls the use of biometric gestures, such as face and fingerprint, as an alternative to the Windows Hello for Business PIN.  If set to False, biometric gestures are not allowed. Users must still configure a PIN as a backup in case of failures.
   914  	UnlockWithBiometricsEnabled *bool `json:"unlockWithBiometricsEnabled,omitempty"`
   915  	// RemotePassportEnabled Controls the use of Remote Windows Hello for Business. Remote Windows Hello for Business provides the ability for a portable, registered device to be usable as a companion for desktop authentication. The desktop must be Azure AD joined and the companion device must have a Windows Hello for Business PIN.
   916  	RemotePassportEnabled *bool `json:"remotePassportEnabled,omitempty"`
   917  	// PinPreviousBlockCount Controls the ability to prevent users from using past PINs. This must be set between 0 and 50, inclusive, and the current PIN of the user is included in that count. If set to 0, previous PINs are not stored. PIN history is not preserved through a PIN reset.
   918  	PinPreviousBlockCount *int `json:"pinPreviousBlockCount,omitempty"`
   919  	// PinExpirationInDays Controls the period of time (in days) that a PIN can be used before the system requires the user to change it. This must be set between 0 and 730, inclusive. If set to 0, the user's PIN will never expire
   920  	PinExpirationInDays *int `json:"pinExpirationInDays,omitempty"`
   921  	// EnhancedBiometricsState Controls the ability to use the anti-spoofing features for facial recognition on devices which support it. If set to disabled, anti-spoofing features are not allowed. If set to Not Configured, the user can choose whether they want to use anti-spoofing.
   922  	EnhancedBiometricsState *Enablement `json:"enhancedBiometricsState,omitempty"`
   923  	// SecurityKeyForSignIn Security key for Sign In provides the capacity for remotely turning ON/OFF Windows Hello Sercurity Keyl Not configured will honor configurations done on the clinet.
   924  	SecurityKeyForSignIn *Enablement `json:"securityKeyForSignIn,omitempty"`
   925  }
   926  
   927  // DeviceExchangeAccessStateSummary undocumented
   928  type DeviceExchangeAccessStateSummary struct {
   929  	// Object is the base model of DeviceExchangeAccessStateSummary
   930  	Object
   931  	// AllowedDeviceCount Total count of devices with Exchange Access State: Allowed.
   932  	AllowedDeviceCount *int `json:"allowedDeviceCount,omitempty"`
   933  	// BlockedDeviceCount Total count of devices with Exchange Access State: Blocked.
   934  	BlockedDeviceCount *int `json:"blockedDeviceCount,omitempty"`
   935  	// QuarantinedDeviceCount Total count of devices with Exchange Access State: Quarantined.
   936  	QuarantinedDeviceCount *int `json:"quarantinedDeviceCount,omitempty"`
   937  	// UnknownDeviceCount Total count of devices with Exchange Access State: Unknown.
   938  	UnknownDeviceCount *int `json:"unknownDeviceCount,omitempty"`
   939  	// UnavailableDeviceCount Total count of devices for which no Exchange Access State could be found.
   940  	UnavailableDeviceCount *int `json:"unavailableDeviceCount,omitempty"`
   941  }
   942  
   943  // DeviceGeoLocation undocumented
   944  type DeviceGeoLocation struct {
   945  	// Object is the base model of DeviceGeoLocation
   946  	Object
   947  	// LastCollectedDateTimeUtc Time at which location was recorded, relative to UTC
   948  	LastCollectedDateTimeUtc *time.Time `json:"lastCollectedDateTimeUtc,omitempty"`
   949  	// LastCollectedDateTime Time at which location was recorded, relative to UTC
   950  	LastCollectedDateTime *time.Time `json:"lastCollectedDateTime,omitempty"`
   951  	// Longitude Longitude coordinate of the device's location
   952  	Longitude *float64 `json:"longitude,omitempty"`
   953  	// Latitude Latitude coordinate of the device's location
   954  	Latitude *float64 `json:"latitude,omitempty"`
   955  	// Altitude Altitude, given in meters above sea level
   956  	Altitude *float64 `json:"altitude,omitempty"`
   957  	// HorizontalAccuracy Accuracy of longitude and latitude in meters
   958  	HorizontalAccuracy *float64 `json:"horizontalAccuracy,omitempty"`
   959  	// VerticalAccuracy Accuracy of altitude in meters
   960  	VerticalAccuracy *float64 `json:"verticalAccuracy,omitempty"`
   961  	// Heading Heading in degrees from true north
   962  	Heading *float64 `json:"heading,omitempty"`
   963  	// Speed Speed the device is traveling in meters per second
   964  	Speed *float64 `json:"speed,omitempty"`
   965  }
   966  
   967  // DeviceHealthAttestationState undocumented
   968  type DeviceHealthAttestationState struct {
   969  	// Object is the base model of DeviceHealthAttestationState
   970  	Object
   971  	// LastUpdateDateTime The Timestamp of the last update.
   972  	LastUpdateDateTime *string `json:"lastUpdateDateTime,omitempty"`
   973  	// ContentNamespaceURL The DHA report version. (Namespace version)
   974  	ContentNamespaceURL *string `json:"contentNamespaceUrl,omitempty"`
   975  	// DeviceHealthAttestationStatus The DHA report version. (Namespace version)
   976  	DeviceHealthAttestationStatus *string `json:"deviceHealthAttestationStatus,omitempty"`
   977  	// ContentVersion The HealthAttestation state schema version
   978  	ContentVersion *string `json:"contentVersion,omitempty"`
   979  	// IssuedDateTime The DateTime when device was evaluated or issued to MDM
   980  	IssuedDateTime *time.Time `json:"issuedDateTime,omitempty"`
   981  	// AttestationIdentityKey TWhen an Attestation Identity Key (AIK) is present on a device, it indicates that the device has an endorsement key (EK) certificate.
   982  	AttestationIdentityKey *string `json:"attestationIdentityKey,omitempty"`
   983  	// ResetCount The number of times a PC device has hibernated or resumed
   984  	ResetCount *int `json:"resetCount,omitempty"`
   985  	// RestartCount The number of times a PC device has rebooted
   986  	RestartCount *int `json:"restartCount,omitempty"`
   987  	// DataExcutionPolicy DEP Policy defines a set of hardware and software technologies that perform additional checks on memory
   988  	DataExcutionPolicy *string `json:"dataExcutionPolicy,omitempty"`
   989  	// BitLockerStatus On or Off of BitLocker Drive Encryption
   990  	BitLockerStatus *string `json:"bitLockerStatus,omitempty"`
   991  	// BootManagerVersion The version of the Boot Manager
   992  	BootManagerVersion *string `json:"bootManagerVersion,omitempty"`
   993  	// CodeIntegrityCheckVersion The version of the Boot Manager
   994  	CodeIntegrityCheckVersion *string `json:"codeIntegrityCheckVersion,omitempty"`
   995  	// SecureBoot When Secure Boot is enabled, the core components must have the correct cryptographic signatures
   996  	SecureBoot *string `json:"secureBoot,omitempty"`
   997  	// BootDebugging When bootDebugging is enabled, the device is used in development and testing
   998  	BootDebugging *string `json:"bootDebugging,omitempty"`
   999  	// OperatingSystemKernelDebugging When operatingSystemKernelDebugging is enabled, the device is used in development and testing
  1000  	OperatingSystemKernelDebugging *string `json:"operatingSystemKernelDebugging,omitempty"`
  1001  	// CodeIntegrity  When code integrity is enabled, code execution is restricted to integrity verified code
  1002  	CodeIntegrity *string `json:"codeIntegrity,omitempty"`
  1003  	// TestSigning When test signing is allowed, the device does not enforce signature validation during boot
  1004  	TestSigning *string `json:"testSigning,omitempty"`
  1005  	// SafeMode Safe mode is a troubleshooting option for Windows that starts your computer in a limited state
  1006  	SafeMode *string `json:"safeMode,omitempty"`
  1007  	// WindowsPE Operating system running with limited services that is used to prepare a computer for Windows
  1008  	WindowsPE *string `json:"windowsPE,omitempty"`
  1009  	// EarlyLaunchAntiMalwareDriverProtection ELAM provides protection for the computers in your network when they start up
  1010  	EarlyLaunchAntiMalwareDriverProtection *string `json:"earlyLaunchAntiMalwareDriverProtection,omitempty"`
  1011  	// VirtualSecureMode VSM is a container that protects high value assets from a compromised kernel
  1012  	VirtualSecureMode *string `json:"virtualSecureMode,omitempty"`
  1013  	// PcrHashAlgorithm Informational attribute that identifies the HASH algorithm that was used by TPM
  1014  	PcrHashAlgorithm *string `json:"pcrHashAlgorithm,omitempty"`
  1015  	// BootAppSecurityVersion The security version number of the Boot Application
  1016  	BootAppSecurityVersion *string `json:"bootAppSecurityVersion,omitempty"`
  1017  	// BootManagerSecurityVersion The security version number of the Boot Application
  1018  	BootManagerSecurityVersion *string `json:"bootManagerSecurityVersion,omitempty"`
  1019  	// TpmVersion The security version number of the Boot Application
  1020  	TpmVersion *string `json:"tpmVersion,omitempty"`
  1021  	// Pcr0 The measurement that is captured in PCR[0]
  1022  	Pcr0 *string `json:"pcr0,omitempty"`
  1023  	// SecureBootConfigurationPolicyFingerPrint Fingerprint of the Custom Secure Boot Configuration Policy
  1024  	SecureBootConfigurationPolicyFingerPrint *string `json:"secureBootConfigurationPolicyFingerPrint,omitempty"`
  1025  	// CodeIntegrityPolicy The Code Integrity policy that is controlling the security of the boot environment
  1026  	CodeIntegrityPolicy *string `json:"codeIntegrityPolicy,omitempty"`
  1027  	// BootRevisionListInfo The Boot Revision List that was loaded during initial boot on the attested device
  1028  	BootRevisionListInfo *string `json:"bootRevisionListInfo,omitempty"`
  1029  	// OperatingSystemRevListInfo The Operating System Revision List that was loaded during initial boot on the attested device
  1030  	OperatingSystemRevListInfo *string `json:"operatingSystemRevListInfo,omitempty"`
  1031  	// HealthStatusMismatchInfo This attribute appears if DHA-Service detects an integrity issue
  1032  	HealthStatusMismatchInfo *string `json:"healthStatusMismatchInfo,omitempty"`
  1033  	// HealthAttestationSupportedStatus This attribute indicates if DHA is supported for the device
  1034  	HealthAttestationSupportedStatus *string `json:"healthAttestationSupportedStatus,omitempty"`
  1035  }
  1036  
  1037  // DeviceHealthScript Intune will provide customer the ability to run their Powershell Health scripts (remediation + detection) on the enrolled windows 10 Azure Active Directory joined devices.
  1038  type DeviceHealthScript struct {
  1039  	// Entity is the base model of DeviceHealthScript
  1040  	Entity
  1041  	// Publisher Name of the device health script publisher
  1042  	Publisher *string `json:"publisher,omitempty"`
  1043  	// Version Version of the device health script
  1044  	Version *string `json:"version,omitempty"`
  1045  	// DisplayName Name of the device health script
  1046  	DisplayName *string `json:"displayName,omitempty"`
  1047  	// Description Description of the device health script
  1048  	Description *string `json:"description,omitempty"`
  1049  	// DetectionScriptContent The entire content of the detection powershell script
  1050  	DetectionScriptContent *Binary `json:"detectionScriptContent,omitempty"`
  1051  	// RemediationScriptContent The entire content of the remediation powershell script
  1052  	RemediationScriptContent *Binary `json:"remediationScriptContent,omitempty"`
  1053  	// CreatedDateTime The timestamp of when the device health script was created. This property is read-only.
  1054  	CreatedDateTime *time.Time `json:"createdDateTime,omitempty"`
  1055  	// LastModifiedDateTime The timestamp of when the device health script was modified. This property is read-only.
  1056  	LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"`
  1057  	// RunAsAccount Indicates the type of execution context
  1058  	RunAsAccount *RunAsAccountType `json:"runAsAccount,omitempty"`
  1059  	// EnforceSignatureCheck Indicate whether the script signature needs be checked
  1060  	EnforceSignatureCheck *bool `json:"enforceSignatureCheck,omitempty"`
  1061  	// RunAs32Bit Indicate whether PowerShell script(s) should run as 32-bit
  1062  	RunAs32Bit *bool `json:"runAs32Bit,omitempty"`
  1063  	// RoleScopeTagIDs List of Scope Tag IDs for the device health script
  1064  	RoleScopeTagIDs []string `json:"roleScopeTagIds,omitempty"`
  1065  	// Assignments undocumented
  1066  	Assignments []DeviceHealthScriptAssignment `json:"assignments,omitempty"`
  1067  	// RunSummary undocumented
  1068  	RunSummary *DeviceHealthScriptRunSummary `json:"runSummary,omitempty"`
  1069  	// DeviceRunStates undocumented
  1070  	DeviceRunStates []DeviceHealthScriptDeviceState `json:"deviceRunStates,omitempty"`
  1071  }
  1072  
  1073  // DeviceHealthScriptAssignment Contains properties used to assign a device management script to a group.
  1074  type DeviceHealthScriptAssignment struct {
  1075  	// Entity is the base model of DeviceHealthScriptAssignment
  1076  	Entity
  1077  	// Target The Azure Active Directory group we are targeting the script to
  1078  	Target *DeviceAndAppManagementAssignmentTarget `json:"target,omitempty"`
  1079  	// RunRemediationScript Determine whether we want to run detection script only or run both detection script and remediation script
  1080  	RunRemediationScript *bool `json:"runRemediationScript,omitempty"`
  1081  	// RunSchedule Script run schedule for the target group
  1082  	RunSchedule *RunSchedule `json:"runSchedule,omitempty"`
  1083  }
  1084  
  1085  // DeviceHealthScriptDeviceState Contains properties for device run state of the device health script.
  1086  type DeviceHealthScriptDeviceState struct {
  1087  	// Entity is the base model of DeviceHealthScriptDeviceState
  1088  	Entity
  1089  	// DetectionState Detection state from the lastest device health script execution
  1090  	DetectionState *RunState `json:"detectionState,omitempty"`
  1091  	// LastStateUpdateDateTime The last timestamp of when the device health script executed
  1092  	LastStateUpdateDateTime *time.Time `json:"lastStateUpdateDateTime,omitempty"`
  1093  	// ExpectedStateUpdateDateTime The next timestamp of when the device health script is expected to execute
  1094  	ExpectedStateUpdateDateTime *time.Time `json:"expectedStateUpdateDateTime,omitempty"`
  1095  	// LastSyncDateTime The last time that Intune Managment Extension synced with Intune
  1096  	LastSyncDateTime *time.Time `json:"lastSyncDateTime,omitempty"`
  1097  	// PreRemediationDetectionScriptOutput Output of the detection script before remediation
  1098  	PreRemediationDetectionScriptOutput *string `json:"preRemediationDetectionScriptOutput,omitempty"`
  1099  	// PreRemediationDetectionScriptError Error from the detection script before remediation
  1100  	PreRemediationDetectionScriptError *string `json:"preRemediationDetectionScriptError,omitempty"`
  1101  	// RemediationScriptError Error output of the remediation script
  1102  	RemediationScriptError *string `json:"remediationScriptError,omitempty"`
  1103  	// PostRemediationDetectionScriptOutput Detection script output after remediation
  1104  	PostRemediationDetectionScriptOutput *string `json:"postRemediationDetectionScriptOutput,omitempty"`
  1105  	// PostRemediationDetectionScriptError Error from the detection script after remediation
  1106  	PostRemediationDetectionScriptError *string `json:"postRemediationDetectionScriptError,omitempty"`
  1107  	// RemediationState Remediation state from the lastest device health script execution
  1108  	RemediationState *RemediationState `json:"remediationState,omitempty"`
  1109  	// ManagedDevice undocumented
  1110  	ManagedDevice *ManagedDevice `json:"managedDevice,omitempty"`
  1111  }
  1112  
  1113  // DeviceHealthScriptRunSummary Contains properties for the run summary of a device management script.
  1114  type DeviceHealthScriptRunSummary struct {
  1115  	// Entity is the base model of DeviceHealthScriptRunSummary
  1116  	Entity
  1117  	// NoIssueDetectedDeviceCount Number of devices for which the detection script did not find an issue and the device is healthy
  1118  	NoIssueDetectedDeviceCount *int `json:"noIssueDetectedDeviceCount,omitempty"`
  1119  	// IssueDetectedDeviceCount Number of devices for which the detection script found an issue
  1120  	IssueDetectedDeviceCount *int `json:"issueDetectedDeviceCount,omitempty"`
  1121  	// DetectionScriptErrorDeviceCount Number of devices on which the detection script execution encountered an error and did not complete
  1122  	DetectionScriptErrorDeviceCount *int `json:"detectionScriptErrorDeviceCount,omitempty"`
  1123  	// DetectionScriptPendingDeviceCount Number of devices which have not yet run the latest version of the device health script
  1124  	DetectionScriptPendingDeviceCount *int `json:"detectionScriptPendingDeviceCount,omitempty"`
  1125  	// IssueRemediatedDeviceCount Number of devices for which the remediation script was able to resolve the detected issue
  1126  	IssueRemediatedDeviceCount *int `json:"issueRemediatedDeviceCount,omitempty"`
  1127  	// RemediationSkippedDeviceCount Number of devices for which remediation was skipped
  1128  	RemediationSkippedDeviceCount *int `json:"remediationSkippedDeviceCount,omitempty"`
  1129  	// IssueReoccurredDeviceCount Number of devices for which the remediation script executed successfully but failed to resolve the detected issue
  1130  	IssueReoccurredDeviceCount *int `json:"issueReoccurredDeviceCount,omitempty"`
  1131  	// RemediationScriptErrorDeviceCount Number of devices for which the remediation script execution encountered an error and did not complete
  1132  	RemediationScriptErrorDeviceCount *int `json:"remediationScriptErrorDeviceCount,omitempty"`
  1133  	// LastScriptRunDateTime Last run time for the script across all devices
  1134  	LastScriptRunDateTime *time.Time `json:"lastScriptRunDateTime,omitempty"`
  1135  }
  1136  
  1137  // DeviceInstallState Contains properties for the installation state for a device.
  1138  type DeviceInstallState struct {
  1139  	// Entity is the base model of DeviceInstallState
  1140  	Entity
  1141  	// DeviceName Device name.
  1142  	DeviceName *string `json:"deviceName,omitempty"`
  1143  	// DeviceID Device Id.
  1144  	DeviceID *string `json:"deviceId,omitempty"`
  1145  	// LastSyncDateTime Last sync date and time.
  1146  	LastSyncDateTime *time.Time `json:"lastSyncDateTime,omitempty"`
  1147  	// InstallState The install state of the eBook.
  1148  	InstallState *InstallState `json:"installState,omitempty"`
  1149  	// ErrorCode The error code for install failures.
  1150  	ErrorCode *string `json:"errorCode,omitempty"`
  1151  	// OsVersion OS Version.
  1152  	OsVersion *string `json:"osVersion,omitempty"`
  1153  	// OsDescription OS Description.
  1154  	OsDescription *string `json:"osDescription,omitempty"`
  1155  	// UserName Device User Name.
  1156  	UserName *string `json:"userName,omitempty"`
  1157  }
  1158  
  1159  // DeviceKey undocumented
  1160  type DeviceKey struct {
  1161  	// Object is the base model of DeviceKey
  1162  	Object
  1163  	// KeyType undocumented
  1164  	KeyType *string `json:"keyType,omitempty"`
  1165  	// KeyMaterial undocumented
  1166  	KeyMaterial *Binary `json:"keyMaterial,omitempty"`
  1167  	// DeviceID undocumented
  1168  	DeviceID *UUID `json:"deviceId,omitempty"`
  1169  }
  1170  
  1171  // DeviceManagement Singleton that acts as container for a collection of UserPFXCertificate entities.
  1172  type DeviceManagement struct {
  1173  	// Entity is the base model of DeviceManagement
  1174  	Entity
  1175  	// Settings Account level settings.
  1176  	Settings *DeviceManagementSettings `json:"settings,omitempty"`
  1177  	// MaximumDepTokens Maximum number of dep tokens allowed per-tenant.
  1178  	MaximumDepTokens *int `json:"maximumDepTokens,omitempty"`
  1179  	// IntuneAccountID Intune Account Id for given tenant
  1180  	IntuneAccountID *UUID `json:"intuneAccountId,omitempty"`
  1181  	// LastReportAggregationDateTime The last modified time of reporting for this account. This property is read-only.
  1182  	LastReportAggregationDateTime *time.Time `json:"lastReportAggregationDateTime,omitempty"`
  1183  	// DeviceComplianceReportSummarizationDateTime The last requested time of device compliance reporting for this account. This property is read-only.
  1184  	DeviceComplianceReportSummarizationDateTime *time.Time `json:"deviceComplianceReportSummarizationDateTime,omitempty"`
  1185  	// LegacyPcManangementEnabled The property to enable Non-MDM managed legacy PC management for this account. This property is read-only.
  1186  	LegacyPcManangementEnabled *bool `json:"legacyPcManangementEnabled,omitempty"`
  1187  	// IntuneBrand intuneBrand contains data which is used in customizing the appearance of the Company Portal applications as well as the end user web portal.
  1188  	IntuneBrand *IntuneBrand `json:"intuneBrand,omitempty"`
  1189  	// SubscriptionState Tenant mobile device management subscription state.
  1190  	SubscriptionState *DeviceManagementSubscriptionState `json:"subscriptionState,omitempty"`
  1191  	// Subscriptions Tenant's Subscription.
  1192  	Subscriptions *DeviceManagementSubscriptions `json:"subscriptions,omitempty"`
  1193  	// ManagedDeviceCleanupSettings Device cleanup rule
  1194  	ManagedDeviceCleanupSettings *ManagedDeviceCleanupSettings `json:"managedDeviceCleanupSettings,omitempty"`
  1195  	// AdminConsent Admin consent information.
  1196  	AdminConsent *AdminConsent `json:"adminConsent,omitempty"`
  1197  	// DeviceProtectionOverview Device protection overview.
  1198  	DeviceProtectionOverview *DeviceProtectionOverview `json:"deviceProtectionOverview,omitempty"`
  1199  	// WindowsMalwareOverview Malware overview for windows devices.
  1200  	WindowsMalwareOverview *WindowsMalwareOverview `json:"windowsMalwareOverview,omitempty"`
  1201  	// AccountMoveCompletionDateTime The date & time when tenant data moved between scaleunits.
  1202  	AccountMoveCompletionDateTime *time.Time `json:"accountMoveCompletionDateTime,omitempty"`
  1203  	// GroupPolicyObjectFiles A list of Group Policy Object files uploaded.
  1204  	GroupPolicyObjectFiles []GroupPolicyObjectFile `json:"groupPolicyObjectFiles,omitempty"`
  1205  	// AuditEvents undocumented
  1206  	AuditEvents []AuditEvent `json:"auditEvents,omitempty"`
  1207  	// AndroidForWorkSettings undocumented
  1208  	AndroidForWorkSettings *AndroidForWorkSettings `json:"androidForWorkSettings,omitempty"`
  1209  	// AndroidForWorkAppConfigurationSchemas undocumented
  1210  	AndroidForWorkAppConfigurationSchemas []AndroidForWorkAppConfigurationSchema `json:"androidForWorkAppConfigurationSchemas,omitempty"`
  1211  	// AndroidForWorkEnrollmentProfiles undocumented
  1212  	AndroidForWorkEnrollmentProfiles []AndroidForWorkEnrollmentProfile `json:"androidForWorkEnrollmentProfiles,omitempty"`
  1213  	// AndroidManagedStoreAccountEnterpriseSettings undocumented
  1214  	AndroidManagedStoreAccountEnterpriseSettings *AndroidManagedStoreAccountEnterpriseSettings `json:"androidManagedStoreAccountEnterpriseSettings,omitempty"`
  1215  	// AndroidManagedStoreAppConfigurationSchemas undocumented
  1216  	AndroidManagedStoreAppConfigurationSchemas []AndroidManagedStoreAppConfigurationSchema `json:"androidManagedStoreAppConfigurationSchemas,omitempty"`
  1217  	// AndroidDeviceOwnerEnrollmentProfiles undocumented
  1218  	AndroidDeviceOwnerEnrollmentProfiles []AndroidDeviceOwnerEnrollmentProfile `json:"androidDeviceOwnerEnrollmentProfiles,omitempty"`
  1219  	// TermsAndConditions undocumented
  1220  	TermsAndConditions []TermsAndConditions `json:"termsAndConditions,omitempty"`
  1221  	// DeviceConfigurations undocumented
  1222  	DeviceConfigurations []DeviceConfiguration `json:"deviceConfigurations,omitempty"`
  1223  	// DeviceCompliancePolicies undocumented
  1224  	DeviceCompliancePolicies []DeviceCompliancePolicy `json:"deviceCompliancePolicies,omitempty"`
  1225  	// SoftwareUpdateStatusSummary undocumented
  1226  	SoftwareUpdateStatusSummary *SoftwareUpdateStatusSummary `json:"softwareUpdateStatusSummary,omitempty"`
  1227  	// DeviceCompliancePolicyDeviceStateSummary undocumented
  1228  	DeviceCompliancePolicyDeviceStateSummary *DeviceCompliancePolicyDeviceStateSummary `json:"deviceCompliancePolicyDeviceStateSummary,omitempty"`
  1229  	// DeviceCompliancePolicySettingStateSummaries undocumented
  1230  	DeviceCompliancePolicySettingStateSummaries []DeviceCompliancePolicySettingStateSummary `json:"deviceCompliancePolicySettingStateSummaries,omitempty"`
  1231  	// AdvancedThreatProtectionOnboardingStateSummary undocumented
  1232  	AdvancedThreatProtectionOnboardingStateSummary *AdvancedThreatProtectionOnboardingStateSummary `json:"advancedThreatProtectionOnboardingStateSummary,omitempty"`
  1233  	// DeviceConfigurationDeviceStateSummaries undocumented
  1234  	DeviceConfigurationDeviceStateSummaries *DeviceConfigurationDeviceStateSummary `json:"deviceConfigurationDeviceStateSummaries,omitempty"`
  1235  	// DeviceConfigurationUserStateSummaries undocumented
  1236  	DeviceConfigurationUserStateSummaries *DeviceConfigurationUserStateSummary `json:"deviceConfigurationUserStateSummaries,omitempty"`
  1237  	// CartToClassAssociations undocumented
  1238  	CartToClassAssociations []CartToClassAssociation `json:"cartToClassAssociations,omitempty"`
  1239  	// IOSUpdateStatuses undocumented
  1240  	IOSUpdateStatuses []IOSUpdateDeviceStatus `json:"iosUpdateStatuses,omitempty"`
  1241  	// NDESConnectors undocumented
  1242  	NDESConnectors []NDESConnector `json:"ndesConnectors,omitempty"`
  1243  	// DeviceConfigurationRestrictedAppsViolations undocumented
  1244  	DeviceConfigurationRestrictedAppsViolations []RestrictedAppsViolation `json:"deviceConfigurationRestrictedAppsViolations,omitempty"`
  1245  	// ManagedDeviceEncryptionStates undocumented
  1246  	ManagedDeviceEncryptionStates []ManagedDeviceEncryptionState `json:"managedDeviceEncryptionStates,omitempty"`
  1247  	// DeviceConfigurationConflictSummary undocumented
  1248  	DeviceConfigurationConflictSummary []DeviceConfigurationConflictSummary `json:"deviceConfigurationConflictSummary,omitempty"`
  1249  	// DeviceConfigurationsAllManagedDeviceCertificateStates undocumented
  1250  	DeviceConfigurationsAllManagedDeviceCertificateStates []ManagedAllDeviceCertificateState `json:"deviceConfigurationsAllManagedDeviceCertificateStates,omitempty"`
  1251  	// DeviceCategories undocumented
  1252  	DeviceCategories []DeviceCategory `json:"deviceCategories,omitempty"`
  1253  	// ExchangeConnectors undocumented
  1254  	ExchangeConnectors []DeviceManagementExchangeConnector `json:"exchangeConnectors,omitempty"`
  1255  	// DeviceEnrollmentConfigurations undocumented
  1256  	DeviceEnrollmentConfigurations []DeviceEnrollmentConfiguration `json:"deviceEnrollmentConfigurations,omitempty"`
  1257  	// ExchangeOnPremisesPolicy undocumented
  1258  	ExchangeOnPremisesPolicy *DeviceManagementExchangeOnPremisesPolicy `json:"exchangeOnPremisesPolicy,omitempty"`
  1259  	// ExchangeOnPremisesPolicies undocumented
  1260  	ExchangeOnPremisesPolicies []DeviceManagementExchangeOnPremisesPolicy `json:"exchangeOnPremisesPolicies,omitempty"`
  1261  	// ConditionalAccessSettings undocumented
  1262  	ConditionalAccessSettings *OnPremisesConditionalAccessSettings `json:"conditionalAccessSettings,omitempty"`
  1263  	// MobileThreatDefenseConnectors undocumented
  1264  	MobileThreatDefenseConnectors []MobileThreatDefenseConnector `json:"mobileThreatDefenseConnectors,omitempty"`
  1265  	// DeviceManagementPartners undocumented
  1266  	DeviceManagementPartners []DeviceManagementPartner `json:"deviceManagementPartners,omitempty"`
  1267  	// ComplianceManagementPartners undocumented
  1268  	ComplianceManagementPartners []ComplianceManagementPartner `json:"complianceManagementPartners,omitempty"`
  1269  	// Intents undocumented
  1270  	Intents []DeviceManagementIntent `json:"intents,omitempty"`
  1271  	// SettingDefinitions undocumented
  1272  	SettingDefinitions []DeviceManagementSettingDefinition `json:"settingDefinitions,omitempty"`
  1273  	// Templates undocumented
  1274  	Templates []DeviceManagementTemplate `json:"templates,omitempty"`
  1275  	// Categories undocumented
  1276  	Categories []DeviceManagementSettingCategory `json:"categories,omitempty"`
  1277  	// RemoteActionAudits undocumented
  1278  	RemoteActionAudits []RemoteActionAudit `json:"remoteActionAudits,omitempty"`
  1279  	// ApplePushNotificationCertificate undocumented
  1280  	ApplePushNotificationCertificate *ApplePushNotificationCertificate `json:"applePushNotificationCertificate,omitempty"`
  1281  	// DeviceManagementScripts undocumented
  1282  	DeviceManagementScripts []DeviceManagementScript `json:"deviceManagementScripts,omitempty"`
  1283  	// DeviceHealthScripts undocumented
  1284  	DeviceHealthScripts []DeviceHealthScript `json:"deviceHealthScripts,omitempty"`
  1285  	// ManagedDeviceOverview undocumented
  1286  	ManagedDeviceOverview *ManagedDeviceOverview `json:"managedDeviceOverview,omitempty"`
  1287  	// DetectedApps undocumented
  1288  	DetectedApps []DetectedApp `json:"detectedApps,omitempty"`
  1289  	// ManagedDevices undocumented
  1290  	ManagedDevices []ManagedDevice `json:"managedDevices,omitempty"`
  1291  	// WindowsMalwareInformation undocumented
  1292  	WindowsMalwareInformation []WindowsMalwareInformation `json:"windowsMalwareInformation,omitempty"`
  1293  	// DataSharingConsents undocumented
  1294  	DataSharingConsents []DataSharingConsent `json:"dataSharingConsents,omitempty"`
  1295  	// MobileAppTroubleshootingEvents undocumented
  1296  	MobileAppTroubleshootingEvents []MobileAppTroubleshootingEvent `json:"mobileAppTroubleshootingEvents,omitempty"`
  1297  	// UserExperienceAnalyticsOverview undocumented
  1298  	UserExperienceAnalyticsOverview *UserExperienceAnalyticsOverview `json:"userExperienceAnalyticsOverview,omitempty"`
  1299  	// UserExperienceAnalyticsBaselines undocumented
  1300  	UserExperienceAnalyticsBaselines []UserExperienceAnalyticsBaseline `json:"userExperienceAnalyticsBaselines,omitempty"`
  1301  	// UserExperienceAnalyticsCategories undocumented
  1302  	UserExperienceAnalyticsCategories []UserExperienceAnalyticsCategory `json:"userExperienceAnalyticsCategories,omitempty"`
  1303  	// UserExperienceAnalyticsDevicePerformance undocumented
  1304  	UserExperienceAnalyticsDevicePerformance []UserExperienceAnalyticsDevicePerformance `json:"userExperienceAnalyticsDevicePerformance,omitempty"`
  1305  	// UserExperienceAnalyticsRegressionSummary undocumented
  1306  	UserExperienceAnalyticsRegressionSummary *UserExperienceAnalyticsRegressionSummary `json:"userExperienceAnalyticsRegressionSummary,omitempty"`
  1307  	// UserExperienceAnalyticsDeviceStartupHistory undocumented
  1308  	UserExperienceAnalyticsDeviceStartupHistory []UserExperienceAnalyticsDeviceStartupHistory `json:"userExperienceAnalyticsDeviceStartupHistory,omitempty"`
  1309  	// DerivedCredentials undocumented
  1310  	DerivedCredentials []DeviceManagementDerivedCredentialSettings `json:"derivedCredentials,omitempty"`
  1311  	// WindowsAutopilotSettings undocumented
  1312  	WindowsAutopilotSettings *WindowsAutopilotSettings `json:"windowsAutopilotSettings,omitempty"`
  1313  	// WindowsAutopilotDeviceIdentities undocumented
  1314  	WindowsAutopilotDeviceIdentities []WindowsAutopilotDeviceIdentity `json:"windowsAutopilotDeviceIdentities,omitempty"`
  1315  	// WindowsAutopilotDeploymentProfiles undocumented
  1316  	WindowsAutopilotDeploymentProfiles []WindowsAutopilotDeploymentProfile `json:"windowsAutopilotDeploymentProfiles,omitempty"`
  1317  	// ImportedDeviceIdentities undocumented
  1318  	ImportedDeviceIdentities []ImportedDeviceIdentity `json:"importedDeviceIdentities,omitempty"`
  1319  	// DepOnboardingSettings undocumented
  1320  	DepOnboardingSettings []DepOnboardingSetting `json:"depOnboardingSettings,omitempty"`
  1321  	// ImportedWindowsAutopilotDeviceIdentities undocumented
  1322  	ImportedWindowsAutopilotDeviceIdentities []ImportedWindowsAutopilotDeviceIdentity `json:"importedWindowsAutopilotDeviceIdentities,omitempty"`
  1323  	// AppleUserInitiatedEnrollmentProfiles undocumented
  1324  	AppleUserInitiatedEnrollmentProfiles []AppleUserInitiatedEnrollmentProfile `json:"appleUserInitiatedEnrollmentProfiles,omitempty"`
  1325  	// ManagementConditions undocumented
  1326  	ManagementConditions []ManagementCondition `json:"managementConditions,omitempty"`
  1327  	// ManagementConditionStatements undocumented
  1328  	ManagementConditionStatements []ManagementConditionStatement `json:"managementConditionStatements,omitempty"`
  1329  	// GroupPolicyMigrationReports undocumented
  1330  	GroupPolicyMigrationReports []GroupPolicyMigrationReport `json:"groupPolicyMigrationReports,omitempty"`
  1331  	// GroupPolicyConfigurations undocumented
  1332  	GroupPolicyConfigurations []GroupPolicyConfiguration `json:"groupPolicyConfigurations,omitempty"`
  1333  	// GroupPolicyDefinitions undocumented
  1334  	GroupPolicyDefinitions []GroupPolicyDefinition `json:"groupPolicyDefinitions,omitempty"`
  1335  	// GroupPolicyDefinitionFiles undocumented
  1336  	GroupPolicyDefinitionFiles []GroupPolicyDefinitionFile `json:"groupPolicyDefinitionFiles,omitempty"`
  1337  	// NotificationMessageTemplates undocumented
  1338  	NotificationMessageTemplates []NotificationMessageTemplate `json:"notificationMessageTemplates,omitempty"`
  1339  	// DomainJoinConnectors undocumented
  1340  	DomainJoinConnectors []DeviceManagementDomainJoinConnector `json:"domainJoinConnectors,omitempty"`
  1341  	// RoleDefinitions undocumented
  1342  	RoleDefinitions []RoleDefinition `json:"roleDefinitions,omitempty"`
  1343  	// RoleAssignments undocumented
  1344  	RoleAssignments []DeviceAndAppManagementRoleAssignment `json:"roleAssignments,omitempty"`
  1345  	// RoleScopeTags undocumented
  1346  	RoleScopeTags []RoleScopeTag `json:"roleScopeTags,omitempty"`
  1347  	// ResourceOperations undocumented
  1348  	ResourceOperations []ResourceOperation `json:"resourceOperations,omitempty"`
  1349  	// RemoteAssistancePartners undocumented
  1350  	RemoteAssistancePartners []RemoteAssistancePartner `json:"remoteAssistancePartners,omitempty"`
  1351  	// Reports undocumented
  1352  	Reports *DeviceManagementReports `json:"reports,omitempty"`
  1353  	// TelecomExpenseManagementPartners undocumented
  1354  	TelecomExpenseManagementPartners []TelecomExpenseManagementPartner `json:"telecomExpenseManagementPartners,omitempty"`
  1355  	// EmbeddedSIMActivationCodePools undocumented
  1356  	EmbeddedSIMActivationCodePools []EmbeddedSIMActivationCodePool `json:"embeddedSIMActivationCodePools,omitempty"`
  1357  	// TroubleshootingEvents undocumented
  1358  	TroubleshootingEvents []DeviceManagementTroubleshootingEvent `json:"troubleshootingEvents,omitempty"`
  1359  	// AutopilotEvents undocumented
  1360  	AutopilotEvents []DeviceManagementAutopilotEvent `json:"autopilotEvents,omitempty"`
  1361  	// WindowsFeatureUpdateProfiles undocumented
  1362  	WindowsFeatureUpdateProfiles []WindowsFeatureUpdateProfile `json:"windowsFeatureUpdateProfiles,omitempty"`
  1363  	// WindowsInformationProtectionAppLearningSummaries undocumented
  1364  	WindowsInformationProtectionAppLearningSummaries []WindowsInformationProtectionAppLearningSummary `json:"windowsInformationProtectionAppLearningSummaries,omitempty"`
  1365  	// WindowsInformationProtectionNetworkLearningSummaries undocumented
  1366  	WindowsInformationProtectionNetworkLearningSummaries []WindowsInformationProtectionNetworkLearningSummary `json:"windowsInformationProtectionNetworkLearningSummaries,omitempty"`
  1367  	// IntuneBrandingProfiles undocumented
  1368  	IntuneBrandingProfiles []IntuneBrandingProfile `json:"intuneBrandingProfiles,omitempty"`
  1369  	// UserPfxCertificates undocumented
  1370  	UserPfxCertificates []UserPFXCertificate `json:"userPfxCertificates,omitempty"`
  1371  }
  1372  
  1373  // DeviceManagementAbstractComplexSettingDefinition Entity representing the defintion for an abstract complex setting
  1374  type DeviceManagementAbstractComplexSettingDefinition struct {
  1375  	// DeviceManagementSettingDefinition is the base model of DeviceManagementAbstractComplexSettingDefinition
  1376  	DeviceManagementSettingDefinition
  1377  	// Implementations List of definition IDs for all possible implementations of this abstract complex setting
  1378  	Implementations []string `json:"implementations,omitempty"`
  1379  }
  1380  
  1381  // DeviceManagementAbstractComplexSettingInstance A setting instance representing a complex value for an abstract setting
  1382  type DeviceManagementAbstractComplexSettingInstance struct {
  1383  	// DeviceManagementSettingInstance is the base model of DeviceManagementAbstractComplexSettingInstance
  1384  	DeviceManagementSettingInstance
  1385  	// ImplementationID The definition ID for the chosen implementation of this complex setting
  1386  	ImplementationID *string `json:"implementationId,omitempty"`
  1387  	// Value undocumented
  1388  	Value []DeviceManagementSettingInstance `json:"value,omitempty"`
  1389  }
  1390  
  1391  // DeviceManagementApplicabilityRuleDeviceMode undocumented
  1392  type DeviceManagementApplicabilityRuleDeviceMode struct {
  1393  	// Object is the base model of DeviceManagementApplicabilityRuleDeviceMode
  1394  	Object
  1395  	// DeviceMode Applicability rule for device mode.
  1396  	DeviceMode *Windows10DeviceModeType `json:"deviceMode,omitempty"`
  1397  	// Name Name for object.
  1398  	Name *string `json:"name,omitempty"`
  1399  	// RuleType Applicability Rule type.
  1400  	RuleType *DeviceManagementApplicabilityRuleType `json:"ruleType,omitempty"`
  1401  }
  1402  
  1403  // DeviceManagementApplicabilityRuleOsEdition undocumented
  1404  type DeviceManagementApplicabilityRuleOsEdition struct {
  1405  	// Object is the base model of DeviceManagementApplicabilityRuleOsEdition
  1406  	Object
  1407  	// OsEditionTypes Applicability rule OS edition type.
  1408  	OsEditionTypes []Windows10EditionType `json:"osEditionTypes,omitempty"`
  1409  	// Name Name for object.
  1410  	Name *string `json:"name,omitempty"`
  1411  	// RuleType Applicability Rule type.
  1412  	RuleType *DeviceManagementApplicabilityRuleType `json:"ruleType,omitempty"`
  1413  }
  1414  
  1415  // DeviceManagementApplicabilityRuleOsVersion undocumented
  1416  type DeviceManagementApplicabilityRuleOsVersion struct {
  1417  	// Object is the base model of DeviceManagementApplicabilityRuleOsVersion
  1418  	Object
  1419  	// MinOSVersion Min OS version for Applicability Rule.
  1420  	MinOSVersion *string `json:"minOSVersion,omitempty"`
  1421  	// MaxOSVersion Max OS version for Applicability Rule.
  1422  	MaxOSVersion *string `json:"maxOSVersion,omitempty"`
  1423  	// Name Name for object.
  1424  	Name *string `json:"name,omitempty"`
  1425  	// RuleType Applicability Rule type.
  1426  	RuleType *DeviceManagementApplicabilityRuleType `json:"ruleType,omitempty"`
  1427  }
  1428  
  1429  // DeviceManagementAutopilotEvent Represents an Autopilot flow event.
  1430  type DeviceManagementAutopilotEvent struct {
  1431  	// Entity is the base model of DeviceManagementAutopilotEvent
  1432  	Entity
  1433  	// EventDateTime Time when the event occurred .
  1434  	EventDateTime *time.Time `json:"eventDateTime,omitempty"`
  1435  	// DeviceRegisteredDateTime Device registration date.
  1436  	DeviceRegisteredDateTime *time.Time `json:"deviceRegisteredDateTime,omitempty"`
  1437  	// EnrollmentStartDateTime Device enrollment start date.
  1438  	EnrollmentStartDateTime *time.Time `json:"enrollmentStartDateTime,omitempty"`
  1439  	// EnrollmentType Enrollment type.
  1440  	EnrollmentType *WindowsAutopilotEnrollmentType `json:"enrollmentType,omitempty"`
  1441  	// DeviceSerialNumber Device serial number.
  1442  	DeviceSerialNumber *string `json:"deviceSerialNumber,omitempty"`
  1443  	// ManagedDeviceName Managed device name.
  1444  	ManagedDeviceName *string `json:"managedDeviceName,omitempty"`
  1445  	// UserPrincipalName User principal name used to enroll the device.
  1446  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
  1447  	// WindowsAutopilotDeploymentProfileDisplayName Autopilot profile name.
  1448  	WindowsAutopilotDeploymentProfileDisplayName *string `json:"windowsAutopilotDeploymentProfileDisplayName,omitempty"`
  1449  	// EnrollmentState Enrollment state like Enrolled, Failed.
  1450  	EnrollmentState *EnrollmentState `json:"enrollmentState,omitempty"`
  1451  	// Windows10EnrollmentCompletionPageConfigurationDisplayName Enrollment Status Page profile name
  1452  	Windows10EnrollmentCompletionPageConfigurationDisplayName *string `json:"windows10EnrollmentCompletionPageConfigurationDisplayName,omitempty"`
  1453  	// DeploymentState Deployment state like Success, Failure, InProgress, SuccessWithTimeout.
  1454  	DeploymentState *WindowsAutopilotDeploymentState `json:"deploymentState,omitempty"`
  1455  	// OsVersion Device operating system version.
  1456  	OsVersion *string `json:"osVersion,omitempty"`
  1457  	// DeploymentDuration Autopilot deployment duration including enrollment.
  1458  	DeploymentDuration *Duration `json:"deploymentDuration,omitempty"`
  1459  	// DeploymentTotalDuration Total deployment duration from enrollment to Desktop screen.
  1460  	DeploymentTotalDuration *Duration `json:"deploymentTotalDuration,omitempty"`
  1461  	// DevicePreparationDuration Time spent in device enrollment.
  1462  	DevicePreparationDuration *Duration `json:"devicePreparationDuration,omitempty"`
  1463  	// DeviceSetupDuration Time spent in device ESP.
  1464  	DeviceSetupDuration *Duration `json:"deviceSetupDuration,omitempty"`
  1465  	// AccountSetupDuration Time spent in user ESP.
  1466  	AccountSetupDuration *Duration `json:"accountSetupDuration,omitempty"`
  1467  	// DeploymentStartDateTime Deployment start time.
  1468  	DeploymentStartDateTime *time.Time `json:"deploymentStartDateTime,omitempty"`
  1469  	// DeploymentEndDateTime Deployment end time.
  1470  	DeploymentEndDateTime *time.Time `json:"deploymentEndDateTime,omitempty"`
  1471  	// TargetedAppCount Count of applications targeted.
  1472  	TargetedAppCount *int `json:"targetedAppCount,omitempty"`
  1473  	// TargetedPolicyCount Count of policies targeted.
  1474  	TargetedPolicyCount *int `json:"targetedPolicyCount,omitempty"`
  1475  	// EnrollmentFailureDetails Enrollment failure details.
  1476  	EnrollmentFailureDetails *string `json:"enrollmentFailureDetails,omitempty"`
  1477  }
  1478  
  1479  // DeviceManagementBooleanSettingInstance A setting instance representing a boolean value
  1480  type DeviceManagementBooleanSettingInstance struct {
  1481  	// DeviceManagementSettingInstance is the base model of DeviceManagementBooleanSettingInstance
  1482  	DeviceManagementSettingInstance
  1483  	// Value The boolean value
  1484  	Value *bool `json:"value,omitempty"`
  1485  }
  1486  
  1487  // DeviceManagementCachedReportConfiguration Entity representing the configuration of a cached report
  1488  type DeviceManagementCachedReportConfiguration struct {
  1489  	// Entity is the base model of DeviceManagementCachedReportConfiguration
  1490  	Entity
  1491  	// ReportName Name of the report
  1492  	ReportName *string `json:"reportName,omitempty"`
  1493  	// Filter Filters applied on report creation.
  1494  	Filter *string `json:"filter,omitempty"`
  1495  	// Select Columns selected from the report
  1496  	Select []string `json:"select,omitempty"`
  1497  	// OrderBy Ordering of columns in the report
  1498  	OrderBy []string `json:"orderBy,omitempty"`
  1499  	// Status Status of the cached report
  1500  	Status *DeviceManagementReportStatus `json:"status,omitempty"`
  1501  	// LastRefreshDateTime Time that the cached report was last refreshed
  1502  	LastRefreshDateTime *time.Time `json:"lastRefreshDateTime,omitempty"`
  1503  	// ExpirationDateTime Time that the cached report expires
  1504  	ExpirationDateTime *time.Time `json:"expirationDateTime,omitempty"`
  1505  }
  1506  
  1507  // DeviceManagementCollectionSettingDefinition Entity representing the defintion for a collection setting
  1508  type DeviceManagementCollectionSettingDefinition struct {
  1509  	// DeviceManagementSettingDefinition is the base model of DeviceManagementCollectionSettingDefinition
  1510  	DeviceManagementSettingDefinition
  1511  	// ElementDefinitionID The Setting Definition ID that describes what each element of the collection looks like
  1512  	ElementDefinitionID *string `json:"elementDefinitionId,omitempty"`
  1513  }
  1514  
  1515  // DeviceManagementCollectionSettingInstance A setting instance representing a collection of values
  1516  type DeviceManagementCollectionSettingInstance struct {
  1517  	// DeviceManagementSettingInstance is the base model of DeviceManagementCollectionSettingInstance
  1518  	DeviceManagementSettingInstance
  1519  	// Value undocumented
  1520  	Value []DeviceManagementSettingInstance `json:"value,omitempty"`
  1521  }
  1522  
  1523  // DeviceManagementComplexSettingDefinition Entity representing the defintion for a complex setting
  1524  type DeviceManagementComplexSettingDefinition struct {
  1525  	// DeviceManagementSettingDefinition is the base model of DeviceManagementComplexSettingDefinition
  1526  	DeviceManagementSettingDefinition
  1527  	// PropertyDefinitionIDs The definitions of each property of the complex setting
  1528  	PropertyDefinitionIDs []string `json:"propertyDefinitionIds,omitempty"`
  1529  }
  1530  
  1531  // DeviceManagementComplexSettingInstance A setting instance representing a complex value
  1532  type DeviceManagementComplexSettingInstance struct {
  1533  	// DeviceManagementSettingInstance is the base model of DeviceManagementComplexSettingInstance
  1534  	DeviceManagementSettingInstance
  1535  	// Value undocumented
  1536  	Value []DeviceManagementSettingInstance `json:"value,omitempty"`
  1537  }
  1538  
  1539  // DeviceManagementConstraint undocumented
  1540  type DeviceManagementConstraint struct {
  1541  	// Object is the base model of DeviceManagementConstraint
  1542  	Object
  1543  }
  1544  
  1545  // DeviceManagementDerivedCredentialSettings Entity that describes tenant level settings for derived credentials
  1546  type DeviceManagementDerivedCredentialSettings struct {
  1547  	// Entity is the base model of DeviceManagementDerivedCredentialSettings
  1548  	Entity
  1549  	// HelpURL The URL that will be accessible to end users as they retrieve a derived credential using the Company Portal.
  1550  	HelpURL *string `json:"helpUrl,omitempty"`
  1551  	// DisplayName The display name for the profile.
  1552  	DisplayName *string `json:"displayName,omitempty"`
  1553  	// Issuer The derived credential provider to use.
  1554  	Issuer *DeviceManagementDerivedCredentialIssuer `json:"issuer,omitempty"`
  1555  	// NotificationType The methods used to inform the end user to open Company Portal to deliver Wi-Fi, VPN, or email profiles that use certificates to the device.
  1556  	NotificationType *DeviceManagementDerivedCredentialNotificationType `json:"notificationType,omitempty"`
  1557  }
  1558  
  1559  // DeviceManagementDomainJoinConnector A Domain Join Connector is a connector that is responsible to allocate (and delete) machine account blobs
  1560  type DeviceManagementDomainJoinConnector struct {
  1561  	// Entity is the base model of DeviceManagementDomainJoinConnector
  1562  	Entity
  1563  	// DisplayName The connector display name.
  1564  	DisplayName *string `json:"displayName,omitempty"`
  1565  	// LastConnectionDateTime Last time connector contacted Intune.
  1566  	LastConnectionDateTime *time.Time `json:"lastConnectionDateTime,omitempty"`
  1567  	// State The connector state.
  1568  	State *DeviceManagementDomainJoinConnectorState `json:"state,omitempty"`
  1569  	// Version The version of the connector.
  1570  	Version *string `json:"version,omitempty"`
  1571  }
  1572  
  1573  // DeviceManagementEnumConstraint undocumented
  1574  type DeviceManagementEnumConstraint struct {
  1575  	// DeviceManagementConstraint is the base model of DeviceManagementEnumConstraint
  1576  	DeviceManagementConstraint
  1577  	// Values List of valid values for this string
  1578  	Values []DeviceManagementEnumValue `json:"values,omitempty"`
  1579  }
  1580  
  1581  // DeviceManagementEnumValue undocumented
  1582  type DeviceManagementEnumValue struct {
  1583  	// Object is the base model of DeviceManagementEnumValue
  1584  	Object
  1585  	// Value The raw enum value text
  1586  	Value *string `json:"value,omitempty"`
  1587  	// DisplayName Display name for this enum value
  1588  	DisplayName *string `json:"displayName,omitempty"`
  1589  }
  1590  
  1591  // DeviceManagementExchangeAccessRule undocumented
  1592  type DeviceManagementExchangeAccessRule struct {
  1593  	// Object is the base model of DeviceManagementExchangeAccessRule
  1594  	Object
  1595  	// DeviceClass Device Class which will be impacted by this rule.
  1596  	DeviceClass *DeviceManagementExchangeDeviceClass `json:"deviceClass,omitempty"`
  1597  	// AccessLevel Access Level for Exchange granted by this rule.
  1598  	AccessLevel *DeviceManagementExchangeAccessLevel `json:"accessLevel,omitempty"`
  1599  }
  1600  
  1601  // DeviceManagementExchangeConnector Entity which represents a connection to an Exchange environment.
  1602  type DeviceManagementExchangeConnector struct {
  1603  	// Entity is the base model of DeviceManagementExchangeConnector
  1604  	Entity
  1605  	// LastSyncDateTime Last sync time for the Exchange Connector
  1606  	LastSyncDateTime *time.Time `json:"lastSyncDateTime,omitempty"`
  1607  	// Status Exchange Connector Status
  1608  	Status *DeviceManagementExchangeConnectorStatus `json:"status,omitempty"`
  1609  	// PrimarySMTPAddress Email address used to configure the Service To Service Exchange Connector.
  1610  	PrimarySMTPAddress *string `json:"primarySmtpAddress,omitempty"`
  1611  	// ServerName The name of the Exchange server.
  1612  	ServerName *string `json:"serverName,omitempty"`
  1613  	// ConnectorServerName The name of the server hosting the Exchange Connector.
  1614  	ConnectorServerName *string `json:"connectorServerName,omitempty"`
  1615  	// ExchangeConnectorType The type of Exchange Connector Configured.
  1616  	ExchangeConnectorType *DeviceManagementExchangeConnectorType `json:"exchangeConnectorType,omitempty"`
  1617  	// Version The version of the ExchangeConnectorAgent
  1618  	Version *string `json:"version,omitempty"`
  1619  	// ExchangeAlias An alias assigned to the Exchange server
  1620  	ExchangeAlias *string `json:"exchangeAlias,omitempty"`
  1621  	// ExchangeOrganization Exchange Organization to the Exchange server
  1622  	ExchangeOrganization *string `json:"exchangeOrganization,omitempty"`
  1623  }
  1624  
  1625  // DeviceManagementExchangeDeviceClass undocumented
  1626  type DeviceManagementExchangeDeviceClass struct {
  1627  	// Object is the base model of DeviceManagementExchangeDeviceClass
  1628  	Object
  1629  	// Name Name of the device class which will be impacted by this rule.
  1630  	Name *string `json:"name,omitempty"`
  1631  	// Type Type of device which is impacted by this rule e.g. Model, Family
  1632  	Type *DeviceManagementExchangeAccessRuleType `json:"type,omitempty"`
  1633  }
  1634  
  1635  // DeviceManagementExchangeOnPremisesPolicy Singleton entity which represents the Exchange OnPremises policy configured for a tenant.
  1636  type DeviceManagementExchangeOnPremisesPolicy struct {
  1637  	// Entity is the base model of DeviceManagementExchangeOnPremisesPolicy
  1638  	Entity
  1639  	// NotificationContent Notification text that will be sent to users quarantined by this policy. This is UTF8 encoded byte array HTML.
  1640  	NotificationContent *Binary `json:"notificationContent,omitempty"`
  1641  	// DefaultAccessLevel Default access state in Exchange. This rule applies globally to the entire Exchange organization
  1642  	DefaultAccessLevel *DeviceManagementExchangeAccessLevel `json:"defaultAccessLevel,omitempty"`
  1643  	// AccessRules The list of device access rules in Exchange. The access rules apply globally to the entire Exchange organization
  1644  	AccessRules []DeviceManagementExchangeAccessRule `json:"accessRules,omitempty"`
  1645  	// KnownDeviceClasses The list of device classes known to Exchange
  1646  	KnownDeviceClasses []DeviceManagementExchangeDeviceClass `json:"knownDeviceClasses,omitempty"`
  1647  	// ConditionalAccessSettings undocumented
  1648  	ConditionalAccessSettings *OnPremisesConditionalAccessSettings `json:"conditionalAccessSettings,omitempty"`
  1649  }
  1650  
  1651  // DeviceManagementExportJob Entity representing a job to export a report
  1652  type DeviceManagementExportJob struct {
  1653  	// Entity is the base model of DeviceManagementExportJob
  1654  	Entity
  1655  	// ReportName Name of the report
  1656  	ReportName *string `json:"reportName,omitempty"`
  1657  	// Filter Filters applied on the report
  1658  	Filter *string `json:"filter,omitempty"`
  1659  	// Select Columns selected from the report
  1660  	Select []string `json:"select,omitempty"`
  1661  	// Format Format of the exported report
  1662  	Format *DeviceManagementReportFileFormat `json:"format,omitempty"`
  1663  	// SnapshotID A snapshot is an identifiable subset of the dataset represented by the ReportName. A sessionId or CachedReportConfiguration id can be used here. If a sessionId is specified, Filter, Select, and OrderBy are applied to the data represented by the sessionId. Filter, Select, and OrderBy cannot be specified together with a CachedReportConfiguration id.
  1664  	SnapshotID *string `json:"snapshotId,omitempty"`
  1665  	// Status Status of the export job
  1666  	Status *DeviceManagementReportStatus `json:"status,omitempty"`
  1667  	// URL Temporary location of the exported report
  1668  	URL *string `json:"url,omitempty"`
  1669  	// RequestDateTime Time that the exported report was requested
  1670  	RequestDateTime *time.Time `json:"requestDateTime,omitempty"`
  1671  	// ExpirationDateTime Time that the exported report expires
  1672  	ExpirationDateTime *time.Time `json:"expirationDateTime,omitempty"`
  1673  }
  1674  
  1675  // DeviceManagementIntegerSettingInstance A setting instance representing an integer value
  1676  type DeviceManagementIntegerSettingInstance struct {
  1677  	// DeviceManagementSettingInstance is the base model of DeviceManagementIntegerSettingInstance
  1678  	DeviceManagementSettingInstance
  1679  	// Value The integer value
  1680  	Value *int `json:"value,omitempty"`
  1681  }
  1682  
  1683  // DeviceManagementIntent Entity that represents an intent to apply settings to a device
  1684  type DeviceManagementIntent struct {
  1685  	// Entity is the base model of DeviceManagementIntent
  1686  	Entity
  1687  	// DisplayName The user given display name
  1688  	DisplayName *string `json:"displayName,omitempty"`
  1689  	// Description The user given description
  1690  	Description *string `json:"description,omitempty"`
  1691  	// IsAssigned Signifies whether or not the intent is assigned to users
  1692  	IsAssigned *bool `json:"isAssigned,omitempty"`
  1693  	// LastModifiedDateTime When the intent was last modified
  1694  	LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"`
  1695  	// TemplateID The ID of the template this intent was created from (if any)
  1696  	TemplateID *string `json:"templateId,omitempty"`
  1697  	// RoleScopeTagIDs List of Scope Tags for this Entity instance.
  1698  	RoleScopeTagIDs []string `json:"roleScopeTagIds,omitempty"`
  1699  	// Settings undocumented
  1700  	Settings []DeviceManagementSettingInstance `json:"settings,omitempty"`
  1701  	// Categories undocumented
  1702  	Categories []DeviceManagementIntentSettingCategory `json:"categories,omitempty"`
  1703  	// Assignments undocumented
  1704  	Assignments []DeviceManagementIntentAssignment `json:"assignments,omitempty"`
  1705  	// DeviceSettingStateSummaries undocumented
  1706  	DeviceSettingStateSummaries []DeviceManagementIntentDeviceSettingStateSummary `json:"deviceSettingStateSummaries,omitempty"`
  1707  	// DeviceStates undocumented
  1708  	DeviceStates []DeviceManagementIntentDeviceState `json:"deviceStates,omitempty"`
  1709  	// UserStates undocumented
  1710  	UserStates []DeviceManagementIntentUserState `json:"userStates,omitempty"`
  1711  	// DeviceStateSummary undocumented
  1712  	DeviceStateSummary *DeviceManagementIntentDeviceStateSummary `json:"deviceStateSummary,omitempty"`
  1713  	// UserStateSummary undocumented
  1714  	UserStateSummary *DeviceManagementIntentUserStateSummary `json:"userStateSummary,omitempty"`
  1715  }
  1716  
  1717  // DeviceManagementIntentAssignment Intent assignment entity
  1718  type DeviceManagementIntentAssignment struct {
  1719  	// Entity is the base model of DeviceManagementIntentAssignment
  1720  	Entity
  1721  	// Target The assignment target
  1722  	Target *DeviceAndAppManagementAssignmentTarget `json:"target,omitempty"`
  1723  }
  1724  
  1725  // DeviceManagementIntentDeviceSettingStateSummary Entity that represents device setting state summary for an intent
  1726  type DeviceManagementIntentDeviceSettingStateSummary struct {
  1727  	// Entity is the base model of DeviceManagementIntentDeviceSettingStateSummary
  1728  	Entity
  1729  	// SettingName Name of a setting
  1730  	SettingName *string `json:"settingName,omitempty"`
  1731  	// CompliantCount Number of compliant devices
  1732  	CompliantCount *int `json:"compliantCount,omitempty"`
  1733  	// ConflictCount Number of devices in conflict
  1734  	ConflictCount *int `json:"conflictCount,omitempty"`
  1735  	// ErrorCount Number of error devices
  1736  	ErrorCount *int `json:"errorCount,omitempty"`
  1737  	// NonCompliantCount Number of non compliant devices
  1738  	NonCompliantCount *int `json:"nonCompliantCount,omitempty"`
  1739  	// NotApplicableCount Number of not applicable devices
  1740  	NotApplicableCount *int `json:"notApplicableCount,omitempty"`
  1741  	// RemediatedCount Number of remediated devices
  1742  	RemediatedCount *int `json:"remediatedCount,omitempty"`
  1743  }
  1744  
  1745  // DeviceManagementIntentDeviceState Entity that represents device state for an intent
  1746  type DeviceManagementIntentDeviceState struct {
  1747  	// Entity is the base model of DeviceManagementIntentDeviceState
  1748  	Entity
  1749  	// UserPrincipalName The user principal name that is being reported on a device
  1750  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
  1751  	// UserName The user name that is being reported on a device
  1752  	UserName *string `json:"userName,omitempty"`
  1753  	// DeviceDisplayName Device name that is being reported
  1754  	DeviceDisplayName *string `json:"deviceDisplayName,omitempty"`
  1755  	// LastReportedDateTime Last modified date time of an intent report
  1756  	LastReportedDateTime *time.Time `json:"lastReportedDateTime,omitempty"`
  1757  	// State Device state for an intent
  1758  	State *ComplianceStatus `json:"state,omitempty"`
  1759  	// DeviceID Device id that is being reported
  1760  	DeviceID *string `json:"deviceId,omitempty"`
  1761  }
  1762  
  1763  // DeviceManagementIntentDeviceStateSummary Entity that represents device state summary for an intent
  1764  type DeviceManagementIntentDeviceStateSummary struct {
  1765  	// Entity is the base model of DeviceManagementIntentDeviceStateSummary
  1766  	Entity
  1767  	// ConflictCount Number of devices in conflict
  1768  	ConflictCount *int `json:"conflictCount,omitempty"`
  1769  	// ErrorCount Number of error devices
  1770  	ErrorCount *int `json:"errorCount,omitempty"`
  1771  	// FailedCount Number of failed devices
  1772  	FailedCount *int `json:"failedCount,omitempty"`
  1773  	// NotApplicableCount Number of not applicable devices
  1774  	NotApplicableCount *int `json:"notApplicableCount,omitempty"`
  1775  	// NotApplicablePlatformCount Number of not applicable devices due to mismatch platform and policy
  1776  	NotApplicablePlatformCount *int `json:"notApplicablePlatformCount,omitempty"`
  1777  	// SuccessCount Number of succeeded devices
  1778  	SuccessCount *int `json:"successCount,omitempty"`
  1779  }
  1780  
  1781  // DeviceManagementIntentSettingCategory Entity representing an intent setting category
  1782  type DeviceManagementIntentSettingCategory struct {
  1783  	// DeviceManagementSettingCategory is the base model of DeviceManagementIntentSettingCategory
  1784  	DeviceManagementSettingCategory
  1785  	// Settings undocumented
  1786  	Settings []DeviceManagementSettingInstance `json:"settings,omitempty"`
  1787  }
  1788  
  1789  // DeviceManagementIntentUserState Entity that represents user state for an intent
  1790  type DeviceManagementIntentUserState struct {
  1791  	// Entity is the base model of DeviceManagementIntentUserState
  1792  	Entity
  1793  	// UserPrincipalName The user principal name that is being reported on a device
  1794  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
  1795  	// UserName The user name that is being reported on a device
  1796  	UserName *string `json:"userName,omitempty"`
  1797  	// DeviceCount Count of Devices that belongs to a user for an intent
  1798  	DeviceCount *int `json:"deviceCount,omitempty"`
  1799  	// LastReportedDateTime Last modified date time of an intent report
  1800  	LastReportedDateTime *time.Time `json:"lastReportedDateTime,omitempty"`
  1801  	// State User state for an intent
  1802  	State *ComplianceStatus `json:"state,omitempty"`
  1803  }
  1804  
  1805  // DeviceManagementIntentUserStateSummary Entity that represents user state summary for an intent
  1806  type DeviceManagementIntentUserStateSummary struct {
  1807  	// Entity is the base model of DeviceManagementIntentUserStateSummary
  1808  	Entity
  1809  	// ConflictCount Number of users in conflict
  1810  	ConflictCount *int `json:"conflictCount,omitempty"`
  1811  	// ErrorCount Number of error users
  1812  	ErrorCount *int `json:"errorCount,omitempty"`
  1813  	// FailedCount Number of failed users
  1814  	FailedCount *int `json:"failedCount,omitempty"`
  1815  	// NotApplicableCount Number of not applicable users
  1816  	NotApplicableCount *int `json:"notApplicableCount,omitempty"`
  1817  	// SuccessCount Number of succeeded users
  1818  	SuccessCount *int `json:"successCount,omitempty"`
  1819  }
  1820  
  1821  // DeviceManagementPartner Entity which represents a connection to device management partner.
  1822  type DeviceManagementPartner struct {
  1823  	// Entity is the base model of DeviceManagementPartner
  1824  	Entity
  1825  	// LastHeartbeatDateTime Timestamp of last heartbeat after admin enabled option Connect to Device management Partner
  1826  	LastHeartbeatDateTime *time.Time `json:"lastHeartbeatDateTime,omitempty"`
  1827  	// PartnerState Partner state of this tenant
  1828  	PartnerState *DeviceManagementPartnerTenantState `json:"partnerState,omitempty"`
  1829  	// PartnerAppType Partner App type
  1830  	PartnerAppType *DeviceManagementPartnerAppType `json:"partnerAppType,omitempty"`
  1831  	// SingleTenantAppID Partner Single tenant App id
  1832  	SingleTenantAppID *string `json:"singleTenantAppId,omitempty"`
  1833  	// DisplayName Partner display name
  1834  	DisplayName *string `json:"displayName,omitempty"`
  1835  	// IsConfigured Whether device management partner is configured or not
  1836  	IsConfigured *bool `json:"isConfigured,omitempty"`
  1837  	// WhenPartnerDevicesWillBeRemoved DateTime in UTC when PartnerDevices will be removed. This will become obselete soon.
  1838  	WhenPartnerDevicesWillBeRemoved *time.Time `json:"whenPartnerDevicesWillBeRemoved,omitempty"`
  1839  	// WhenPartnerDevicesWillBeMarkedAsNonCompliant DateTime in UTC when PartnerDevices will be marked as NonCompliant. This will become obselete soon.
  1840  	WhenPartnerDevicesWillBeMarkedAsNonCompliant *time.Time `json:"whenPartnerDevicesWillBeMarkedAsNonCompliant,omitempty"`
  1841  	// WhenPartnerDevicesWillBeRemovedDateTime DateTime in UTC when PartnerDevices will be removed
  1842  	WhenPartnerDevicesWillBeRemovedDateTime *time.Time `json:"whenPartnerDevicesWillBeRemovedDateTime,omitempty"`
  1843  	// WhenPartnerDevicesWillBeMarkedAsNonCompliantDateTime DateTime in UTC when PartnerDevices will be marked as NonCompliant
  1844  	WhenPartnerDevicesWillBeMarkedAsNonCompliantDateTime *time.Time `json:"whenPartnerDevicesWillBeMarkedAsNonCompliantDateTime,omitempty"`
  1845  	// GroupsRequiringPartnerEnrollment User groups that specifies whether enrollment is through partner.
  1846  	GroupsRequiringPartnerEnrollment []DeviceManagementPartnerAssignment `json:"groupsRequiringPartnerEnrollment,omitempty"`
  1847  }
  1848  
  1849  // DeviceManagementPartnerAssignment undocumented
  1850  type DeviceManagementPartnerAssignment struct {
  1851  	// Object is the base model of DeviceManagementPartnerAssignment
  1852  	Object
  1853  	// Target User groups targeting for devices to be enrolled through partner.
  1854  	Target *DeviceAndAppManagementAssignmentTarget `json:"target,omitempty"`
  1855  }
  1856  
  1857  // DeviceManagementReportSchedule Entity representing a schedule for which reports are delivered
  1858  type DeviceManagementReportSchedule struct {
  1859  	// Entity is the base model of DeviceManagementReportSchedule
  1860  	Entity
  1861  	// ReportScheduleName Name of the schedule
  1862  	ReportScheduleName *string `json:"reportScheduleName,omitempty"`
  1863  	// Subject Subject of the scheduled reports that are delivered
  1864  	Subject *string `json:"subject,omitempty"`
  1865  	// Emails Emails to which the scheduled reports are delivered
  1866  	Emails []string `json:"emails,omitempty"`
  1867  	// Recurrence Frequency of scheduled report delivery
  1868  	Recurrence *DeviceManagementScheduledReportRecurrence `json:"recurrence,omitempty"`
  1869  	// StartDateTime Time that the delivery of the scheduled reports starts
  1870  	StartDateTime *time.Time `json:"startDateTime,omitempty"`
  1871  	// EndDateTime Time that the delivery of the scheduled reports ends
  1872  	EndDateTime *time.Time `json:"endDateTime,omitempty"`
  1873  	// UserID The Id of the User who created the report
  1874  	UserID *string `json:"userId,omitempty"`
  1875  	// ReportName Name of the report
  1876  	ReportName *string `json:"reportName,omitempty"`
  1877  	// Filter Filters applied on the report
  1878  	Filter *string `json:"filter,omitempty"`
  1879  	// Select Columns selected from the report
  1880  	Select []string `json:"select,omitempty"`
  1881  	// OrderBy Ordering of columns in the report
  1882  	OrderBy []string `json:"orderBy,omitempty"`
  1883  	// Format Format of the scheduled report
  1884  	Format *DeviceManagementReportFileFormat `json:"format,omitempty"`
  1885  }
  1886  
  1887  // DeviceManagementReports Singleton entity that acts as a container for all reports functionality.
  1888  type DeviceManagementReports struct {
  1889  	// Entity is the base model of DeviceManagementReports
  1890  	Entity
  1891  	// CachedReportConfigurations undocumented
  1892  	CachedReportConfigurations []DeviceManagementCachedReportConfiguration `json:"cachedReportConfigurations,omitempty"`
  1893  	// ExportJobs undocumented
  1894  	ExportJobs []DeviceManagementExportJob `json:"exportJobs,omitempty"`
  1895  	// ReportSchedules undocumented
  1896  	ReportSchedules []DeviceManagementReportSchedule `json:"reportSchedules,omitempty"`
  1897  }
  1898  
  1899  // DeviceManagementScript Intune will provide customer the ability to run their Powershell scripts on the enrolled windows 10 Azure Active Directory joined devices. The script can be run once or periodically.
  1900  type DeviceManagementScript struct {
  1901  	// Entity is the base model of DeviceManagementScript
  1902  	Entity
  1903  	// DisplayName Name of the device management script.
  1904  	DisplayName *string `json:"displayName,omitempty"`
  1905  	// Description Optional description for the device management script.
  1906  	Description *string `json:"description,omitempty"`
  1907  	// ScriptContent The script content.
  1908  	ScriptContent *Binary `json:"scriptContent,omitempty"`
  1909  	// CreatedDateTime The date and time the device management script was created. This property is read-only.
  1910  	CreatedDateTime *time.Time `json:"createdDateTime,omitempty"`
  1911  	// LastModifiedDateTime The date and time the device management script was last modified. This property is read-only.
  1912  	LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"`
  1913  	// RunAsAccount Indicates the type of execution context.
  1914  	RunAsAccount *RunAsAccountType `json:"runAsAccount,omitempty"`
  1915  	// EnforceSignatureCheck Indicate whether the script signature needs be checked.
  1916  	EnforceSignatureCheck *bool `json:"enforceSignatureCheck,omitempty"`
  1917  	// FileName Script file name.
  1918  	FileName *string `json:"fileName,omitempty"`
  1919  	// RoleScopeTagIDs List of Scope Tag IDs for this PowerShellScript instance.
  1920  	RoleScopeTagIDs []string `json:"roleScopeTagIds,omitempty"`
  1921  	// RunAs32Bit A value indicating whether the PowerShell script should run as 32-bit
  1922  	RunAs32Bit *bool `json:"runAs32Bit,omitempty"`
  1923  	// GroupAssignments undocumented
  1924  	GroupAssignments []DeviceManagementScriptGroupAssignment `json:"groupAssignments,omitempty"`
  1925  	// Assignments undocumented
  1926  	Assignments []DeviceManagementScriptAssignment `json:"assignments,omitempty"`
  1927  	// RunSummary undocumented
  1928  	RunSummary *DeviceManagementScriptRunSummary `json:"runSummary,omitempty"`
  1929  	// DeviceRunStates undocumented
  1930  	DeviceRunStates []DeviceManagementScriptDeviceState `json:"deviceRunStates,omitempty"`
  1931  	// UserRunStates undocumented
  1932  	UserRunStates []DeviceManagementScriptUserState `json:"userRunStates,omitempty"`
  1933  }
  1934  
  1935  // DeviceManagementScriptAssignment Contains properties used to assign a device management script to a group.
  1936  type DeviceManagementScriptAssignment struct {
  1937  	// Entity is the base model of DeviceManagementScriptAssignment
  1938  	Entity
  1939  	// Target The Id of the Azure Active Directory group we are targeting the script to.
  1940  	Target *DeviceAndAppManagementAssignmentTarget `json:"target,omitempty"`
  1941  }
  1942  
  1943  // DeviceManagementScriptDeviceState Contains properties for device run state of the device management script.
  1944  type DeviceManagementScriptDeviceState struct {
  1945  	// Entity is the base model of DeviceManagementScriptDeviceState
  1946  	Entity
  1947  	// RunState State of latest run of the device management script.
  1948  	RunState *RunState `json:"runState,omitempty"`
  1949  	// ResultMessage Details of execution output.
  1950  	ResultMessage *string `json:"resultMessage,omitempty"`
  1951  	// LastStateUpdateDateTime Latest time the device management script executes.
  1952  	LastStateUpdateDateTime *time.Time `json:"lastStateUpdateDateTime,omitempty"`
  1953  	// ErrorCode Error code corresponding to erroneous execution of the device management script.
  1954  	ErrorCode *int `json:"errorCode,omitempty"`
  1955  	// ErrorDescription Error description corresponding to erroneous execution of the device management script.
  1956  	ErrorDescription *string `json:"errorDescription,omitempty"`
  1957  	// ManagedDevice undocumented
  1958  	ManagedDevice *ManagedDevice `json:"managedDevice,omitempty"`
  1959  }
  1960  
  1961  // DeviceManagementScriptGroupAssignment Contains properties used to assign a device management script to a group.
  1962  type DeviceManagementScriptGroupAssignment struct {
  1963  	// Entity is the base model of DeviceManagementScriptGroupAssignment
  1964  	Entity
  1965  	// TargetGroupID The Id of the Azure Active Directory group we are targeting the script to.
  1966  	TargetGroupID *string `json:"targetGroupId,omitempty"`
  1967  }
  1968  
  1969  // DeviceManagementScriptPolicySetItem A class containing the properties used for device management script PolicySetItem.
  1970  type DeviceManagementScriptPolicySetItem struct {
  1971  	// PolicySetItem is the base model of DeviceManagementScriptPolicySetItem
  1972  	PolicySetItem
  1973  }
  1974  
  1975  // DeviceManagementScriptRunSummary Contains properties for the run summary of a device management script.
  1976  type DeviceManagementScriptRunSummary struct {
  1977  	// Entity is the base model of DeviceManagementScriptRunSummary
  1978  	Entity
  1979  	// SuccessDeviceCount Success device count.
  1980  	SuccessDeviceCount *int `json:"successDeviceCount,omitempty"`
  1981  	// ErrorDeviceCount Error device count.
  1982  	ErrorDeviceCount *int `json:"errorDeviceCount,omitempty"`
  1983  	// SuccessUserCount Success user count.
  1984  	SuccessUserCount *int `json:"successUserCount,omitempty"`
  1985  	// ErrorUserCount Error user count.
  1986  	ErrorUserCount *int `json:"errorUserCount,omitempty"`
  1987  }
  1988  
  1989  // DeviceManagementScriptUserState Contains properties for user run state of the device management script.
  1990  type DeviceManagementScriptUserState struct {
  1991  	// Entity is the base model of DeviceManagementScriptUserState
  1992  	Entity
  1993  	// SuccessDeviceCount Success device count for specific user.
  1994  	SuccessDeviceCount *int `json:"successDeviceCount,omitempty"`
  1995  	// ErrorDeviceCount Error device count for specific user.
  1996  	ErrorDeviceCount *int `json:"errorDeviceCount,omitempty"`
  1997  	// UserPrincipalName User principle name of specific user.
  1998  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
  1999  	// DeviceRunStates undocumented
  2000  	DeviceRunStates []DeviceManagementScriptDeviceState `json:"deviceRunStates,omitempty"`
  2001  }
  2002  
  2003  // DeviceManagementSettingBooleanConstraint undocumented
  2004  type DeviceManagementSettingBooleanConstraint struct {
  2005  	// DeviceManagementConstraint is the base model of DeviceManagementSettingBooleanConstraint
  2006  	DeviceManagementConstraint
  2007  	// Value The boolean value to compare against
  2008  	Value *bool `json:"value,omitempty"`
  2009  }
  2010  
  2011  // DeviceManagementSettingCategory Entity representing a setting category
  2012  type DeviceManagementSettingCategory struct {
  2013  	// Entity is the base model of DeviceManagementSettingCategory
  2014  	Entity
  2015  	// DisplayName The category name
  2016  	DisplayName *string `json:"displayName,omitempty"`
  2017  	// SettingDefinitions undocumented
  2018  	SettingDefinitions []DeviceManagementSettingDefinition `json:"settingDefinitions,omitempty"`
  2019  }
  2020  
  2021  // DeviceManagementSettingComparison undocumented
  2022  type DeviceManagementSettingComparison struct {
  2023  	// Object is the base model of DeviceManagementSettingComparison
  2024  	Object
  2025  	// ID The setting ID
  2026  	ID *string `json:"id,omitempty"`
  2027  	// DisplayName The setting's display name
  2028  	DisplayName *string `json:"displayName,omitempty"`
  2029  	// DefinitionID The ID of the setting definition for this instance
  2030  	DefinitionID *string `json:"definitionId,omitempty"`
  2031  	// CurrentValueJSON JSON representation of current intent (or) template setting's value
  2032  	CurrentValueJSON *string `json:"currentValueJson,omitempty"`
  2033  	// NewValueJSON JSON representation of new template setting's value
  2034  	NewValueJSON *string `json:"newValueJson,omitempty"`
  2035  	// ComparisonResult Setting comparison result
  2036  	ComparisonResult *DeviceManagementComparisonResult `json:"comparisonResult,omitempty"`
  2037  }
  2038  
  2039  // DeviceManagementSettingDefinition Entity representing the defintion for a given setting
  2040  type DeviceManagementSettingDefinition struct {
  2041  	// Entity is the base model of DeviceManagementSettingDefinition
  2042  	Entity
  2043  	// ValueType The data type of the value
  2044  	ValueType *DeviceManangementIntentValueType `json:"valueType,omitempty"`
  2045  	// DisplayName The setting's display name
  2046  	DisplayName *string `json:"displayName,omitempty"`
  2047  	// IsTopLevel If the setting is top level, it can be configured without the need to be wrapped in a collection or complex setting
  2048  	IsTopLevel *bool `json:"isTopLevel,omitempty"`
  2049  	// Description The setting's description
  2050  	Description *string `json:"description,omitempty"`
  2051  	// DocumentationURL Url to setting documentation
  2052  	DocumentationURL *string `json:"documentationUrl,omitempty"`
  2053  	// Keywords Keywords associated with the setting
  2054  	Keywords []string `json:"keywords,omitempty"`
  2055  	// Constraints Collection of constraints for the setting value
  2056  	Constraints []DeviceManagementConstraint `json:"constraints,omitempty"`
  2057  	// Dependencies Collection of dependencies on other settings
  2058  	Dependencies []DeviceManagementSettingDependency `json:"dependencies,omitempty"`
  2059  }
  2060  
  2061  // DeviceManagementSettingDependency undocumented
  2062  type DeviceManagementSettingDependency struct {
  2063  	// Object is the base model of DeviceManagementSettingDependency
  2064  	Object
  2065  	// DefinitionID The setting definition ID of the setting depended on
  2066  	DefinitionID *string `json:"definitionId,omitempty"`
  2067  	// Constraints Collection of constraints for the dependency setting value
  2068  	Constraints []DeviceManagementConstraint `json:"constraints,omitempty"`
  2069  }
  2070  
  2071  // DeviceManagementSettingInstance Base type for a setting instance
  2072  type DeviceManagementSettingInstance struct {
  2073  	// Entity is the base model of DeviceManagementSettingInstance
  2074  	Entity
  2075  	// DefinitionID The ID of the setting definition for this instance
  2076  	DefinitionID *string `json:"definitionId,omitempty"`
  2077  	// ValueJSON JSON representation of the value
  2078  	ValueJSON *string `json:"valueJson,omitempty"`
  2079  }
  2080  
  2081  // DeviceManagementSettingIntegerConstraint undocumented
  2082  type DeviceManagementSettingIntegerConstraint struct {
  2083  	// DeviceManagementConstraint is the base model of DeviceManagementSettingIntegerConstraint
  2084  	DeviceManagementConstraint
  2085  	// MinimumValue The minimum permitted value
  2086  	MinimumValue *int `json:"minimumValue,omitempty"`
  2087  	// MaximumValue The maximum permitted value
  2088  	MaximumValue *int `json:"maximumValue,omitempty"`
  2089  }
  2090  
  2091  // DeviceManagementSettingRegexConstraint undocumented
  2092  type DeviceManagementSettingRegexConstraint struct {
  2093  	// DeviceManagementConstraint is the base model of DeviceManagementSettingRegexConstraint
  2094  	DeviceManagementConstraint
  2095  	// Regex The RegEx pattern to match against
  2096  	Regex *string `json:"regex,omitempty"`
  2097  }
  2098  
  2099  // DeviceManagementSettingStringLengthConstraint undocumented
  2100  type DeviceManagementSettingStringLengthConstraint struct {
  2101  	// DeviceManagementConstraint is the base model of DeviceManagementSettingStringLengthConstraint
  2102  	DeviceManagementConstraint
  2103  	// MinimumLength The minimum permitted string length
  2104  	MinimumLength *int `json:"minimumLength,omitempty"`
  2105  	// MaximumLength The maximum permitted string length
  2106  	MaximumLength *int `json:"maximumLength,omitempty"`
  2107  }
  2108  
  2109  // DeviceManagementSettingXMLConstraint undocumented
  2110  type DeviceManagementSettingXMLConstraint struct {
  2111  	// DeviceManagementConstraint is the base model of DeviceManagementSettingXMLConstraint
  2112  	DeviceManagementConstraint
  2113  }
  2114  
  2115  // DeviceManagementSettings undocumented
  2116  type DeviceManagementSettings struct {
  2117  	// Object is the base model of DeviceManagementSettings
  2118  	Object
  2119  	// DeviceComplianceCheckinThresholdDays The number of days a device is allowed to go without checking in to remain compliant.
  2120  	DeviceComplianceCheckinThresholdDays *int `json:"deviceComplianceCheckinThresholdDays,omitempty"`
  2121  	// IsScheduledActionEnabled Is feature enabled or not for scheduled action for rule.
  2122  	IsScheduledActionEnabled *bool `json:"isScheduledActionEnabled,omitempty"`
  2123  	// SecureByDefault Device should be noncompliant when there is no compliance policy targeted when this is true
  2124  	SecureByDefault *bool `json:"secureByDefault,omitempty"`
  2125  	// EnhancedJailBreak Is feature enabled or not for enhanced jailbreak detection.
  2126  	EnhancedJailBreak *bool `json:"enhancedJailBreak,omitempty"`
  2127  	// DeviceInactivityBeforeRetirementInDay When the device does not check in for specified number of days, the company data might be removed and the device will not be under management. Valid values 30 to 270
  2128  	DeviceInactivityBeforeRetirementInDay *int `json:"deviceInactivityBeforeRetirementInDay,omitempty"`
  2129  	// DerivedCredentialProvider The Derived Credential Provider to use for this account.
  2130  	DerivedCredentialProvider *DerivedCredentialProviderType `json:"derivedCredentialProvider,omitempty"`
  2131  	// DerivedCredentialURL The Derived Credential Provider self-service URI.
  2132  	DerivedCredentialURL *string `json:"derivedCredentialUrl,omitempty"`
  2133  	// AndroidDeviceAdministratorEnrollmentEnabled The property to determine if Android device administrator enrollment is enabled for this account.
  2134  	AndroidDeviceAdministratorEnrollmentEnabled *bool `json:"androidDeviceAdministratorEnrollmentEnabled,omitempty"`
  2135  }
  2136  
  2137  // DeviceManagementStringSettingInstance A setting instance representing a string value
  2138  type DeviceManagementStringSettingInstance struct {
  2139  	// DeviceManagementSettingInstance is the base model of DeviceManagementStringSettingInstance
  2140  	DeviceManagementSettingInstance
  2141  	// Value The string value
  2142  	Value *string `json:"value,omitempty"`
  2143  }
  2144  
  2145  // DeviceManagementTemplate Entity that represents a defined collection of device settings
  2146  type DeviceManagementTemplate struct {
  2147  	// Entity is the base model of DeviceManagementTemplate
  2148  	Entity
  2149  	// DisplayName The template's display name
  2150  	DisplayName *string `json:"displayName,omitempty"`
  2151  	// Description The template's description
  2152  	Description *string `json:"description,omitempty"`
  2153  	// VersionInfo The template's version information
  2154  	VersionInfo *string `json:"versionInfo,omitempty"`
  2155  	// IsDeprecated The template is deprecated or not. Intents cannot be created from a deprecated template.
  2156  	IsDeprecated *bool `json:"isDeprecated,omitempty"`
  2157  	// IntentCount Number of Intents created from this template.
  2158  	IntentCount *int `json:"intentCount,omitempty"`
  2159  	// TemplateType The template's type.
  2160  	TemplateType *DeviceManagementTemplateType `json:"templateType,omitempty"`
  2161  	// PlatformType The template's platform.
  2162  	PlatformType *PolicyPlatformType `json:"platformType,omitempty"`
  2163  	// PublishedDateTime When the template was published
  2164  	PublishedDateTime *time.Time `json:"publishedDateTime,omitempty"`
  2165  	// Settings undocumented
  2166  	Settings []DeviceManagementSettingInstance `json:"settings,omitempty"`
  2167  	// Categories undocumented
  2168  	Categories []DeviceManagementTemplateSettingCategory `json:"categories,omitempty"`
  2169  	// MigratableTo undocumented
  2170  	MigratableTo []DeviceManagementTemplate `json:"migratableTo,omitempty"`
  2171  }
  2172  
  2173  // DeviceManagementTemplateSettingCategory Entity representing a template setting category
  2174  type DeviceManagementTemplateSettingCategory struct {
  2175  	// DeviceManagementSettingCategory is the base model of DeviceManagementTemplateSettingCategory
  2176  	DeviceManagementSettingCategory
  2177  	// RecommendedSettings undocumented
  2178  	RecommendedSettings []DeviceManagementSettingInstance `json:"recommendedSettings,omitempty"`
  2179  }
  2180  
  2181  // DeviceManagementTroubleshootingErrorDetails undocumented
  2182  type DeviceManagementTroubleshootingErrorDetails struct {
  2183  	// Object is the base model of DeviceManagementTroubleshootingErrorDetails
  2184  	Object
  2185  	// Context undocumented
  2186  	Context *string `json:"context,omitempty"`
  2187  	// Failure undocumented
  2188  	Failure *string `json:"failure,omitempty"`
  2189  	// FailureDetails The detailed description of what went wrong.
  2190  	FailureDetails *string `json:"failureDetails,omitempty"`
  2191  	// Remediation The detailed description of how to remediate this issue.
  2192  	Remediation *string `json:"remediation,omitempty"`
  2193  	// Resources Links to helpful documentation about this failure.
  2194  	Resources []DeviceManagementTroubleshootingErrorResource `json:"resources,omitempty"`
  2195  }
  2196  
  2197  // DeviceManagementTroubleshootingErrorResource undocumented
  2198  type DeviceManagementTroubleshootingErrorResource struct {
  2199  	// Object is the base model of DeviceManagementTroubleshootingErrorResource
  2200  	Object
  2201  	// Text undocumented
  2202  	Text *string `json:"text,omitempty"`
  2203  	// Link The link to the web resource. Can contain any of the following formatters: {{UPN}}, {{DeviceGUID}}, {{UserGUID}}
  2204  	Link *string `json:"link,omitempty"`
  2205  }
  2206  
  2207  // DeviceManagementTroubleshootingEvent Event representing an general failure.
  2208  type DeviceManagementTroubleshootingEvent struct {
  2209  	// Entity is the base model of DeviceManagementTroubleshootingEvent
  2210  	Entity
  2211  	// EventDateTime Time when the event occurred .
  2212  	EventDateTime *time.Time `json:"eventDateTime,omitempty"`
  2213  	// CorrelationID Id used for tracing the failure in the service.
  2214  	CorrelationID *string `json:"correlationId,omitempty"`
  2215  	// TroubleshootingErrorDetails Object containing detailed information about the error and its remediation.
  2216  	TroubleshootingErrorDetails *DeviceManagementTroubleshootingErrorDetails `json:"troubleshootingErrorDetails,omitempty"`
  2217  	// EventName Event Name corresponding to the Troubleshooting Event. It is an Optional field
  2218  	EventName *string `json:"eventName,omitempty"`
  2219  	// AdditionalInformation A set of string key and string value pairs which provides additional information on the Troubleshooting event
  2220  	AdditionalInformation []KeyValuePair `json:"additionalInformation,omitempty"`
  2221  }
  2222  
  2223  // DeviceManagementUserRightsLocalUserOrGroup undocumented
  2224  type DeviceManagementUserRightsLocalUserOrGroup struct {
  2225  	// Object is the base model of DeviceManagementUserRightsLocalUserOrGroup
  2226  	Object
  2227  	// Name The name of this local user or group.
  2228  	Name *string `json:"name,omitempty"`
  2229  	// Description Admin’s description of this local user or group.
  2230  	Description *string `json:"description,omitempty"`
  2231  	// SecurityIdentifier The security identifier of this local user or group (e.g. *S-1-5-32-544).
  2232  	SecurityIdentifier *string `json:"securityIdentifier,omitempty"`
  2233  }
  2234  
  2235  // DeviceManagementUserRightsSetting undocumented
  2236  type DeviceManagementUserRightsSetting struct {
  2237  	// Object is the base model of DeviceManagementUserRightsSetting
  2238  	Object
  2239  	// State Representing the current state of this user rights setting
  2240  	State *StateManagementSetting `json:"state,omitempty"`
  2241  	// LocalUsersOrGroups Representing a collection of local users or groups which will be set on device if the state of this setting is Allowed. This collection can contain a maximum of 500 elements.
  2242  	LocalUsersOrGroups []DeviceManagementUserRightsLocalUserOrGroup `json:"localUsersOrGroups,omitempty"`
  2243  }
  2244  
  2245  // DeviceOperatingSystemSummary undocumented
  2246  type DeviceOperatingSystemSummary struct {
  2247  	// Object is the base model of DeviceOperatingSystemSummary
  2248  	Object
  2249  	// AndroidCount Number of android device count.
  2250  	AndroidCount *int `json:"androidCount,omitempty"`
  2251  	// IOSCount Number of iOS device count.
  2252  	IOSCount *int `json:"iosCount,omitempty"`
  2253  	// MacOSCount Number of Mac OS X device count.
  2254  	MacOSCount *int `json:"macOSCount,omitempty"`
  2255  	// WindowsMobileCount Number of Windows mobile device count.
  2256  	WindowsMobileCount *int `json:"windowsMobileCount,omitempty"`
  2257  	// WindowsCount Number of Windows device count.
  2258  	WindowsCount *int `json:"windowsCount,omitempty"`
  2259  	// UnknownCount Number of unknown device count.
  2260  	UnknownCount *int `json:"unknownCount,omitempty"`
  2261  	// AndroidDedicatedCount Number of dedicated Android devices.
  2262  	AndroidDedicatedCount *int `json:"androidDedicatedCount,omitempty"`
  2263  	// AndroidDeviceAdminCount Number of device admin Android devices.
  2264  	AndroidDeviceAdminCount *int `json:"androidDeviceAdminCount,omitempty"`
  2265  	// AndroidFullyManagedCount Number of fully managed Android devices.
  2266  	AndroidFullyManagedCount *int `json:"androidFullyManagedCount,omitempty"`
  2267  	// AndroidWorkProfileCount Number of work profile Android devices.
  2268  	AndroidWorkProfileCount *int `json:"androidWorkProfileCount,omitempty"`
  2269  }
  2270  
  2271  // DeviceProtectionOverview undocumented
  2272  type DeviceProtectionOverview struct {
  2273  	// Object is the base model of DeviceProtectionOverview
  2274  	Object
  2275  	// TotalReportedDeviceCount Total device count.
  2276  	TotalReportedDeviceCount *int `json:"totalReportedDeviceCount,omitempty"`
  2277  	// InactiveThreatAgentDeviceCount Device with inactive threat agent count
  2278  	InactiveThreatAgentDeviceCount *int `json:"inactiveThreatAgentDeviceCount,omitempty"`
  2279  	// UnknownStateThreatAgentDeviceCount Device with threat agent state as unknown count.
  2280  	UnknownStateThreatAgentDeviceCount *int `json:"unknownStateThreatAgentDeviceCount,omitempty"`
  2281  	// PendingSignatureUpdateDeviceCount Device with old signature count.
  2282  	PendingSignatureUpdateDeviceCount *int `json:"pendingSignatureUpdateDeviceCount,omitempty"`
  2283  	// CleanDeviceCount Clean device count.
  2284  	CleanDeviceCount *int `json:"cleanDeviceCount,omitempty"`
  2285  	// PendingFullScanDeviceCount Pending full scan device count.
  2286  	PendingFullScanDeviceCount *int `json:"pendingFullScanDeviceCount,omitempty"`
  2287  	// PendingRestartDeviceCount Pending restart device count.
  2288  	PendingRestartDeviceCount *int `json:"pendingRestartDeviceCount,omitempty"`
  2289  	// PendingManualStepsDeviceCount Pending manual steps device count.
  2290  	PendingManualStepsDeviceCount *int `json:"pendingManualStepsDeviceCount,omitempty"`
  2291  	// PendingOfflineScanDeviceCount Pending offline scan device count.
  2292  	PendingOfflineScanDeviceCount *int `json:"pendingOfflineScanDeviceCount,omitempty"`
  2293  	// CriticalFailuresDeviceCount Critical failures device count.
  2294  	CriticalFailuresDeviceCount *int `json:"criticalFailuresDeviceCount,omitempty"`
  2295  }
  2296  
  2297  // DeviceRestrictionAction undocumented
  2298  type DeviceRestrictionAction struct {
  2299  	// DlpActionInfo is the base model of DeviceRestrictionAction
  2300  	DlpActionInfo
  2301  	// RestrictionAction undocumented
  2302  	RestrictionAction *RestrictionAction `json:"restrictionAction,omitempty"`
  2303  	// Triggers undocumented
  2304  	Triggers []RestrictionTrigger `json:"triggers,omitempty"`
  2305  	// Message undocumented
  2306  	Message *string `json:"message,omitempty"`
  2307  }
  2308  
  2309  // DeviceSetupConfiguration This is the base class for Setup Configuration. Setup configurations are platform specific and individual per-platform setup configurations inherit from here.
  2310  type DeviceSetupConfiguration struct {
  2311  	// Entity is the base model of DeviceSetupConfiguration
  2312  	Entity
  2313  	// CreatedDateTime DateTime the object was created.
  2314  	CreatedDateTime *time.Time `json:"createdDateTime,omitempty"`
  2315  	// Description Admin provided description of the Device Configuration.
  2316  	Description *string `json:"description,omitempty"`
  2317  	// LastModifiedDateTime DateTime the object was last modified.
  2318  	LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"`
  2319  	// DisplayName Admin provided name of the device configuration.
  2320  	DisplayName *string `json:"displayName,omitempty"`
  2321  	// Version Version of the device configuration.
  2322  	Version *int `json:"version,omitempty"`
  2323  }