1// Code generated by msgraph.go/gen DO NOT EDIT.
2
3package msgraph
4
5import "time"
6
7// Device undocumented
8type 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
74type 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
88type 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
98type DeviceAndAppManagementAssignmentTarget struct {
99	// Object is the base model of DeviceAndAppManagementAssignmentTarget
100	Object
101}
102
103// DeviceAndAppManagementData undocumented
104type 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.
112type 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.
122type 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.
128type 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.
194type 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.
220type 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
232type 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
246type 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
270type 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.
292type 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.
324type 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
336type 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.
360type 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.
372type DeviceCompliancePolicyPolicySetItem struct {
373	// PolicySetItem is the base model of DeviceCompliancePolicyPolicySetItem
374	PolicySetItem
375}
376
377// DeviceCompliancePolicySettingState undocumented
378type 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.
408type 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.
436type 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
458type 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.
468type 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
498type 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
520type 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.
536type 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.
576type 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.
588type 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
600type 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
624type 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
644type 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.
666type 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.
678type DeviceConfigurationPolicySetItem struct {
679	// PolicySetItem is the base model of DeviceConfigurationPolicySetItem
680	PolicySetItem
681}
682
683// DeviceConfigurationSettingState undocumented
684type 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.
714type 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
736type 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
754type 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
776type 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
796type 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
812type 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
834type 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
854type 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
862type 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
876type 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.
896type 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
928type 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
944type 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
968type 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.
1038type 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.
1074type 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.
1086type 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.
1114type 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.
1138type 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
1160type 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.
1172type 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
1374type 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
1382type 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
1392type 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
1404type 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
1416type 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.
1430type 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
1480type 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
1488type 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
1508type 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
1516type 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
1524type 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
1532type 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
1540type 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
1546type 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
1560type 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
1574type 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
1582type 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
1592type 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.
1602type 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
1626type 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.
1636type 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
1652type 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
1676type 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
1684type 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
1718type 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
1726type 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
1746type 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
1764type 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
1782type 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
1790type 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
1806type 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.
1822type 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
1850type 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
1858type 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.
1888type 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.
1900type 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.
1936type 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.
1944type 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.
1962type 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.
1970type 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.
1976type 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.
1990type 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
2004type 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
2012type 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
2022type 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
2040type 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
2062type 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
2072type 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
2082type 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
2092type 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
2100type 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
2110type DeviceManagementSettingXMLConstraint struct {
2111	// DeviceManagementConstraint is the base model of DeviceManagementSettingXMLConstraint
2112	DeviceManagementConstraint
2113}
2114
2115// DeviceManagementSettings undocumented
2116type 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
2138type 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
2146type 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
2174type 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
2182type 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
2198type 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.
2208type 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
2224type 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
2236type 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
2246type 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
2272type 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
2298type 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.
2310type 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}
2324