diff options
Diffstat (limited to 'vendor/github.com/yaegashi/msgraph.go/beta/ModelDevice.go')
-rw-r--r-- | vendor/github.com/yaegashi/msgraph.go/beta/ModelDevice.go | 2323 |
1 files changed, 2323 insertions, 0 deletions
diff --git a/vendor/github.com/yaegashi/msgraph.go/beta/ModelDevice.go b/vendor/github.com/yaegashi/msgraph.go/beta/ModelDevice.go new file mode 100644 index 00000000..7c892460 --- /dev/null +++ b/vendor/github.com/yaegashi/msgraph.go/beta/ModelDevice.go @@ -0,0 +1,2323 @@ +// Code generated by msgraph-generate.go DO NOT EDIT. + +package msgraph + +import "time" + +// Device undocumented +type Device struct { + // DirectoryObject is the base model of Device + DirectoryObject + // AccountEnabled undocumented + AccountEnabled *bool `json:"accountEnabled,omitempty"` + // AlternativeSecurityIDs undocumented + AlternativeSecurityIDs []AlternativeSecurityID `json:"alternativeSecurityIds,omitempty"` + // ApproximateLastSignInDateTime undocumented + ApproximateLastSignInDateTime *time.Time `json:"approximateLastSignInDateTime,omitempty"` + // ComplianceExpirationDateTime undocumented + ComplianceExpirationDateTime *time.Time `json:"complianceExpirationDateTime,omitempty"` + // DeviceID undocumented + DeviceID *string `json:"deviceId,omitempty"` + // DeviceMetadata undocumented + DeviceMetadata *string `json:"deviceMetadata,omitempty"` + // DeviceVersion undocumented + DeviceVersion *int `json:"deviceVersion,omitempty"` + // DisplayName undocumented + DisplayName *string `json:"displayName,omitempty"` + // IsCompliant undocumented + IsCompliant *bool `json:"isCompliant,omitempty"` + // IsManaged undocumented + IsManaged *bool `json:"isManaged,omitempty"` + // OnPremisesLastSyncDateTime undocumented + OnPremisesLastSyncDateTime *time.Time `json:"onPremisesLastSyncDateTime,omitempty"` + // OnPremisesSyncEnabled undocumented + OnPremisesSyncEnabled *bool `json:"onPremisesSyncEnabled,omitempty"` + // OperatingSystem undocumented + OperatingSystem *string `json:"operatingSystem,omitempty"` + // OperatingSystemVersion undocumented + OperatingSystemVersion *string `json:"operatingSystemVersion,omitempty"` + // PhysicalIDs undocumented + PhysicalIDs []string `json:"physicalIds,omitempty"` + // ProfileType undocumented + ProfileType *string `json:"profileType,omitempty"` + // SystemLabels undocumented + SystemLabels []string `json:"systemLabels,omitempty"` + // TrustType undocumented + TrustType *string `json:"trustType,omitempty"` + // Name undocumented + Name *string `json:"Name,omitempty"` + // Manufacturer undocumented + Manufacturer *string `json:"Manufacturer,omitempty"` + // Model undocumented + Model *string `json:"Model,omitempty"` + // Kind undocumented + Kind *string `json:"Kind,omitempty"` + // Status undocumented + Status *string `json:"Status,omitempty"` + // Platform undocumented + Platform *string `json:"Platform,omitempty"` + // MemberOf undocumented + MemberOf []DirectoryObject `json:"memberOf,omitempty"` + // RegisteredOwners undocumented + RegisteredOwners []DirectoryObject `json:"registeredOwners,omitempty"` + // RegisteredUsers undocumented + RegisteredUsers []DirectoryObject `json:"registeredUsers,omitempty"` + // TransitiveMemberOf undocumented + TransitiveMemberOf []DirectoryObject `json:"transitiveMemberOf,omitempty"` + // Extensions undocumented + Extensions []Extension `json:"extensions,omitempty"` + // Commands undocumented + Commands []Command `json:"commands,omitempty"` +} + +// DeviceActionResult undocumented +type DeviceActionResult struct { + // Object is the base model of DeviceActionResult + Object + // ActionName Action name + ActionName *string `json:"actionName,omitempty"` + // ActionState State of the action + ActionState *ActionState `json:"actionState,omitempty"` + // StartDateTime Time the action was initiated + StartDateTime *time.Time `json:"startDateTime,omitempty"` + // LastUpdatedDateTime Time the action state was last updated + LastUpdatedDateTime *time.Time `json:"lastUpdatedDateTime,omitempty"` +} + +// DeviceAndAppManagementAssignedRoleDetails undocumented +type DeviceAndAppManagementAssignedRoleDetails struct { + // Object is the base model of DeviceAndAppManagementAssignedRoleDetails + Object + // RoleDefinitionIDs Role Definition IDs for the specifc Role Definitions assigned to a user. + RoleDefinitionIDs []string `json:"roleDefinitionIds,omitempty"` + // RoleAssignmentIDs Role Assignment IDs for the specifc Role Assignments assigned to a user. + RoleAssignmentIDs []string `json:"roleAssignmentIds,omitempty"` +} + +// DeviceAndAppManagementAssignmentTarget undocumented +type DeviceAndAppManagementAssignmentTarget struct { + // Object is the base model of DeviceAndAppManagementAssignmentTarget + Object +} + +// DeviceAndAppManagementData undocumented +type DeviceAndAppManagementData struct { + // Object is the base model of DeviceAndAppManagementData + Object + // Content undocumented + Content *Stream `json:"content,omitempty"` +} + +// 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. +type DeviceAndAppManagementRoleAssignment struct { + // RoleAssignment is the base model of DeviceAndAppManagementRoleAssignment + RoleAssignment + // Members The list of ids of role member security groups. These are IDs from Azure Active Directory. + Members []string `json:"members,omitempty"` + // RoleScopeTags undocumented + RoleScopeTags []RoleScopeTag `json:"roleScopeTags,omitempty"` +} + +// 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. +type DeviceAndAppManagementRoleDefinition struct { + // RoleDefinition is the base model of DeviceAndAppManagementRoleDefinition + RoleDefinition +} + +// DeviceAppManagement Singleton entity that acts as a container for all device and app management functionality. +type DeviceAppManagement struct { + // Entity is the base model of DeviceAppManagement + Entity + // MicrosoftStoreForBusinessLastSuccessfulSyncDateTime The last time the apps from the Microsoft Store for Business were synced successfully for the account. + MicrosoftStoreForBusinessLastSuccessfulSyncDateTime *time.Time `json:"microsoftStoreForBusinessLastSuccessfulSyncDateTime,omitempty"` + // IsEnabledForMicrosoftStoreForBusiness Whether the account is enabled for syncing applications from the Microsoft Store for Business. + IsEnabledForMicrosoftStoreForBusiness *bool `json:"isEnabledForMicrosoftStoreForBusiness,omitempty"` + // 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. + MicrosoftStoreForBusinessLanguage *string `json:"microsoftStoreForBusinessLanguage,omitempty"` + // MicrosoftStoreForBusinessLastCompletedApplicationSyncTime The last time an application sync from the Microsoft Store for Business was completed. + MicrosoftStoreForBusinessLastCompletedApplicationSyncTime *time.Time `json:"microsoftStoreForBusinessLastCompletedApplicationSyncTime,omitempty"` + // 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'] + MicrosoftStoreForBusinessPortalSelection *MicrosoftStoreForBusinessPortalSelectionOptions `json:"microsoftStoreForBusinessPortalSelection,omitempty"` + // ManagedEBooks undocumented + ManagedEBooks []ManagedEBook `json:"managedEBooks,omitempty"` + // MobileApps undocumented + MobileApps []MobileApp `json:"mobileApps,omitempty"` + // MobileAppCategories undocumented + MobileAppCategories []MobileAppCategory `json:"mobileAppCategories,omitempty"` + // EnterpriseCodeSigningCertificates undocumented + EnterpriseCodeSigningCertificates []EnterpriseCodeSigningCertificate `json:"enterpriseCodeSigningCertificates,omitempty"` + // IOSLobAppProvisioningConfigurations undocumented + IOSLobAppProvisioningConfigurations []IOSLobAppProvisioningConfiguration `json:"iosLobAppProvisioningConfigurations,omitempty"` + // SymantecCodeSigningCertificate undocumented + SymantecCodeSigningCertificate *SymantecCodeSigningCertificate `json:"symantecCodeSigningCertificate,omitempty"` + // MobileAppConfigurations undocumented + MobileAppConfigurations []ManagedDeviceMobileAppConfiguration `json:"mobileAppConfigurations,omitempty"` + // ManagedEBookCategories undocumented + ManagedEBookCategories []ManagedEBookCategory `json:"managedEBookCategories,omitempty"` + // PolicySets undocumented + PolicySets []PolicySet `json:"policySets,omitempty"` + // SideLoadingKeys undocumented + SideLoadingKeys []SideLoadingKey `json:"sideLoadingKeys,omitempty"` + // VPPTokens undocumented + VPPTokens []VPPToken `json:"vppTokens,omitempty"` + // WindowsManagementApp undocumented + WindowsManagementApp *WindowsManagementApp `json:"windowsManagementApp,omitempty"` + // ManagedAppPolicies undocumented + ManagedAppPolicies []ManagedAppPolicy `json:"managedAppPolicies,omitempty"` + // IOSManagedAppProtections undocumented + IOSManagedAppProtections []IOSManagedAppProtection `json:"iosManagedAppProtections,omitempty"` + // AndroidManagedAppProtections undocumented + AndroidManagedAppProtections []AndroidManagedAppProtection `json:"androidManagedAppProtections,omitempty"` + // DefaultManagedAppProtections undocumented + DefaultManagedAppProtections []DefaultManagedAppProtection `json:"defaultManagedAppProtections,omitempty"` + // TargetedManagedAppConfigurations undocumented + TargetedManagedAppConfigurations []TargetedManagedAppConfiguration `json:"targetedManagedAppConfigurations,omitempty"` + // MDMWindowsInformationProtectionPolicies undocumented + MDMWindowsInformationProtectionPolicies []MDMWindowsInformationProtectionPolicy `json:"mdmWindowsInformationProtectionPolicies,omitempty"` + // WindowsInformationProtectionPolicies undocumented + WindowsInformationProtectionPolicies []WindowsInformationProtectionPolicy `json:"windowsInformationProtectionPolicies,omitempty"` + // ManagedAppRegistrations undocumented + ManagedAppRegistrations []ManagedAppRegistration `json:"managedAppRegistrations,omitempty"` + // ManagedAppStatuses undocumented + ManagedAppStatuses []ManagedAppStatus `json:"managedAppStatuses,omitempty"` + // WindowsInformationProtectionDeviceRegistrations undocumented + WindowsInformationProtectionDeviceRegistrations []WindowsInformationProtectionDeviceRegistration `json:"windowsInformationProtectionDeviceRegistrations,omitempty"` + // WindowsInformationProtectionWipeActions undocumented + WindowsInformationProtectionWipeActions []WindowsInformationProtectionWipeAction `json:"windowsInformationProtectionWipeActions,omitempty"` + // DeviceAppManagementTasks undocumented + DeviceAppManagementTasks []DeviceAppManagementTask `json:"deviceAppManagementTasks,omitempty"` + // WdacSupplementalPolicies undocumented + WdacSupplementalPolicies []WindowsDefenderApplicationControlSupplementalPolicy `json:"wdacSupplementalPolicies,omitempty"` +} + +// DeviceAppManagementTask A device app management task. +type DeviceAppManagementTask struct { + // Entity is the base model of DeviceAppManagementTask + Entity + // DisplayName The name. + DisplayName *string `json:"displayName,omitempty"` + // Description The description. + Description *string `json:"description,omitempty"` + // CreatedDateTime The created date. + CreatedDateTime *time.Time `json:"createdDateTime,omitempty"` + // DueDateTime The due date. + DueDateTime *time.Time `json:"dueDateTime,omitempty"` + // Category The category. + Category *DeviceAppManagementTaskCategory `json:"category,omitempty"` + // Priority The priority. + Priority *DeviceAppManagementTaskPriority `json:"priority,omitempty"` + // Creator The email address of the creator. + Creator *string `json:"creator,omitempty"` + // CreatorNotes Notes from the creator. + CreatorNotes *string `json:"creatorNotes,omitempty"` + // AssignedTo The name or email of the admin this task is assigned to. + AssignedTo *string `json:"assignedTo,omitempty"` + // Status The status. + Status *DeviceAppManagementTaskStatus `json:"status,omitempty"` +} + +// 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. +type DeviceCategory struct { + // Entity is the base model of DeviceCategory + Entity + // DisplayName Display name for the device category. + DisplayName *string `json:"displayName,omitempty"` + // Description Optional description for the device category. + Description *string `json:"description,omitempty"` + // RoleScopeTagIDs Optional role scope tags for the device category. + RoleScopeTagIDs []string `json:"roleScopeTagIds,omitempty"` +} + +// DeviceComplianceActionItem Scheduled Action Configuration +type DeviceComplianceActionItem struct { + // Entity is the base model of DeviceComplianceActionItem + Entity + // GracePeriodHours Number of hours to wait till the action will be enforced. Valid values 0 to 8760 + GracePeriodHours *int `json:"gracePeriodHours,omitempty"` + // ActionType What action to take + ActionType *DeviceComplianceActionType `json:"actionType,omitempty"` + // NotificationTemplateID What notification Message template to use + NotificationTemplateID *string `json:"notificationTemplateId,omitempty"` + // NotificationMessageCCList A list of group IDs to speicify who to CC this notification message to. + NotificationMessageCCList []string `json:"notificationMessageCCList,omitempty"` +} + +// DeviceComplianceDeviceOverview undocumented +type DeviceComplianceDeviceOverview struct { + // Entity is the base model of DeviceComplianceDeviceOverview + Entity + // PendingCount Number of pending devices + PendingCount *int `json:"pendingCount,omitempty"` + // NotApplicableCount Number of not applicable devices + NotApplicableCount *int `json:"notApplicableCount,omitempty"` + // NotApplicablePlatformCount Number of not applicable devices due to mismatch platform and policy + NotApplicablePlatformCount *int `json:"notApplicablePlatformCount,omitempty"` + // SuccessCount Number of succeeded devices + SuccessCount *int `json:"successCount,omitempty"` + // ErrorCount Number of error devices + ErrorCount *int `json:"errorCount,omitempty"` + // FailedCount Number of failed devices + FailedCount *int `json:"failedCount,omitempty"` + // ConflictCount Number of devices in conflict + ConflictCount *int `json:"conflictCount,omitempty"` + // LastUpdateDateTime Last update time + LastUpdateDateTime *time.Time `json:"lastUpdateDateTime,omitempty"` + // ConfigurationVersion Version of the policy for that overview + ConfigurationVersion *int `json:"configurationVersion,omitempty"` +} + +// DeviceComplianceDeviceStatus undocumented +type DeviceComplianceDeviceStatus struct { + // Entity is the base model of DeviceComplianceDeviceStatus + Entity + // DeviceDisplayName Device name of the DevicePolicyStatus. + DeviceDisplayName *string `json:"deviceDisplayName,omitempty"` + // UserName The User Name that is being reported + UserName *string `json:"userName,omitempty"` + // DeviceModel The device model that is being reported + DeviceModel *string `json:"deviceModel,omitempty"` + // Platform Platform of the device that is being reported + Platform *int `json:"platform,omitempty"` + // ComplianceGracePeriodExpirationDateTime The DateTime when device compliance grace period expires + ComplianceGracePeriodExpirationDateTime *time.Time `json:"complianceGracePeriodExpirationDateTime,omitempty"` + // Status Compliance status of the policy report. + Status *ComplianceStatus `json:"status,omitempty"` + // LastReportedDateTime Last modified date time of the policy report. + LastReportedDateTime *time.Time `json:"lastReportedDateTime,omitempty"` + // UserPrincipalName UserPrincipalName. + UserPrincipalName *string `json:"userPrincipalName,omitempty"` +} + +// DeviceCompliancePolicy This is the base class for Compliance policy. Compliance policies are platform specific and individual per-platform compliance policies inherit from here. +type DeviceCompliancePolicy struct { + // Entity is the base model of DeviceCompliancePolicy + Entity + // RoleScopeTagIDs List of Scope Tags for this Entity instance. + RoleScopeTagIDs []string `json:"roleScopeTagIds,omitempty"` + // CreatedDateTime DateTime the object was created. + CreatedDateTime *time.Time `json:"createdDateTime,omitempty"` + // Description Admin provided description of the Device Configuration. + Description *string `json:"description,omitempty"` + // LastModifiedDateTime DateTime the object was last modified. + LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"` + // DisplayName Admin provided name of the device configuration. + DisplayName *string `json:"displayName,omitempty"` + // Version Version of the device configuration. + Version *int `json:"version,omitempty"` + // ScheduledActionsForRule undocumented + ScheduledActionsForRule []DeviceComplianceScheduledActionForRule `json:"scheduledActionsForRule,omitempty"` + // DeviceStatuses undocumented + DeviceStatuses []DeviceComplianceDeviceStatus `json:"deviceStatuses,omitempty"` + // UserStatuses undocumented + UserStatuses []DeviceComplianceUserStatus `json:"userStatuses,omitempty"` + // DeviceStatusOverview undocumented + DeviceStatusOverview *DeviceComplianceDeviceOverview `json:"deviceStatusOverview,omitempty"` + // UserStatusOverview undocumented + UserStatusOverview *DeviceComplianceUserOverview `json:"userStatusOverview,omitempty"` + // DeviceSettingStateSummaries undocumented + DeviceSettingStateSummaries []SettingStateDeviceSummary `json:"deviceSettingStateSummaries,omitempty"` + // Assignments undocumented + Assignments []DeviceCompliancePolicyAssignment `json:"assignments,omitempty"` +} + +// DeviceCompliancePolicyAssignment Device compliance policy assignment. +type DeviceCompliancePolicyAssignment struct { + // Entity is the base model of DeviceCompliancePolicyAssignment + Entity + // Target Target for the compliance policy assignment. + Target *DeviceAndAppManagementAssignmentTarget `json:"target,omitempty"` + // Source The assignment source for the device compliance policy, direct or parcel/policySet. + Source *DeviceAndAppManagementAssignmentSource `json:"source,omitempty"` + // SourceID The identifier of the source of the assignment. + SourceID *string `json:"sourceId,omitempty"` +} + +// DeviceCompliancePolicyDeviceStateSummary undocumented +type DeviceCompliancePolicyDeviceStateSummary struct { + // Entity is the base model of DeviceCompliancePolicyDeviceStateSummary + Entity + // InGracePeriodCount Number of devices that are in grace period + InGracePeriodCount *int `json:"inGracePeriodCount,omitempty"` + // ConfigManagerCount Number of devices that have compliance managed by System Center Configuration Manager + ConfigManagerCount *int `json:"configManagerCount,omitempty"` + // UnknownDeviceCount Number of unknown devices + UnknownDeviceCount *int `json:"unknownDeviceCount,omitempty"` + // NotApplicableDeviceCount Number of not applicable devices + NotApplicableDeviceCount *int `json:"notApplicableDeviceCount,omitempty"` + // CompliantDeviceCount Number of compliant devices + CompliantDeviceCount *int `json:"compliantDeviceCount,omitempty"` + // RemediatedDeviceCount Number of remediated devices + RemediatedDeviceCount *int `json:"remediatedDeviceCount,omitempty"` + // NonCompliantDeviceCount Number of NonCompliant devices + NonCompliantDeviceCount *int `json:"nonCompliantDeviceCount,omitempty"` + // ErrorDeviceCount Number of error devices + ErrorDeviceCount *int `json:"errorDeviceCount,omitempty"` + // ConflictDeviceCount Number of conflict devices + ConflictDeviceCount *int `json:"conflictDeviceCount,omitempty"` +} + +// DeviceCompliancePolicyGroupAssignment Device compliance policy group assignment. +type DeviceCompliancePolicyGroupAssignment struct { + // Entity is the base model of DeviceCompliancePolicyGroupAssignment + Entity + // TargetGroupID The Id of the AAD group we are targeting the device compliance policy to. + TargetGroupID *string `json:"targetGroupId,omitempty"` + // ExcludeGroup Indicates if this group is should be excluded. Defaults that the group should be included + ExcludeGroup *bool `json:"excludeGroup,omitempty"` + // DeviceCompliancePolicy undocumented + DeviceCompliancePolicy *DeviceCompliancePolicy `json:"deviceCompliancePolicy,omitempty"` +} + +// DeviceCompliancePolicyPolicySetItem A class containing the properties used for device compliance policy PolicySetItem. +type DeviceCompliancePolicyPolicySetItem struct { + // PolicySetItem is the base model of DeviceCompliancePolicyPolicySetItem + PolicySetItem +} + +// DeviceCompliancePolicySettingState undocumented +type DeviceCompliancePolicySettingState struct { + // Object is the base model of DeviceCompliancePolicySettingState + Object + // Setting The setting that is being reported + Setting *string `json:"setting,omitempty"` + // SettingName Localized/user friendly setting name that is being reported + SettingName *string `json:"settingName,omitempty"` + // InstanceDisplayName Name of setting instance that is being reported. + InstanceDisplayName *string `json:"instanceDisplayName,omitempty"` + // State The compliance state of the setting + State *ComplianceStatus `json:"state,omitempty"` + // ErrorCode Error code for the setting + ErrorCode *int `json:"errorCode,omitempty"` + // ErrorDescription Error description + ErrorDescription *string `json:"errorDescription,omitempty"` + // UserID UserId + UserID *string `json:"userId,omitempty"` + // UserName UserName + UserName *string `json:"userName,omitempty"` + // UserEmail UserEmail + UserEmail *string `json:"userEmail,omitempty"` + // UserPrincipalName UserPrincipalName. + UserPrincipalName *string `json:"userPrincipalName,omitempty"` + // Sources Contributing policies + Sources []SettingSource `json:"sources,omitempty"` + // CurrentValue Current value of setting on device + CurrentValue *string `json:"currentValue,omitempty"` +} + +// DeviceCompliancePolicySettingStateSummary Device Compilance Policy Setting State summary across the account. +type DeviceCompliancePolicySettingStateSummary struct { + // Entity is the base model of DeviceCompliancePolicySettingStateSummary + Entity + // Setting The setting class name and property name. + Setting *string `json:"setting,omitempty"` + // SettingName Name of the setting. + SettingName *string `json:"settingName,omitempty"` + // PlatformType Setting platform + PlatformType *PolicyPlatformType `json:"platformType,omitempty"` + // UnknownDeviceCount Number of unknown devices + UnknownDeviceCount *int `json:"unknownDeviceCount,omitempty"` + // NotApplicableDeviceCount Number of not applicable devices + NotApplicableDeviceCount *int `json:"notApplicableDeviceCount,omitempty"` + // CompliantDeviceCount Number of compliant devices + CompliantDeviceCount *int `json:"compliantDeviceCount,omitempty"` + // RemediatedDeviceCount Number of remediated devices + RemediatedDeviceCount *int `json:"remediatedDeviceCount,omitempty"` + // NonCompliantDeviceCount Number of NonCompliant devices + NonCompliantDeviceCount *int `json:"nonCompliantDeviceCount,omitempty"` + // ErrorDeviceCount Number of error devices + ErrorDeviceCount *int `json:"errorDeviceCount,omitempty"` + // ConflictDeviceCount Number of conflict devices + ConflictDeviceCount *int `json:"conflictDeviceCount,omitempty"` + // DeviceComplianceSettingStates undocumented + DeviceComplianceSettingStates []DeviceComplianceSettingState `json:"deviceComplianceSettingStates,omitempty"` +} + +// DeviceCompliancePolicyState Device Compliance Policy State for a given device. +type DeviceCompliancePolicyState struct { + // Entity is the base model of DeviceCompliancePolicyState + Entity + // SettingStates undocumented + SettingStates []DeviceCompliancePolicySettingState `json:"settingStates,omitempty"` + // DisplayName The name of the policy for this policyBase + DisplayName *string `json:"displayName,omitempty"` + // Version The version of the policy + Version *int `json:"version,omitempty"` + // PlatformType Platform type that the policy applies to + PlatformType *PolicyPlatformType `json:"platformType,omitempty"` + // State The compliance state of the policy + State *ComplianceStatus `json:"state,omitempty"` + // SettingCount Count of how many setting a policy holds + SettingCount *int `json:"settingCount,omitempty"` + // UserID User unique identifier, must be Guid + UserID *string `json:"userId,omitempty"` + // UserPrincipalName User Principal Name + UserPrincipalName *string `json:"userPrincipalName,omitempty"` +} + +// DeviceComplianceScheduledActionForRule Scheduled Action for Rule +type DeviceComplianceScheduledActionForRule struct { + // Entity is the base model of DeviceComplianceScheduledActionForRule + Entity + // RuleName Name of the rule which this scheduled action applies to. + RuleName *string `json:"ruleName,omitempty"` + // ScheduledActionConfigurations undocumented + ScheduledActionConfigurations []DeviceComplianceActionItem `json:"scheduledActionConfigurations,omitempty"` +} + +// DeviceComplianceSettingState Device compliance setting State for a given device. +type DeviceComplianceSettingState struct { + // Entity is the base model of DeviceComplianceSettingState + Entity + // PlatformType Device platform type + PlatformType *DeviceType `json:"platformType,omitempty"` + // Setting The setting class name and property name. + Setting *string `json:"setting,omitempty"` + // SettingName The Setting Name that is being reported + SettingName *string `json:"settingName,omitempty"` + // DeviceID The Device Id that is being reported + DeviceID *string `json:"deviceId,omitempty"` + // DeviceName The Device Name that is being reported + DeviceName *string `json:"deviceName,omitempty"` + // UserID The user Id that is being reported + UserID *string `json:"userId,omitempty"` + // UserEmail The User email address that is being reported + UserEmail *string `json:"userEmail,omitempty"` + // UserName The User Name that is being reported + UserName *string `json:"userName,omitempty"` + // UserPrincipalName The User PrincipalName that is being reported + UserPrincipalName *string `json:"userPrincipalName,omitempty"` + // DeviceModel The device model that is being reported + DeviceModel *string `json:"deviceModel,omitempty"` + // State The compliance state of the setting + State *ComplianceStatus `json:"state,omitempty"` + // ComplianceGracePeriodExpirationDateTime The DateTime when device compliance grace period expires + ComplianceGracePeriodExpirationDateTime *time.Time `json:"complianceGracePeriodExpirationDateTime,omitempty"` +} + +// DeviceComplianceUserOverview undocumented +type DeviceComplianceUserOverview struct { + // Entity is the base model of DeviceComplianceUserOverview + Entity + // PendingCount Number of pending Users + PendingCount *int `json:"pendingCount,omitempty"` + // NotApplicableCount Number of not applicable users + NotApplicableCount *int `json:"notApplicableCount,omitempty"` + // SuccessCount Number of succeeded Users + SuccessCount *int `json:"successCount,omitempty"` + // ErrorCount Number of error Users + ErrorCount *int `json:"errorCount,omitempty"` + // FailedCount Number of failed Users + FailedCount *int `json:"failedCount,omitempty"` + // ConflictCount Number of users in conflict + ConflictCount *int `json:"conflictCount,omitempty"` + // LastUpdateDateTime Last update time + LastUpdateDateTime *time.Time `json:"lastUpdateDateTime,omitempty"` + // ConfigurationVersion Version of the policy for that overview + ConfigurationVersion *int `json:"configurationVersion,omitempty"` +} + +// DeviceComplianceUserStatus undocumented +type DeviceComplianceUserStatus struct { + // Entity is the base model of DeviceComplianceUserStatus + Entity + // UserDisplayName User name of the DevicePolicyStatus. + UserDisplayName *string `json:"userDisplayName,omitempty"` + // DevicesCount Devices count for that user. + DevicesCount *int `json:"devicesCount,omitempty"` + // Status Compliance status of the policy report. + Status *ComplianceStatus `json:"status,omitempty"` + // LastReportedDateTime Last modified date time of the policy report. + LastReportedDateTime *time.Time `json:"lastReportedDateTime,omitempty"` + // UserPrincipalName UserPrincipalName. + UserPrincipalName *string `json:"userPrincipalName,omitempty"` +} + +// DeviceConfiguration Device Configuration. +type DeviceConfiguration struct { + // Entity is the base model of DeviceConfiguration + Entity + // LastModifiedDateTime DateTime the object was last modified. + LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"` + // RoleScopeTagIDs List of Scope Tags for this Entity instance. + RoleScopeTagIDs []string `json:"roleScopeTagIds,omitempty"` + // 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. + SupportsScopeTags *bool `json:"supportsScopeTags,omitempty"` + // DeviceManagementApplicabilityRuleOsEdition The OS edition applicability for this Policy. + DeviceManagementApplicabilityRuleOsEdition *DeviceManagementApplicabilityRuleOsEdition `json:"deviceManagementApplicabilityRuleOsEdition,omitempty"` + // DeviceManagementApplicabilityRuleOsVersion The OS version applicability rule for this Policy. + DeviceManagementApplicabilityRuleOsVersion *DeviceManagementApplicabilityRuleOsVersion `json:"deviceManagementApplicabilityRuleOsVersion,omitempty"` + // DeviceManagementApplicabilityRuleDeviceMode The device mode applicability rule for this Policy. + DeviceManagementApplicabilityRuleDeviceMode *DeviceManagementApplicabilityRuleDeviceMode `json:"deviceManagementApplicabilityRuleDeviceMode,omitempty"` + // CreatedDateTime DateTime the object was created. + CreatedDateTime *time.Time `json:"createdDateTime,omitempty"` + // Description Admin provided description of the Device Configuration. + Description *string `json:"description,omitempty"` + // DisplayName Admin provided name of the device configuration. + DisplayName *string `json:"displayName,omitempty"` + // Version Version of the device configuration. + Version *int `json:"version,omitempty"` + // GroupAssignments undocumented + GroupAssignments []DeviceConfigurationGroupAssignment `json:"groupAssignments,omitempty"` + // Assignments undocumented + Assignments []DeviceConfigurationAssignment `json:"assignments,omitempty"` + // DeviceStatuses undocumented + DeviceStatuses []DeviceConfigurationDeviceStatus `json:"deviceStatuses,omitempty"` + // UserStatuses undocumented + UserStatuses []DeviceConfigurationUserStatus `json:"userStatuses,omitempty"` + // DeviceStatusOverview undocumented + DeviceStatusOverview *DeviceConfigurationDeviceOverview `json:"deviceStatusOverview,omitempty"` + // UserStatusOverview undocumented + UserStatusOverview *DeviceConfigurationUserOverview `json:"userStatusOverview,omitempty"` + // DeviceSettingStateSummaries undocumented + DeviceSettingStateSummaries []SettingStateDeviceSummary `json:"deviceSettingStateSummaries,omitempty"` +} + +// DeviceConfigurationAssignment The device configuration assignment entity assigns an AAD group to a specific device configuration. +type DeviceConfigurationAssignment struct { + // Entity is the base model of DeviceConfigurationAssignment + Entity + // Target The assignment target for the device configuration. + Target *DeviceAndAppManagementAssignmentTarget `json:"target,omitempty"` + // Source The assignment source for the device configuration, direct or parcel/policySet. This property is read-only. + Source *DeviceAndAppManagementAssignmentSource `json:"source,omitempty"` + // SourceID The identifier of the source of the assignment. This property is read-only. + SourceID *string `json:"sourceId,omitempty"` +} + +// DeviceConfigurationConflictSummary Conflict summary for a set of device configuration policies. +type DeviceConfigurationConflictSummary struct { + // Entity is the base model of DeviceConfigurationConflictSummary + Entity + // ConflictingDeviceConfigurations The set of policies in conflict with the given setting + ConflictingDeviceConfigurations []SettingSource `json:"conflictingDeviceConfigurations,omitempty"` + // ContributingSettings The set of settings in conflict with the given policies + ContributingSettings []string `json:"contributingSettings,omitempty"` + // DeviceCheckinsImpacted The count of checkins impacted by the conflicting policies and settings + DeviceCheckinsImpacted *int `json:"deviceCheckinsImpacted,omitempty"` +} + +// DeviceConfigurationDeviceOverview undocumented +type DeviceConfigurationDeviceOverview struct { + // Entity is the base model of DeviceConfigurationDeviceOverview + Entity + // PendingCount Number of pending devices + PendingCount *int `json:"pendingCount,omitempty"` + // NotApplicableCount Number of not applicable devices + NotApplicableCount *int `json:"notApplicableCount,omitempty"` + // NotApplicablePlatformCount Number of not applicable devices due to mismatch platform and policy + NotApplicablePlatformCount *int `json:"notApplicablePlatformCount,omitempty"` + // SuccessCount Number of succeeded devices + SuccessCount *int `json:"successCount,omitempty"` + // ErrorCount Number of error devices + ErrorCount *int `json:"errorCount,omitempty"` + // FailedCount Number of failed devices + FailedCount *int `json:"failedCount,omitempty"` + // ConflictCount Number of devices in conflict + ConflictCount *int `json:"conflictCount,omitempty"` + // LastUpdateDateTime Last update time + LastUpdateDateTime *time.Time `json:"lastUpdateDateTime,omitempty"` + // ConfigurationVersion Version of the policy for that overview + ConfigurationVersion *int `json:"configurationVersion,omitempty"` +} + +// DeviceConfigurationDeviceStateSummary undocumented +type DeviceConfigurationDeviceStateSummary struct { + // Entity is the base model of DeviceConfigurationDeviceStateSummary + Entity + // UnknownDeviceCount Number of unknown devices + UnknownDeviceCount *int `json:"unknownDeviceCount,omitempty"` + // NotApplicableDeviceCount Number of not applicable devices + NotApplicableDeviceCount *int `json:"notApplicableDeviceCount,omitempty"` + // CompliantDeviceCount Number of compliant devices + CompliantDeviceCount *int `json:"compliantDeviceCount,omitempty"` + // RemediatedDeviceCount Number of remediated devices + RemediatedDeviceCount *int `json:"remediatedDeviceCount,omitempty"` + // NonCompliantDeviceCount Number of NonCompliant devices + NonCompliantDeviceCount *int `json:"nonCompliantDeviceCount,omitempty"` + // ErrorDeviceCount Number of error devices + ErrorDeviceCount *int `json:"errorDeviceCount,omitempty"` + // ConflictDeviceCount Number of conflict devices + ConflictDeviceCount *int `json:"conflictDeviceCount,omitempty"` +} + +// DeviceConfigurationDeviceStatus undocumented +type DeviceConfigurationDeviceStatus struct { + // Entity is the base model of DeviceConfigurationDeviceStatus + Entity + // DeviceDisplayName Device name of the DevicePolicyStatus. + DeviceDisplayName *string `json:"deviceDisplayName,omitempty"` + // UserName The User Name that is being reported + UserName *string `json:"userName,omitempty"` + // DeviceModel The device model that is being reported + DeviceModel *string `json:"deviceModel,omitempty"` + // Platform Platform of the device that is being reported + Platform *int `json:"platform,omitempty"` + // ComplianceGracePeriodExpirationDateTime The DateTime when device compliance grace period expires + ComplianceGracePeriodExpirationDateTime *time.Time `json:"complianceGracePeriodExpirationDateTime,omitempty"` + // Status Compliance status of the policy report. + Status *ComplianceStatus `json:"status,omitempty"` + // LastReportedDateTime Last modified date time of the policy report. + LastReportedDateTime *time.Time `json:"lastReportedDateTime,omitempty"` + // UserPrincipalName UserPrincipalName. + UserPrincipalName *string `json:"userPrincipalName,omitempty"` +} + +// DeviceConfigurationGroupAssignment Device configuration group assignment. +type DeviceConfigurationGroupAssignment struct { + // Entity is the base model of DeviceConfigurationGroupAssignment + Entity + // TargetGroupID The Id of the AAD group we are targeting the device configuration to. + TargetGroupID *string `json:"targetGroupId,omitempty"` + // ExcludeGroup Indicates if this group is should be excluded. Defaults that the group should be included + ExcludeGroup *bool `json:"excludeGroup,omitempty"` + // DeviceConfiguration undocumented + DeviceConfiguration *DeviceConfiguration `json:"deviceConfiguration,omitempty"` +} + +// DeviceConfigurationPolicySetItem A class containing the properties used for device configuration PolicySetItem. +type DeviceConfigurationPolicySetItem struct { + // PolicySetItem is the base model of DeviceConfigurationPolicySetItem + PolicySetItem +} + +// DeviceConfigurationSettingState undocumented +type DeviceConfigurationSettingState struct { + // Object is the base model of DeviceConfigurationSettingState + Object + // Setting The setting that is being reported + Setting *string `json:"setting,omitempty"` + // SettingName Localized/user friendly setting name that is being reported + SettingName *string `json:"settingName,omitempty"` + // InstanceDisplayName Name of setting instance that is being reported. + InstanceDisplayName *string `json:"instanceDisplayName,omitempty"` + // State The compliance state of the setting + State *ComplianceStatus `json:"state,omitempty"` + // ErrorCode Error code for the setting + ErrorCode *int `json:"errorCode,omitempty"` + // ErrorDescription Error description + ErrorDescription *string `json:"errorDescription,omitempty"` + // UserID UserId + UserID *string `json:"userId,omitempty"` + // UserName UserName + UserName *string `json:"userName,omitempty"` + // UserEmail UserEmail + UserEmail *string `json:"userEmail,omitempty"` + // UserPrincipalName UserPrincipalName. + UserPrincipalName *string `json:"userPrincipalName,omitempty"` + // Sources Contributing policies + Sources []SettingSource `json:"sources,omitempty"` + // CurrentValue Current value of setting on device + CurrentValue *string `json:"currentValue,omitempty"` +} + +// DeviceConfigurationState Device Configuration State for a given device. +type DeviceConfigurationState struct { + // Entity is the base model of DeviceConfigurationState + Entity + // SettingStates undocumented + SettingStates []DeviceConfigurationSettingState `json:"settingStates,omitempty"` + // DisplayName The name of the policy for this policyBase + DisplayName *string `json:"displayName,omitempty"` + // Version The version of the policy + Version *int `json:"version,omitempty"` + // PlatformType Platform type that the policy applies to + PlatformType *PolicyPlatformType `json:"platformType,omitempty"` + // State The compliance state of the policy + State *ComplianceStatus `json:"state,omitempty"` + // SettingCount Count of how many setting a policy holds + SettingCount *int `json:"settingCount,omitempty"` + // UserID User unique identifier, must be Guid + UserID *string `json:"userId,omitempty"` + // UserPrincipalName User Principal Name + UserPrincipalName *string `json:"userPrincipalName,omitempty"` +} + +// DeviceConfigurationTargetedUserAndDevice undocumented +type DeviceConfigurationTargetedUserAndDevice struct { + // Object is the base model of DeviceConfigurationTargetedUserAndDevice + Object + // DeviceID The id of the device in the checkin. + DeviceID *string `json:"deviceId,omitempty"` + // DeviceName The name of the device in the checkin. + DeviceName *string `json:"deviceName,omitempty"` + // UserID The id of the user in the checkin. + UserID *string `json:"userId,omitempty"` + // UserDisplayName The display name of the user in the checkin + UserDisplayName *string `json:"userDisplayName,omitempty"` + // UserPrincipalName The UPN of the user in the checkin. + UserPrincipalName *string `json:"userPrincipalName,omitempty"` + // LastCheckinDateTime Last checkin time for this user/device pair. + LastCheckinDateTime *time.Time `json:"lastCheckinDateTime,omitempty"` +} + +// DeviceConfigurationUserOverview undocumented +type DeviceConfigurationUserOverview struct { + // Entity is the base model of DeviceConfigurationUserOverview + Entity + // PendingCount Number of pending Users + PendingCount *int `json:"pendingCount,omitempty"` + // NotApplicableCount Number of not applicable users + NotApplicableCount *int `json:"notApplicableCount,omitempty"` + // SuccessCount Number of succeeded Users + SuccessCount *int `json:"successCount,omitempty"` + // ErrorCount Number of error Users + ErrorCount *int `json:"errorCount,omitempty"` + // FailedCount Number of failed Users + FailedCount *int `json:"failedCount,omitempty"` + // ConflictCount Number of users in conflict + ConflictCount *int `json:"conflictCount,omitempty"` + // LastUpdateDateTime Last update time + LastUpdateDateTime *time.Time `json:"lastUpdateDateTime,omitempty"` + // ConfigurationVersion Version of the policy for that overview + ConfigurationVersion *int `json:"configurationVersion,omitempty"` +} + +// DeviceConfigurationUserStateSummary undocumented +type DeviceConfigurationUserStateSummary struct { + // Entity is the base model of DeviceConfigurationUserStateSummary + Entity + // UnknownUserCount Number of unknown users + UnknownUserCount *int `json:"unknownUserCount,omitempty"` + // NotApplicableUserCount Number of not applicable users + NotApplicableUserCount *int `json:"notApplicableUserCount,omitempty"` + // CompliantUserCount Number of compliant users + CompliantUserCount *int `json:"compliantUserCount,omitempty"` + // RemediatedUserCount Number of remediated users + RemediatedUserCount *int `json:"remediatedUserCount,omitempty"` + // NonCompliantUserCount Number of NonCompliant users + NonCompliantUserCount *int `json:"nonCompliantUserCount,omitempty"` + // ErrorUserCount Number of error users + ErrorUserCount *int `json:"errorUserCount,omitempty"` + // ConflictUserCount Number of conflict users + ConflictUserCount *int `json:"conflictUserCount,omitempty"` +} + +// DeviceConfigurationUserStatus undocumented +type DeviceConfigurationUserStatus struct { + // Entity is the base model of DeviceConfigurationUserStatus + Entity + // UserDisplayName User name of the DevicePolicyStatus. + UserDisplayName *string `json:"userDisplayName,omitempty"` + // DevicesCount Devices count for that user. + DevicesCount *int `json:"devicesCount,omitempty"` + // Status Compliance status of the policy report. + Status *ComplianceStatus `json:"status,omitempty"` + // LastReportedDateTime Last modified date time of the policy report. + LastReportedDateTime *time.Time `json:"lastReportedDateTime,omitempty"` + // UserPrincipalName UserPrincipalName. + UserPrincipalName *string `json:"userPrincipalName,omitempty"` +} + +// DeviceDetail undocumented +type DeviceDetail struct { + // Object is the base model of DeviceDetail + Object + // DeviceID undocumented + DeviceID *string `json:"deviceId,omitempty"` + // DisplayName undocumented + DisplayName *string `json:"displayName,omitempty"` + // OperatingSystem undocumented + OperatingSystem *string `json:"operatingSystem,omitempty"` + // Browser undocumented + Browser *string `json:"browser,omitempty"` + // BrowserID undocumented + BrowserID *string `json:"browserId,omitempty"` + // IsCompliant undocumented + IsCompliant *bool `json:"isCompliant,omitempty"` + // IsManaged undocumented + IsManaged *bool `json:"isManaged,omitempty"` + // TrustType undocumented + TrustType *string `json:"trustType,omitempty"` +} + +// DeviceEnrollmentConfiguration The Base Class of Device Enrollment Configuration +type DeviceEnrollmentConfiguration struct { + // Entity is the base model of DeviceEnrollmentConfiguration + Entity + // DisplayName The display name of the device enrollment configuration + DisplayName *string `json:"displayName,omitempty"` + // Description The description of the device enrollment configuration + Description *string `json:"description,omitempty"` + // 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. + Priority *int `json:"priority,omitempty"` + // CreatedDateTime Created date time in UTC of the device enrollment configuration + CreatedDateTime *time.Time `json:"createdDateTime,omitempty"` + // LastModifiedDateTime Last modified date time in UTC of the device enrollment configuration + LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"` + // Version The version of the device enrollment configuration + Version *int `json:"version,omitempty"` + // Assignments undocumented + Assignments []EnrollmentConfigurationAssignment `json:"assignments,omitempty"` +} + +// DeviceEnrollmentLimitConfiguration Device Enrollment Configuration that restricts the number of devices a user can enroll +type DeviceEnrollmentLimitConfiguration struct { + // DeviceEnrollmentConfiguration is the base model of DeviceEnrollmentLimitConfiguration + DeviceEnrollmentConfiguration + // Limit The maximum number of devices that a user can enroll + Limit *int `json:"limit,omitempty"` +} + +// DeviceEnrollmentPlatformRestriction undocumented +type DeviceEnrollmentPlatformRestriction struct { + // Object is the base model of DeviceEnrollmentPlatformRestriction + Object + // PlatformBlocked Block the platform from enrolling + PlatformBlocked *bool `json:"platformBlocked,omitempty"` + // PersonalDeviceEnrollmentBlocked Block personally owned devices from enrolling + PersonalDeviceEnrollmentBlocked *bool `json:"personalDeviceEnrollmentBlocked,omitempty"` + // OsMinimumVersion Min OS version supported + OsMinimumVersion *string `json:"osMinimumVersion,omitempty"` + // OsMaximumVersion Max OS version supported + OsMaximumVersion *string `json:"osMaximumVersion,omitempty"` +} + +// DeviceEnrollmentPlatformRestrictionsConfiguration Device Enrollment Configuration that restricts the types of devices a user can enroll +type DeviceEnrollmentPlatformRestrictionsConfiguration struct { + // DeviceEnrollmentConfiguration is the base model of DeviceEnrollmentPlatformRestrictionsConfiguration + DeviceEnrollmentConfiguration + // IOSRestriction Ios restrictions based on platform, platform operating system version, and device ownership + IOSRestriction *DeviceEnrollmentPlatformRestriction `json:"iosRestriction,omitempty"` + // WindowsRestriction Windows restrictions based on platform, platform operating system version, and device ownership + WindowsRestriction *DeviceEnrollmentPlatformRestriction `json:"windowsRestriction,omitempty"` + // WindowsMobileRestriction Windows mobile restrictions based on platform, platform operating system version, and device ownership + WindowsMobileRestriction *DeviceEnrollmentPlatformRestriction `json:"windowsMobileRestriction,omitempty"` + // AndroidRestriction Android restrictions based on platform, platform operating system version, and device ownership + AndroidRestriction *DeviceEnrollmentPlatformRestriction `json:"androidRestriction,omitempty"` + // AndroidForWorkRestriction Android for work restrictions based on platform, platform operating system version, and device ownership + AndroidForWorkRestriction *DeviceEnrollmentPlatformRestriction `json:"androidForWorkRestriction,omitempty"` + // MacRestriction Mac restrictions based on platform, platform operating system version, and device ownership + MacRestriction *DeviceEnrollmentPlatformRestriction `json:"macRestriction,omitempty"` + // MacOSRestriction Mac restrictions based on platform, platform operating system version, and device ownership + MacOSRestriction *DeviceEnrollmentPlatformRestriction `json:"macOSRestriction,omitempty"` +} + +// 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. +type DeviceEnrollmentWindowsHelloForBusinessConfiguration struct { + // DeviceEnrollmentConfiguration is the base model of DeviceEnrollmentWindowsHelloForBusinessConfiguration + DeviceEnrollmentConfiguration + // 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. + PinMinimumLength *int `json:"pinMinimumLength,omitempty"` + // 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. + PinMaximumLength *int `json:"pinMaximumLength,omitempty"` + // 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. + PinUppercaseCharactersUsage *WindowsHelloForBusinessPinUsage `json:"pinUppercaseCharactersUsage,omitempty"` + // 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. + PinLowercaseCharactersUsage *WindowsHelloForBusinessPinUsage `json:"pinLowercaseCharactersUsage,omitempty"` + // 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. + PinSpecialCharactersUsage *WindowsHelloForBusinessPinUsage `json:"pinSpecialCharactersUsage,omitempty"` + // 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. + State *Enablement `json:"state,omitempty"` + // 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. + SecurityDeviceRequired *bool `json:"securityDeviceRequired,omitempty"` + // 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. + UnlockWithBiometricsEnabled *bool `json:"unlockWithBiometricsEnabled,omitempty"` + // 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. + RemotePassportEnabled *bool `json:"remotePassportEnabled,omitempty"` + // 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. + PinPreviousBlockCount *int `json:"pinPreviousBlockCount,omitempty"` + // 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 + PinExpirationInDays *int `json:"pinExpirationInDays,omitempty"` + // 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. + EnhancedBiometricsState *Enablement `json:"enhancedBiometricsState,omitempty"` + // 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. + SecurityKeyForSignIn *Enablement `json:"securityKeyForSignIn,omitempty"` +} + +// DeviceExchangeAccessStateSummary undocumented +type DeviceExchangeAccessStateSummary struct { + // Object is the base model of DeviceExchangeAccessStateSummary + Object + // AllowedDeviceCount Total count of devices with Exchange Access State: Allowed. + AllowedDeviceCount *int `json:"allowedDeviceCount,omitempty"` + // BlockedDeviceCount Total count of devices with Exchange Access State: Blocked. + BlockedDeviceCount *int `json:"blockedDeviceCount,omitempty"` + // QuarantinedDeviceCount Total count of devices with Exchange Access State: Quarantined. + QuarantinedDeviceCount *int `json:"quarantinedDeviceCount,omitempty"` + // UnknownDeviceCount Total count of devices with Exchange Access State: Unknown. + UnknownDeviceCount *int `json:"unknownDeviceCount,omitempty"` + // UnavailableDeviceCount Total count of devices for which no Exchange Access State could be found. + UnavailableDeviceCount *int `json:"unavailableDeviceCount,omitempty"` +} + +// DeviceGeoLocation undocumented +type DeviceGeoLocation struct { + // Object is the base model of DeviceGeoLocation + Object + // LastCollectedDateTimeUtc Time at which location was recorded, relative to UTC + LastCollectedDateTimeUtc *time.Time `json:"lastCollectedDateTimeUtc,omitempty"` + // LastCollectedDateTime Time at which location was recorded, relative to UTC + LastCollectedDateTime *time.Time `json:"lastCollectedDateTime,omitempty"` + // Longitude Longitude coordinate of the device's location + Longitude *float64 `json:"longitude,omitempty"` + // Latitude Latitude coordinate of the device's location + Latitude *float64 `json:"latitude,omitempty"` + // Altitude Altitude, given in meters above sea level + Altitude *float64 `json:"altitude,omitempty"` + // HorizontalAccuracy Accuracy of longitude and latitude in meters + HorizontalAccuracy *float64 `json:"horizontalAccuracy,omitempty"` + // VerticalAccuracy Accuracy of altitude in meters + VerticalAccuracy *float64 `json:"verticalAccuracy,omitempty"` + // Heading Heading in degrees from true north + Heading *float64 `json:"heading,omitempty"` + // Speed Speed the device is traveling in meters per second + Speed *float64 `json:"speed,omitempty"` +} + +// DeviceHealthAttestationState undocumented +type DeviceHealthAttestationState struct { + // Object is the base model of DeviceHealthAttestationState + Object + // LastUpdateDateTime The Timestamp of the last update. + LastUpdateDateTime *string `json:"lastUpdateDateTime,omitempty"` + // ContentNamespaceURL The DHA report version. (Namespace version) + ContentNamespaceURL *string `json:"contentNamespaceUrl,omitempty"` + // DeviceHealthAttestationStatus The DHA report version. (Namespace version) + DeviceHealthAttestationStatus *string `json:"deviceHealthAttestationStatus,omitempty"` + // ContentVersion The HealthAttestation state schema version + ContentVersion *string `json:"contentVersion,omitempty"` + // IssuedDateTime The DateTime when device was evaluated or issued to MDM + IssuedDateTime *time.Time `json:"issuedDateTime,omitempty"` + // AttestationIdentityKey TWhen an Attestation Identity Key (AIK) is present on a device, it indicates that the device has an endorsement key (EK) certificate. + AttestationIdentityKey *string `json:"attestationIdentityKey,omitempty"` + // ResetCount The number of times a PC device has hibernated or resumed + ResetCount *int `json:"resetCount,omitempty"` + // RestartCount The number of times a PC device has rebooted + RestartCount *int `json:"restartCount,omitempty"` + // DataExcutionPolicy DEP Policy defines a set of hardware and software technologies that perform additional checks on memory + DataExcutionPolicy *string `json:"dataExcutionPolicy,omitempty"` + // BitLockerStatus On or Off of BitLocker Drive Encryption + BitLockerStatus *string `json:"bitLockerStatus,omitempty"` + // BootManagerVersion The version of the Boot Manager + BootManagerVersion *string `json:"bootManagerVersion,omitempty"` + // CodeIntegrityCheckVersion The version of the Boot Manager + CodeIntegrityCheckVersion *string `json:"codeIntegrityCheckVersion,omitempty"` + // SecureBoot When Secure Boot is enabled, the core components must have the correct cryptographic signatures + SecureBoot *string `json:"secureBoot,omitempty"` + // BootDebugging When bootDebugging is enabled, the device is used in development and testing + BootDebugging *string `json:"bootDebugging,omitempty"` + // OperatingSystemKernelDebugging When operatingSystemKernelDebugging is enabled, the device is used in development and testing + OperatingSystemKernelDebugging *string `json:"operatingSystemKernelDebugging,omitempty"` + // CodeIntegrity When code integrity is enabled, code execution is restricted to integrity verified code + CodeIntegrity *string `json:"codeIntegrity,omitempty"` + // TestSigning When test signing is allowed, the device does not enforce signature validation during boot + TestSigning *string `json:"testSigning,omitempty"` + // SafeMode Safe mode is a troubleshooting option for Windows that starts your computer in a limited state + SafeMode *string `json:"safeMode,omitempty"` + // WindowsPE Operating system running with limited services that is used to prepare a computer for Windows + WindowsPE *string `json:"windowsPE,omitempty"` + // EarlyLaunchAntiMalwareDriverProtection ELAM provides protection for the computers in your network when they start up + EarlyLaunchAntiMalwareDriverProtection *string `json:"earlyLaunchAntiMalwareDriverProtection,omitempty"` + // VirtualSecureMode VSM is a container that protects high value assets from a compromised kernel + VirtualSecureMode *string `json:"virtualSecureMode,omitempty"` + // PcrHashAlgorithm Informational attribute that identifies the HASH algorithm that was used by TPM + PcrHashAlgorithm *string `json:"pcrHashAlgorithm,omitempty"` + // BootAppSecurityVersion The security version number of the Boot Application + BootAppSecurityVersion *string `json:"bootAppSecurityVersion,omitempty"` + // BootManagerSecurityVersion The security version number of the Boot Application + BootManagerSecurityVersion *string `json:"bootManagerSecurityVersion,omitempty"` + // TpmVersion The security version number of the Boot Application + TpmVersion *string `json:"tpmVersion,omitempty"` + // Pcr0 The measurement that is captured in PCR[0] + Pcr0 *string `json:"pcr0,omitempty"` + // SecureBootConfigurationPolicyFingerPrint Fingerprint of the Custom Secure Boot Configuration Policy + SecureBootConfigurationPolicyFingerPrint *string `json:"secureBootConfigurationPolicyFingerPrint,omitempty"` + // CodeIntegrityPolicy The Code Integrity policy that is controlling the security of the boot environment + CodeIntegrityPolicy *string `json:"codeIntegrityPolicy,omitempty"` + // BootRevisionListInfo The Boot Revision List that was loaded during initial boot on the attested device + BootRevisionListInfo *string `json:"bootRevisionListInfo,omitempty"` + // OperatingSystemRevListInfo The Operating System Revision List that was loaded during initial boot on the attested device + OperatingSystemRevListInfo *string `json:"operatingSystemRevListInfo,omitempty"` + // HealthStatusMismatchInfo This attribute appears if DHA-Service detects an integrity issue + HealthStatusMismatchInfo *string `json:"healthStatusMismatchInfo,omitempty"` + // HealthAttestationSupportedStatus This attribute indicates if DHA is supported for the device + HealthAttestationSupportedStatus *string `json:"healthAttestationSupportedStatus,omitempty"` +} + +// 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. +type DeviceHealthScript struct { + // Entity is the base model of DeviceHealthScript + Entity + // Publisher Name of the device health script publisher + Publisher *string `json:"publisher,omitempty"` + // Version Version of the device health script + Version *string `json:"version,omitempty"` + // DisplayName Name of the device health script + DisplayName *string `json:"displayName,omitempty"` + // Description Description of the device health script + Description *string `json:"description,omitempty"` + // DetectionScriptContent The entire content of the detection powershell script + DetectionScriptContent *Binary `json:"detectionScriptContent,omitempty"` + // RemediationScriptContent The entire content of the remediation powershell script + RemediationScriptContent *Binary `json:"remediationScriptContent,omitempty"` + // CreatedDateTime The timestamp of when the device health script was created. This property is read-only. + CreatedDateTime *time.Time `json:"createdDateTime,omitempty"` + // LastModifiedDateTime The timestamp of when the device health script was modified. This property is read-only. + LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"` + // RunAsAccount Indicates the type of execution context + RunAsAccount *RunAsAccountType `json:"runAsAccount,omitempty"` + // EnforceSignatureCheck Indicate whether the script signature needs be checked + EnforceSignatureCheck *bool `json:"enforceSignatureCheck,omitempty"` + // RunAs32Bit Indicate whether PowerShell script(s) should run as 32-bit + RunAs32Bit *bool `json:"runAs32Bit,omitempty"` + // RoleScopeTagIDs List of Scope Tag IDs for the device health script + RoleScopeTagIDs []string `json:"roleScopeTagIds,omitempty"` + // Assignments undocumented + Assignments []DeviceHealthScriptAssignment `json:"assignments,omitempty"` + // RunSummary undocumented + RunSummary *DeviceHealthScriptRunSummary `json:"runSummary,omitempty"` + // DeviceRunStates undocumented + DeviceRunStates []DeviceHealthScriptDeviceState `json:"deviceRunStates,omitempty"` +} + +// DeviceHealthScriptAssignment Contains properties used to assign a device management script to a group. +type DeviceHealthScriptAssignment struct { + // Entity is the base model of DeviceHealthScriptAssignment + Entity + // Target The Azure Active Directory group we are targeting the script to + Target *DeviceAndAppManagementAssignmentTarget `json:"target,omitempty"` + // RunRemediationScript Determine whether we want to run detection script only or run both detection script and remediation script + RunRemediationScript *bool `json:"runRemediationScript,omitempty"` + // RunSchedule Script run schedule for the target group + RunSchedule *RunSchedule `json:"runSchedule,omitempty"` +} + +// DeviceHealthScriptDeviceState Contains properties for device run state of the device health script. +type DeviceHealthScriptDeviceState struct { + // Entity is the base model of DeviceHealthScriptDeviceState + Entity + // DetectionState Detection state from the lastest device health script execution + DetectionState *RunState `json:"detectionState,omitempty"` + // LastStateUpdateDateTime The last timestamp of when the device health script executed + LastStateUpdateDateTime *time.Time `json:"lastStateUpdateDateTime,omitempty"` + // ExpectedStateUpdateDateTime The next timestamp of when the device health script is expected to execute + ExpectedStateUpdateDateTime *time.Time `json:"expectedStateUpdateDateTime,omitempty"` + // LastSyncDateTime The last time that Intune Managment Extension synced with Intune + LastSyncDateTime *time.Time `json:"lastSyncDateTime,omitempty"` + // PreRemediationDetectionScriptOutput Output of the detection script before remediation + PreRemediationDetectionScriptOutput *string `json:"preRemediationDetectionScriptOutput,omitempty"` + // PreRemediationDetectionScriptError Error from the detection script before remediation + PreRemediationDetectionScriptError *string `json:"preRemediationDetectionScriptError,omitempty"` + // RemediationScriptError Error output of the remediation script + RemediationScriptError *string `json:"remediationScriptError,omitempty"` + // PostRemediationDetectionScriptOutput Detection script output after remediation + PostRemediationDetectionScriptOutput *string `json:"postRemediationDetectionScriptOutput,omitempty"` + // PostRemediationDetectionScriptError Error from the detection script after remediation + PostRemediationDetectionScriptError *string `json:"postRemediationDetectionScriptError,omitempty"` + // RemediationState Remediation state from the lastest device health script execution + RemediationState *RemediationState `json:"remediationState,omitempty"` + // ManagedDevice undocumented + ManagedDevice *ManagedDevice `json:"managedDevice,omitempty"` +} + +// DeviceHealthScriptRunSummary Contains properties for the run summary of a device management script. +type DeviceHealthScriptRunSummary struct { + // Entity is the base model of DeviceHealthScriptRunSummary + Entity + // NoIssueDetectedDeviceCount Number of devices for which the detection script did not find an issue and the device is healthy + NoIssueDetectedDeviceCount *int `json:"noIssueDetectedDeviceCount,omitempty"` + // IssueDetectedDeviceCount Number of devices for which the detection script found an issue + IssueDetectedDeviceCount *int `json:"issueDetectedDeviceCount,omitempty"` + // DetectionScriptErrorDeviceCount Number of devices on which the detection script execution encountered an error and did not complete + DetectionScriptErrorDeviceCount *int `json:"detectionScriptErrorDeviceCount,omitempty"` + // DetectionScriptPendingDeviceCount Number of devices which have not yet run the latest version of the device health script + DetectionScriptPendingDeviceCount *int `json:"detectionScriptPendingDeviceCount,omitempty"` + // IssueRemediatedDeviceCount Number of devices for which the remediation script was able to resolve the detected issue + IssueRemediatedDeviceCount *int `json:"issueRemediatedDeviceCount,omitempty"` + // RemediationSkippedDeviceCount Number of devices for which remediation was skipped + RemediationSkippedDeviceCount *int `json:"remediationSkippedDeviceCount,omitempty"` + // IssueReoccurredDeviceCount Number of devices for which the remediation script executed successfully but failed to resolve the detected issue + IssueReoccurredDeviceCount *int `json:"issueReoccurredDeviceCount,omitempty"` + // RemediationScriptErrorDeviceCount Number of devices for which the remediation script execution encountered an error and did not complete + RemediationScriptErrorDeviceCount *int `json:"remediationScriptErrorDeviceCount,omitempty"` + // LastScriptRunDateTime Last run time for the script across all devices + LastScriptRunDateTime *time.Time `json:"lastScriptRunDateTime,omitempty"` +} + +// DeviceInstallState Contains properties for the installation state for a device. +type DeviceInstallState struct { + // Entity is the base model of DeviceInstallState + Entity + // DeviceName Device name. + DeviceName *string `json:"deviceName,omitempty"` + // DeviceID Device Id. + DeviceID *string `json:"deviceId,omitempty"` + // LastSyncDateTime Last sync date and time. + LastSyncDateTime *time.Time `json:"lastSyncDateTime,omitempty"` + // InstallState The install state of the eBook. + InstallState *InstallState `json:"installState,omitempty"` + // ErrorCode The error code for install failures. + ErrorCode *string `json:"errorCode,omitempty"` + // OsVersion OS Version. + OsVersion *string `json:"osVersion,omitempty"` + // OsDescription OS Description. + OsDescription *string `json:"osDescription,omitempty"` + // UserName Device User Name. + UserName *string `json:"userName,omitempty"` +} + +// DeviceKey undocumented +type DeviceKey struct { + // Object is the base model of DeviceKey + Object + // KeyType undocumented + KeyType *string `json:"keyType,omitempty"` + // KeyMaterial undocumented + KeyMaterial *Binary `json:"keyMaterial,omitempty"` + // DeviceID undocumented + DeviceID *UUID `json:"deviceId,omitempty"` +} + +// DeviceManagement Singleton that acts as container for a collection of UserPFXCertificate entities. +type DeviceManagement struct { + // Entity is the base model of DeviceManagement + Entity + // Settings Account level settings. + Settings *DeviceManagementSettings `json:"settings,omitempty"` + // MaximumDepTokens Maximum number of dep tokens allowed per-tenant. + MaximumDepTokens *int `json:"maximumDepTokens,omitempty"` + // IntuneAccountID Intune Account Id for given tenant + IntuneAccountID *UUID `json:"intuneAccountId,omitempty"` + // LastReportAggregationDateTime The last modified time of reporting for this account. This property is read-only. + LastReportAggregationDateTime *time.Time `json:"lastReportAggregationDateTime,omitempty"` + // DeviceComplianceReportSummarizationDateTime The last requested time of device compliance reporting for this account. This property is read-only. + DeviceComplianceReportSummarizationDateTime *time.Time `json:"deviceComplianceReportSummarizationDateTime,omitempty"` + // LegacyPcManangementEnabled The property to enable Non-MDM managed legacy PC management for this account. This property is read-only. + LegacyPcManangementEnabled *bool `json:"legacyPcManangementEnabled,omitempty"` + // IntuneBrand intuneBrand contains data which is used in customizing the appearance of the Company Portal applications as well as the end user web portal. + IntuneBrand *IntuneBrand `json:"intuneBrand,omitempty"` + // SubscriptionState Tenant mobile device management subscription state. + SubscriptionState *DeviceManagementSubscriptionState `json:"subscriptionState,omitempty"` + // Subscriptions Tenant's Subscription. + Subscriptions *DeviceManagementSubscriptions `json:"subscriptions,omitempty"` + // ManagedDeviceCleanupSettings Device cleanup rule + ManagedDeviceCleanupSettings *ManagedDeviceCleanupSettings `json:"managedDeviceCleanupSettings,omitempty"` + // AdminConsent Admin consent information. + AdminConsent *AdminConsent `json:"adminConsent,omitempty"` + // DeviceProtectionOverview Device protection overview. + DeviceProtectionOverview *DeviceProtectionOverview `json:"deviceProtectionOverview,omitempty"` + // WindowsMalwareOverview Malware overview for windows devices. + WindowsMalwareOverview *WindowsMalwareOverview `json:"windowsMalwareOverview,omitempty"` + // AccountMoveCompletionDateTime The date & time when tenant data moved between scaleunits. + AccountMoveCompletionDateTime *time.Time `json:"accountMoveCompletionDateTime,omitempty"` + // GroupPolicyObjectFiles A list of Group Policy Object files uploaded. + GroupPolicyObjectFiles []GroupPolicyObjectFile `json:"groupPolicyObjectFiles,omitempty"` + // AuditEvents undocumented + AuditEvents []AuditEvent `json:"auditEvents,omitempty"` + // AndroidForWorkSettings undocumented + AndroidForWorkSettings *AndroidForWorkSettings `json:"androidForWorkSettings,omitempty"` + // AndroidForWorkAppConfigurationSchemas undocumented + AndroidForWorkAppConfigurationSchemas []AndroidForWorkAppConfigurationSchema `json:"androidForWorkAppConfigurationSchemas,omitempty"` + // AndroidForWorkEnrollmentProfiles undocumented + AndroidForWorkEnrollmentProfiles []AndroidForWorkEnrollmentProfile `json:"androidForWorkEnrollmentProfiles,omitempty"` + // AndroidManagedStoreAccountEnterpriseSettings undocumented + AndroidManagedStoreAccountEnterpriseSettings *AndroidManagedStoreAccountEnterpriseSettings `json:"androidManagedStoreAccountEnterpriseSettings,omitempty"` + // AndroidManagedStoreAppConfigurationSchemas undocumented + AndroidManagedStoreAppConfigurationSchemas []AndroidManagedStoreAppConfigurationSchema `json:"androidManagedStoreAppConfigurationSchemas,omitempty"` + // AndroidDeviceOwnerEnrollmentProfiles undocumented + AndroidDeviceOwnerEnrollmentProfiles []AndroidDeviceOwnerEnrollmentProfile `json:"androidDeviceOwnerEnrollmentProfiles,omitempty"` + // TermsAndConditions undocumented + TermsAndConditions []TermsAndConditions `json:"termsAndConditions,omitempty"` + // DeviceConfigurations undocumented + DeviceConfigurations []DeviceConfiguration `json:"deviceConfigurations,omitempty"` + // DeviceCompliancePolicies undocumented + DeviceCompliancePolicies []DeviceCompliancePolicy `json:"deviceCompliancePolicies,omitempty"` + // SoftwareUpdateStatusSummary undocumented + SoftwareUpdateStatusSummary *SoftwareUpdateStatusSummary `json:"softwareUpdateStatusSummary,omitempty"` + // DeviceCompliancePolicyDeviceStateSummary undocumented + DeviceCompliancePolicyDeviceStateSummary *DeviceCompliancePolicyDeviceStateSummary `json:"deviceCompliancePolicyDeviceStateSummary,omitempty"` + // DeviceCompliancePolicySettingStateSummaries undocumented + DeviceCompliancePolicySettingStateSummaries []DeviceCompliancePolicySettingStateSummary `json:"deviceCompliancePolicySettingStateSummaries,omitempty"` + // AdvancedThreatProtectionOnboardingStateSummary undocumented + AdvancedThreatProtectionOnboardingStateSummary *AdvancedThreatProtectionOnboardingStateSummary `json:"advancedThreatProtectionOnboardingStateSummary,omitempty"` + // DeviceConfigurationDeviceStateSummaries undocumented + DeviceConfigurationDeviceStateSummaries *DeviceConfigurationDeviceStateSummary `json:"deviceConfigurationDeviceStateSummaries,omitempty"` + // DeviceConfigurationUserStateSummaries undocumented + DeviceConfigurationUserStateSummaries *DeviceConfigurationUserStateSummary `json:"deviceConfigurationUserStateSummaries,omitempty"` + // CartToClassAssociations undocumented + CartToClassAssociations []CartToClassAssociation `json:"cartToClassAssociations,omitempty"` + // IOSUpdateStatuses undocumented + IOSUpdateStatuses []IOSUpdateDeviceStatus `json:"iosUpdateStatuses,omitempty"` + // NDESConnectors undocumented + NDESConnectors []NDESConnector `json:"ndesConnectors,omitempty"` + // DeviceConfigurationRestrictedAppsViolations undocumented + DeviceConfigurationRestrictedAppsViolations []RestrictedAppsViolation `json:"deviceConfigurationRestrictedAppsViolations,omitempty"` + // ManagedDeviceEncryptionStates undocumented + ManagedDeviceEncryptionStates []ManagedDeviceEncryptionState `json:"managedDeviceEncryptionStates,omitempty"` + // DeviceConfigurationConflictSummary undocumented + DeviceConfigurationConflictSummary []DeviceConfigurationConflictSummary `json:"deviceConfigurationConflictSummary,omitempty"` + // DeviceConfigurationsAllManagedDeviceCertificateStates undocumented + DeviceConfigurationsAllManagedDeviceCertificateStates []ManagedAllDeviceCertificateState `json:"deviceConfigurationsAllManagedDeviceCertificateStates,omitempty"` + // DeviceCategories undocumented + DeviceCategories []DeviceCategory `json:"deviceCategories,omitempty"` + // ExchangeConnectors undocumented + ExchangeConnectors []DeviceManagementExchangeConnector `json:"exchangeConnectors,omitempty"` + // DeviceEnrollmentConfigurations undocumented + DeviceEnrollmentConfigurations []DeviceEnrollmentConfiguration `json:"deviceEnrollmentConfigurations,omitempty"` + // ExchangeOnPremisesPolicy undocumented + ExchangeOnPremisesPolicy *DeviceManagementExchangeOnPremisesPolicy `json:"exchangeOnPremisesPolicy,omitempty"` + // ExchangeOnPremisesPolicies undocumented + ExchangeOnPremisesPolicies []DeviceManagementExchangeOnPremisesPolicy `json:"exchangeOnPremisesPolicies,omitempty"` + // ConditionalAccessSettings undocumented + ConditionalAccessSettings *OnPremisesConditionalAccessSettings `json:"conditionalAccessSettings,omitempty"` + // MobileThreatDefenseConnectors undocumented + MobileThreatDefenseConnectors []MobileThreatDefenseConnector `json:"mobileThreatDefenseConnectors,omitempty"` + // DeviceManagementPartners undocumented + DeviceManagementPartners []DeviceManagementPartner `json:"deviceManagementPartners,omitempty"` + // ComplianceManagementPartners undocumented + ComplianceManagementPartners []ComplianceManagementPartner `json:"complianceManagementPartners,omitempty"` + // Intents undocumented + Intents []DeviceManagementIntent `json:"intents,omitempty"` + // SettingDefinitions undocumented + SettingDefinitions []DeviceManagementSettingDefinition `json:"settingDefinitions,omitempty"` + // Templates undocumented + Templates []DeviceManagementTemplate `json:"templates,omitempty"` + // Categories undocumented + Categories []DeviceManagementSettingCategory `json:"categories,omitempty"` + // RemoteActionAudits undocumented + RemoteActionAudits []RemoteActionAudit `json:"remoteActionAudits,omitempty"` + // ApplePushNotificationCertificate undocumented + ApplePushNotificationCertificate *ApplePushNotificationCertificate `json:"applePushNotificationCertificate,omitempty"` + // DeviceManagementScripts undocumented + DeviceManagementScripts []DeviceManagementScript `json:"deviceManagementScripts,omitempty"` + // DeviceHealthScripts undocumented + DeviceHealthScripts []DeviceHealthScript `json:"deviceHealthScripts,omitempty"` + // ManagedDeviceOverview undocumented + ManagedDeviceOverview *ManagedDeviceOverview `json:"managedDeviceOverview,omitempty"` + // DetectedApps undocumented + DetectedApps []DetectedApp `json:"detectedApps,omitempty"` + // ManagedDevices undocumented + ManagedDevices []ManagedDevice `json:"managedDevices,omitempty"` + // WindowsMalwareInformation undocumented + WindowsMalwareInformation []WindowsMalwareInformation `json:"windowsMalwareInformation,omitempty"` + // DataSharingConsents undocumented + DataSharingConsents []DataSharingConsent `json:"dataSharingConsents,omitempty"` + // MobileAppTroubleshootingEvents undocumented + MobileAppTroubleshootingEvents []MobileAppTroubleshootingEvent `json:"mobileAppTroubleshootingEvents,omitempty"` + // UserExperienceAnalyticsOverview undocumented + UserExperienceAnalyticsOverview *UserExperienceAnalyticsOverview `json:"userExperienceAnalyticsOverview,omitempty"` + // UserExperienceAnalyticsBaselines undocumented + UserExperienceAnalyticsBaselines []UserExperienceAnalyticsBaseline `json:"userExperienceAnalyticsBaselines,omitempty"` + // UserExperienceAnalyticsCategories undocumented + UserExperienceAnalyticsCategories []UserExperienceAnalyticsCategory `json:"userExperienceAnalyticsCategories,omitempty"` + // UserExperienceAnalyticsDevicePerformance undocumented + UserExperienceAnalyticsDevicePerformance []UserExperienceAnalyticsDevicePerformance `json:"userExperienceAnalyticsDevicePerformance,omitempty"` + // UserExperienceAnalyticsRegressionSummary undocumented + UserExperienceAnalyticsRegressionSummary *UserExperienceAnalyticsRegressionSummary `json:"userExperienceAnalyticsRegressionSummary,omitempty"` + // UserExperienceAnalyticsDeviceStartupHistory undocumented + UserExperienceAnalyticsDeviceStartupHistory []UserExperienceAnalyticsDeviceStartupHistory `json:"userExperienceAnalyticsDeviceStartupHistory,omitempty"` + // DerivedCredentials undocumented + DerivedCredentials []DeviceManagementDerivedCredentialSettings `json:"derivedCredentials,omitempty"` + // WindowsAutopilotSettings undocumented + WindowsAutopilotSettings *WindowsAutopilotSettings `json:"windowsAutopilotSettings,omitempty"` + // WindowsAutopilotDeviceIdentities undocumented + WindowsAutopilotDeviceIdentities []WindowsAutopilotDeviceIdentity `json:"windowsAutopilotDeviceIdentities,omitempty"` + // WindowsAutopilotDeploymentProfiles undocumented + WindowsAutopilotDeploymentProfiles []WindowsAutopilotDeploymentProfile `json:"windowsAutopilotDeploymentProfiles,omitempty"` + // ImportedDeviceIdentities undocumented + ImportedDeviceIdentities []ImportedDeviceIdentity `json:"importedDeviceIdentities,omitempty"` + // DepOnboardingSettings undocumented + DepOnboardingSettings []DepOnboardingSetting `json:"depOnboardingSettings,omitempty"` + // ImportedWindowsAutopilotDeviceIdentities undocumented + ImportedWindowsAutopilotDeviceIdentities []ImportedWindowsAutopilotDeviceIdentity `json:"importedWindowsAutopilotDeviceIdentities,omitempty"` + // AppleUserInitiatedEnrollmentProfiles undocumented + AppleUserInitiatedEnrollmentProfiles []AppleUserInitiatedEnrollmentProfile `json:"appleUserInitiatedEnrollmentProfiles,omitempty"` + // ManagementConditions undocumented + ManagementConditions []ManagementCondition `json:"managementConditions,omitempty"` + // ManagementConditionStatements undocumented + ManagementConditionStatements []ManagementConditionStatement `json:"managementConditionStatements,omitempty"` + // GroupPolicyMigrationReports undocumented + GroupPolicyMigrationReports []GroupPolicyMigrationReport `json:"groupPolicyMigrationReports,omitempty"` + // GroupPolicyConfigurations undocumented + GroupPolicyConfigurations []GroupPolicyConfiguration `json:"groupPolicyConfigurations,omitempty"` + // GroupPolicyDefinitions undocumented + GroupPolicyDefinitions []GroupPolicyDefinition `json:"groupPolicyDefinitions,omitempty"` + // GroupPolicyDefinitionFiles undocumented + GroupPolicyDefinitionFiles []GroupPolicyDefinitionFile `json:"groupPolicyDefinitionFiles,omitempty"` + // NotificationMessageTemplates undocumented + NotificationMessageTemplates []NotificationMessageTemplate `json:"notificationMessageTemplates,omitempty"` + // DomainJoinConnectors undocumented + DomainJoinConnectors []DeviceManagementDomainJoinConnector `json:"domainJoinConnectors,omitempty"` + // RoleDefinitions undocumented + RoleDefinitions []RoleDefinition `json:"roleDefinitions,omitempty"` + // RoleAssignments undocumented + RoleAssignments []DeviceAndAppManagementRoleAssignment `json:"roleAssignments,omitempty"` + // RoleScopeTags undocumented + RoleScopeTags []RoleScopeTag `json:"roleScopeTags,omitempty"` + // ResourceOperations undocumented + ResourceOperations []ResourceOperation `json:"resourceOperations,omitempty"` + // RemoteAssistancePartners undocumented + RemoteAssistancePartners []RemoteAssistancePartner `json:"remoteAssistancePartners,omitempty"` + // Reports undocumented + Reports *DeviceManagementReports `json:"reports,omitempty"` + // TelecomExpenseManagementPartners undocumented + TelecomExpenseManagementPartners []TelecomExpenseManagementPartner `json:"telecomExpenseManagementPartners,omitempty"` + // EmbeddedSIMActivationCodePools undocumented + EmbeddedSIMActivationCodePools []EmbeddedSIMActivationCodePool `json:"embeddedSIMActivationCodePools,omitempty"` + // TroubleshootingEvents undocumented + TroubleshootingEvents []DeviceManagementTroubleshootingEvent `json:"troubleshootingEvents,omitempty"` + // AutopilotEvents undocumented + AutopilotEvents []DeviceManagementAutopilotEvent `json:"autopilotEvents,omitempty"` + // WindowsFeatureUpdateProfiles undocumented + WindowsFeatureUpdateProfiles []WindowsFeatureUpdateProfile `json:"windowsFeatureUpdateProfiles,omitempty"` + // WindowsInformationProtectionAppLearningSummaries undocumented + WindowsInformationProtectionAppLearningSummaries []WindowsInformationProtectionAppLearningSummary `json:"windowsInformationProtectionAppLearningSummaries,omitempty"` + // WindowsInformationProtectionNetworkLearningSummaries undocumented + WindowsInformationProtectionNetworkLearningSummaries []WindowsInformationProtectionNetworkLearningSummary `json:"windowsInformationProtectionNetworkLearningSummaries,omitempty"` + // IntuneBrandingProfiles undocumented + IntuneBrandingProfiles []IntuneBrandingProfile `json:"intuneBrandingProfiles,omitempty"` + // UserPfxCertificates undocumented + UserPfxCertificates []UserPFXCertificate `json:"userPfxCertificates,omitempty"` +} + +// DeviceManagementAbstractComplexSettingDefinition Entity representing the defintion for an abstract complex setting +type DeviceManagementAbstractComplexSettingDefinition struct { + // DeviceManagementSettingDefinition is the base model of DeviceManagementAbstractComplexSettingDefinition + DeviceManagementSettingDefinition + // Implementations List of definition IDs for all possible implementations of this abstract complex setting + Implementations []string `json:"implementations,omitempty"` +} + +// DeviceManagementAbstractComplexSettingInstance A setting instance representing a complex value for an abstract setting +type DeviceManagementAbstractComplexSettingInstance struct { + // DeviceManagementSettingInstance is the base model of DeviceManagementAbstractComplexSettingInstance + DeviceManagementSettingInstance + // ImplementationID The definition ID for the chosen implementation of this complex setting + ImplementationID *string `json:"implementationId,omitempty"` + // Value undocumented + Value []DeviceManagementSettingInstance `json:"value,omitempty"` +} + +// DeviceManagementApplicabilityRuleDeviceMode undocumented +type DeviceManagementApplicabilityRuleDeviceMode struct { + // Object is the base model of DeviceManagementApplicabilityRuleDeviceMode + Object + // DeviceMode Applicability rule for device mode. + DeviceMode *Windows10DeviceModeType `json:"deviceMode,omitempty"` + // Name Name for object. + Name *string `json:"name,omitempty"` + // RuleType Applicability Rule type. + RuleType *DeviceManagementApplicabilityRuleType `json:"ruleType,omitempty"` +} + +// DeviceManagementApplicabilityRuleOsEdition undocumented +type DeviceManagementApplicabilityRuleOsEdition struct { + // Object is the base model of DeviceManagementApplicabilityRuleOsEdition + Object + // OsEditionTypes Applicability rule OS edition type. + OsEditionTypes []Windows10EditionType `json:"osEditionTypes,omitempty"` + // Name Name for object. + Name *string `json:"name,omitempty"` + // RuleType Applicability Rule type. + RuleType *DeviceManagementApplicabilityRuleType `json:"ruleType,omitempty"` +} + +// DeviceManagementApplicabilityRuleOsVersion undocumented +type DeviceManagementApplicabilityRuleOsVersion struct { + // Object is the base model of DeviceManagementApplicabilityRuleOsVersion + Object + // MinOSVersion Min OS version for Applicability Rule. + MinOSVersion *string `json:"minOSVersion,omitempty"` + // MaxOSVersion Max OS version for Applicability Rule. + MaxOSVersion *string `json:"maxOSVersion,omitempty"` + // Name Name for object. + Name *string `json:"name,omitempty"` + // RuleType Applicability Rule type. + RuleType *DeviceManagementApplicabilityRuleType `json:"ruleType,omitempty"` +} + +// DeviceManagementAutopilotEvent Represents an Autopilot flow event. +type DeviceManagementAutopilotEvent struct { + // Entity is the base model of DeviceManagementAutopilotEvent + Entity + // EventDateTime Time when the event occurred . + EventDateTime *time.Time `json:"eventDateTime,omitempty"` + // DeviceRegisteredDateTime Device registration date. + DeviceRegisteredDateTime *time.Time `json:"deviceRegisteredDateTime,omitempty"` + // EnrollmentStartDateTime Device enrollment start date. + EnrollmentStartDateTime *time.Time `json:"enrollmentStartDateTime,omitempty"` + // EnrollmentType Enrollment type. + EnrollmentType *WindowsAutopilotEnrollmentType `json:"enrollmentType,omitempty"` + // DeviceSerialNumber Device serial number. + DeviceSerialNumber *string `json:"deviceSerialNumber,omitempty"` + // ManagedDeviceName Managed device name. + ManagedDeviceName *string `json:"managedDeviceName,omitempty"` + // UserPrincipalName User principal name used to enroll the device. + UserPrincipalName *string `json:"userPrincipalName,omitempty"` + // WindowsAutopilotDeploymentProfileDisplayName Autopilot profile name. + WindowsAutopilotDeploymentProfileDisplayName *string `json:"windowsAutopilotDeploymentProfileDisplayName,omitempty"` + // EnrollmentState Enrollment state like Enrolled, Failed. + EnrollmentState *EnrollmentState `json:"enrollmentState,omitempty"` + // Windows10EnrollmentCompletionPageConfigurationDisplayName Enrollment Status Page profile name + Windows10EnrollmentCompletionPageConfigurationDisplayName *string `json:"windows10EnrollmentCompletionPageConfigurationDisplayName,omitempty"` + // DeploymentState Deployment state like Success, Failure, InProgress, SuccessWithTimeout. + DeploymentState *WindowsAutopilotDeploymentState `json:"deploymentState,omitempty"` + // OsVersion Device operating system version. + OsVersion *string `json:"osVersion,omitempty"` + // DeploymentDuration Autopilot deployment duration including enrollment. + DeploymentDuration *Duration `json:"deploymentDuration,omitempty"` + // DeploymentTotalDuration Total deployment duration from enrollment to Desktop screen. + DeploymentTotalDuration *Duration `json:"deploymentTotalDuration,omitempty"` + // DevicePreparationDuration Time spent in device enrollment. + DevicePreparationDuration *Duration `json:"devicePreparationDuration,omitempty"` + // DeviceSetupDuration Time spent in device ESP. + DeviceSetupDuration *Duration `json:"deviceSetupDuration,omitempty"` + // AccountSetupDuration Time spent in user ESP. + AccountSetupDuration *Duration `json:"accountSetupDuration,omitempty"` + // DeploymentStartDateTime Deployment start time. + DeploymentStartDateTime *time.Time `json:"deploymentStartDateTime,omitempty"` + // DeploymentEndDateTime Deployment end time. + DeploymentEndDateTime *time.Time `json:"deploymentEndDateTime,omitempty"` + // TargetedAppCount Count of applications targeted. + TargetedAppCount *int `json:"targetedAppCount,omitempty"` + // TargetedPolicyCount Count of policies targeted. + TargetedPolicyCount *int `json:"targetedPolicyCount,omitempty"` + // EnrollmentFailureDetails Enrollment failure details. + EnrollmentFailureDetails *string `json:"enrollmentFailureDetails,omitempty"` +} + +// DeviceManagementBooleanSettingInstance A setting instance representing a boolean value +type DeviceManagementBooleanSettingInstance struct { + // DeviceManagementSettingInstance is the base model of DeviceManagementBooleanSettingInstance + DeviceManagementSettingInstance + // Value The boolean value + Value *bool `json:"value,omitempty"` +} + +// DeviceManagementCachedReportConfiguration Entity representing the configuration of a cached report +type DeviceManagementCachedReportConfiguration struct { + // Entity is the base model of DeviceManagementCachedReportConfiguration + Entity + // ReportName Name of the report + ReportName *string `json:"reportName,omitempty"` + // Filter Filters applied on report creation. + Filter *string `json:"filter,omitempty"` + // Select Columns selected from the report + Select []string `json:"select,omitempty"` + // OrderBy Ordering of columns in the report + OrderBy []string `json:"orderBy,omitempty"` + // Status Status of the cached report + Status *DeviceManagementReportStatus `json:"status,omitempty"` + // LastRefreshDateTime Time that the cached report was last refreshed + LastRefreshDateTime *time.Time `json:"lastRefreshDateTime,omitempty"` + // ExpirationDateTime Time that the cached report expires + ExpirationDateTime *time.Time `json:"expirationDateTime,omitempty"` +} + +// DeviceManagementCollectionSettingDefinition Entity representing the defintion for a collection setting +type DeviceManagementCollectionSettingDefinition struct { + // DeviceManagementSettingDefinition is the base model of DeviceManagementCollectionSettingDefinition + DeviceManagementSettingDefinition + // ElementDefinitionID The Setting Definition ID that describes what each element of the collection looks like + ElementDefinitionID *string `json:"elementDefinitionId,omitempty"` +} + +// DeviceManagementCollectionSettingInstance A setting instance representing a collection of values +type DeviceManagementCollectionSettingInstance struct { + // DeviceManagementSettingInstance is the base model of DeviceManagementCollectionSettingInstance + DeviceManagementSettingInstance + // Value undocumented + Value []DeviceManagementSettingInstance `json:"value,omitempty"` +} + +// DeviceManagementComplexSettingDefinition Entity representing the defintion for a complex setting +type DeviceManagementComplexSettingDefinition struct { + // DeviceManagementSettingDefinition is the base model of DeviceManagementComplexSettingDefinition + DeviceManagementSettingDefinition + // PropertyDefinitionIDs The definitions of each property of the complex setting + PropertyDefinitionIDs []string `json:"propertyDefinitionIds,omitempty"` +} + +// DeviceManagementComplexSettingInstance A setting instance representing a complex value +type DeviceManagementComplexSettingInstance struct { + // DeviceManagementSettingInstance is the base model of DeviceManagementComplexSettingInstance + DeviceManagementSettingInstance + // Value undocumented + Value []DeviceManagementSettingInstance `json:"value,omitempty"` +} + +// DeviceManagementConstraint undocumented +type DeviceManagementConstraint struct { + // Object is the base model of DeviceManagementConstraint + Object +} + +// DeviceManagementDerivedCredentialSettings Entity that describes tenant level settings for derived credentials +type DeviceManagementDerivedCredentialSettings struct { + // Entity is the base model of DeviceManagementDerivedCredentialSettings + Entity + // HelpURL The URL that will be accessible to end users as they retrieve a derived credential using the Company Portal. + HelpURL *string `json:"helpUrl,omitempty"` + // DisplayName The display name for the profile. + DisplayName *string `json:"displayName,omitempty"` + // Issuer The derived credential provider to use. + Issuer *DeviceManagementDerivedCredentialIssuer `json:"issuer,omitempty"` + // 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. + NotificationType *DeviceManagementDerivedCredentialNotificationType `json:"notificationType,omitempty"` +} + +// DeviceManagementDomainJoinConnector A Domain Join Connector is a connector that is responsible to allocate (and delete) machine account blobs +type DeviceManagementDomainJoinConnector struct { + // Entity is the base model of DeviceManagementDomainJoinConnector + Entity + // DisplayName The connector display name. + DisplayName *string `json:"displayName,omitempty"` + // LastConnectionDateTime Last time connector contacted Intune. + LastConnectionDateTime *time.Time `json:"lastConnectionDateTime,omitempty"` + // State The connector state. + State *DeviceManagementDomainJoinConnectorState `json:"state,omitempty"` + // Version The version of the connector. + Version *string `json:"version,omitempty"` +} + +// DeviceManagementEnumConstraint undocumented +type DeviceManagementEnumConstraint struct { + // DeviceManagementConstraint is the base model of DeviceManagementEnumConstraint + DeviceManagementConstraint + // Values List of valid values for this string + Values []DeviceManagementEnumValue `json:"values,omitempty"` +} + +// DeviceManagementEnumValue undocumented +type DeviceManagementEnumValue struct { + // Object is the base model of DeviceManagementEnumValue + Object + // Value The raw enum value text + Value *string `json:"value,omitempty"` + // DisplayName Display name for this enum value + DisplayName *string `json:"displayName,omitempty"` +} + +// DeviceManagementExchangeAccessRule undocumented +type DeviceManagementExchangeAccessRule struct { + // Object is the base model of DeviceManagementExchangeAccessRule + Object + // DeviceClass Device Class which will be impacted by this rule. + DeviceClass *DeviceManagementExchangeDeviceClass `json:"deviceClass,omitempty"` + // AccessLevel Access Level for Exchange granted by this rule. + AccessLevel *DeviceManagementExchangeAccessLevel `json:"accessLevel,omitempty"` +} + +// DeviceManagementExchangeConnector Entity which represents a connection to an Exchange environment. +type DeviceManagementExchangeConnector struct { + // Entity is the base model of DeviceManagementExchangeConnector + Entity + // LastSyncDateTime Last sync time for the Exchange Connector + LastSyncDateTime *time.Time `json:"lastSyncDateTime,omitempty"` + // Status Exchange Connector Status + Status *DeviceManagementExchangeConnectorStatus `json:"status,omitempty"` + // PrimarySMTPAddress Email address used to configure the Service To Service Exchange Connector. + PrimarySMTPAddress *string `json:"primarySmtpAddress,omitempty"` + // ServerName The name of the Exchange server. + ServerName *string `json:"serverName,omitempty"` + // ConnectorServerName The name of the server hosting the Exchange Connector. + ConnectorServerName *string `json:"connectorServerName,omitempty"` + // ExchangeConnectorType The type of Exchange Connector Configured. + ExchangeConnectorType *DeviceManagementExchangeConnectorType `json:"exchangeConnectorType,omitempty"` + // Version The version of the ExchangeConnectorAgent + Version *string `json:"version,omitempty"` + // ExchangeAlias An alias assigned to the Exchange server + ExchangeAlias *string `json:"exchangeAlias,omitempty"` + // ExchangeOrganization Exchange Organization to the Exchange server + ExchangeOrganization *string `json:"exchangeOrganization,omitempty"` +} + +// DeviceManagementExchangeDeviceClass undocumented +type DeviceManagementExchangeDeviceClass struct { + // Object is the base model of DeviceManagementExchangeDeviceClass + Object + // Name Name of the device class which will be impacted by this rule. + Name *string `json:"name,omitempty"` + // Type Type of device which is impacted by this rule e.g. Model, Family + Type *DeviceManagementExchangeAccessRuleType `json:"type,omitempty"` +} + +// DeviceManagementExchangeOnPremisesPolicy Singleton entity which represents the Exchange OnPremises policy configured for a tenant. +type DeviceManagementExchangeOnPremisesPolicy struct { + // Entity is the base model of DeviceManagementExchangeOnPremisesPolicy + Entity + // NotificationContent Notification text that will be sent to users quarantined by this policy. This is UTF8 encoded byte array HTML. + NotificationContent *Binary `json:"notificationContent,omitempty"` + // DefaultAccessLevel Default access state in Exchange. This rule applies globally to the entire Exchange organization + DefaultAccessLevel *DeviceManagementExchangeAccessLevel `json:"defaultAccessLevel,omitempty"` + // AccessRules The list of device access rules in Exchange. The access rules apply globally to the entire Exchange organization + AccessRules []DeviceManagementExchangeAccessRule `json:"accessRules,omitempty"` + // KnownDeviceClasses The list of device classes known to Exchange + KnownDeviceClasses []DeviceManagementExchangeDeviceClass `json:"knownDeviceClasses,omitempty"` + // ConditionalAccessSettings undocumented + ConditionalAccessSettings *OnPremisesConditionalAccessSettings `json:"conditionalAccessSettings,omitempty"` +} + +// DeviceManagementExportJob Entity representing a job to export a report +type DeviceManagementExportJob struct { + // Entity is the base model of DeviceManagementExportJob + Entity + // ReportName Name of the report + ReportName *string `json:"reportName,omitempty"` + // Filter Filters applied on the report + Filter *string `json:"filter,omitempty"` + // Select Columns selected from the report + Select []string `json:"select,omitempty"` + // Format Format of the exported report + Format *DeviceManagementReportFileFormat `json:"format,omitempty"` + // 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. + SnapshotID *string `json:"snapshotId,omitempty"` + // Status Status of the export job + Status *DeviceManagementReportStatus `json:"status,omitempty"` + // URL Temporary location of the exported report + URL *string `json:"url,omitempty"` + // RequestDateTime Time that the exported report was requested + RequestDateTime *time.Time `json:"requestDateTime,omitempty"` + // ExpirationDateTime Time that the exported report expires + ExpirationDateTime *time.Time `json:"expirationDateTime,omitempty"` +} + +// DeviceManagementIntegerSettingInstance A setting instance representing an integer value +type DeviceManagementIntegerSettingInstance struct { + // DeviceManagementSettingInstance is the base model of DeviceManagementIntegerSettingInstance + DeviceManagementSettingInstance + // Value The integer value + Value *int `json:"value,omitempty"` +} + +// DeviceManagementIntent Entity that represents an intent to apply settings to a device +type DeviceManagementIntent struct { + // Entity is the base model of DeviceManagementIntent + Entity + // DisplayName The user given display name + DisplayName *string `json:"displayName,omitempty"` + // Description The user given description + Description *string `json:"description,omitempty"` + // IsAssigned Signifies whether or not the intent is assigned to users + IsAssigned *bool `json:"isAssigned,omitempty"` + // LastModifiedDateTime When the intent was last modified + LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"` + // TemplateID The ID of the template this intent was created from (if any) + TemplateID *string `json:"templateId,omitempty"` + // RoleScopeTagIDs List of Scope Tags for this Entity instance. + RoleScopeTagIDs []string `json:"roleScopeTagIds,omitempty"` + // Settings undocumented + Settings []DeviceManagementSettingInstance `json:"settings,omitempty"` + // Categories undocumented + Categories []DeviceManagementIntentSettingCategory `json:"categories,omitempty"` + // Assignments undocumented + Assignments []DeviceManagementIntentAssignment `json:"assignments,omitempty"` + // DeviceSettingStateSummaries undocumented + DeviceSettingStateSummaries []DeviceManagementIntentDeviceSettingStateSummary `json:"deviceSettingStateSummaries,omitempty"` + // DeviceStates undocumented + DeviceStates []DeviceManagementIntentDeviceState `json:"deviceStates,omitempty"` + // UserStates undocumented + UserStates []DeviceManagementIntentUserState `json:"userStates,omitempty"` + // DeviceStateSummary undocumented + DeviceStateSummary *DeviceManagementIntentDeviceStateSummary `json:"deviceStateSummary,omitempty"` + // UserStateSummary undocumented + UserStateSummary *DeviceManagementIntentUserStateSummary `json:"userStateSummary,omitempty"` +} + +// DeviceManagementIntentAssignment Intent assignment entity +type DeviceManagementIntentAssignment struct { + // Entity is the base model of DeviceManagementIntentAssignment + Entity + // Target The assignment target + Target *DeviceAndAppManagementAssignmentTarget `json:"target,omitempty"` +} + +// DeviceManagementIntentDeviceSettingStateSummary Entity that represents device setting state summary for an intent +type DeviceManagementIntentDeviceSettingStateSummary struct { + // Entity is the base model of DeviceManagementIntentDeviceSettingStateSummary + Entity + // SettingName Name of a setting + SettingName *string `json:"settingName,omitempty"` + // CompliantCount Number of compliant devices + CompliantCount *int `json:"compliantCount,omitempty"` + // ConflictCount Number of devices in conflict + ConflictCount *int `json:"conflictCount,omitempty"` + // ErrorCount Number of error devices + ErrorCount *int `json:"errorCount,omitempty"` + // NonCompliantCount Number of non compliant devices + NonCompliantCount *int `json:"nonCompliantCount,omitempty"` + // NotApplicableCount Number of not applicable devices + NotApplicableCount *int `json:"notApplicableCount,omitempty"` + // RemediatedCount Number of remediated devices + RemediatedCount *int `json:"remediatedCount,omitempty"` +} + +// DeviceManagementIntentDeviceState Entity that represents device state for an intent +type DeviceManagementIntentDeviceState struct { + // Entity is the base model of DeviceManagementIntentDeviceState + Entity + // UserPrincipalName The user principal name that is being reported on a device + UserPrincipalName *string `json:"userPrincipalName,omitempty"` + // UserName The user name that is being reported on a device + UserName *string `json:"userName,omitempty"` + // DeviceDisplayName Device name that is being reported + DeviceDisplayName *string `json:"deviceDisplayName,omitempty"` + // LastReportedDateTime Last modified date time of an intent report + LastReportedDateTime *time.Time `json:"lastReportedDateTime,omitempty"` + // State Device state for an intent + State *ComplianceStatus `json:"state,omitempty"` + // DeviceID Device id that is being reported + DeviceID *string `json:"deviceId,omitempty"` +} + +// DeviceManagementIntentDeviceStateSummary Entity that represents device state summary for an intent +type DeviceManagementIntentDeviceStateSummary struct { + // Entity is the base model of DeviceManagementIntentDeviceStateSummary + Entity + // ConflictCount Number of devices in conflict + ConflictCount *int `json:"conflictCount,omitempty"` + // ErrorCount Number of error devices + ErrorCount *int `json:"errorCount,omitempty"` + // FailedCount Number of failed devices + FailedCount *int `json:"failedCount,omitempty"` + // NotApplicableCount Number of not applicable devices + NotApplicableCount *int `json:"notApplicableCount,omitempty"` + // NotApplicablePlatformCount Number of not applicable devices due to mismatch platform and policy + NotApplicablePlatformCount *int `json:"notApplicablePlatformCount,omitempty"` + // SuccessCount Number of succeeded devices + SuccessCount *int `json:"successCount,omitempty"` +} + +// DeviceManagementIntentSettingCategory Entity representing an intent setting category +type DeviceManagementIntentSettingCategory struct { + // DeviceManagementSettingCategory is the base model of DeviceManagementIntentSettingCategory + DeviceManagementSettingCategory + // Settings undocumented + Settings []DeviceManagementSettingInstance `json:"settings,omitempty"` +} + +// DeviceManagementIntentUserState Entity that represents user state for an intent +type DeviceManagementIntentUserState struct { + // Entity is the base model of DeviceManagementIntentUserState + Entity + // UserPrincipalName The user principal name that is being reported on a device + UserPrincipalName *string `json:"userPrincipalName,omitempty"` + // UserName The user name that is being reported on a device + UserName *string `json:"userName,omitempty"` + // DeviceCount Count of Devices that belongs to a user for an intent + DeviceCount *int `json:"deviceCount,omitempty"` + // LastReportedDateTime Last modified date time of an intent report + LastReportedDateTime *time.Time `json:"lastReportedDateTime,omitempty"` + // State User state for an intent + State *ComplianceStatus `json:"state,omitempty"` +} + +// DeviceManagementIntentUserStateSummary Entity that represents user state summary for an intent +type DeviceManagementIntentUserStateSummary struct { + // Entity is the base model of DeviceManagementIntentUserStateSummary + Entity + // ConflictCount Number of users in conflict + ConflictCount *int `json:"conflictCount,omitempty"` + // ErrorCount Number of error users + ErrorCount *int `json:"errorCount,omitempty"` + // FailedCount Number of failed users + FailedCount *int `json:"failedCount,omitempty"` + // NotApplicableCount Number of not applicable users + NotApplicableCount *int `json:"notApplicableCount,omitempty"` + // SuccessCount Number of succeeded users + SuccessCount *int `json:"successCount,omitempty"` +} + +// DeviceManagementPartner Entity which represents a connection to device management partner. +type DeviceManagementPartner struct { + // Entity is the base model of DeviceManagementPartner + Entity + // LastHeartbeatDateTime Timestamp of last heartbeat after admin enabled option Connect to Device management Partner + LastHeartbeatDateTime *time.Time `json:"lastHeartbeatDateTime,omitempty"` + // PartnerState Partner state of this tenant + PartnerState *DeviceManagementPartnerTenantState `json:"partnerState,omitempty"` + // PartnerAppType Partner App type + PartnerAppType *DeviceManagementPartnerAppType `json:"partnerAppType,omitempty"` + // SingleTenantAppID Partner Single tenant App id + SingleTenantAppID *string `json:"singleTenantAppId,omitempty"` + // DisplayName Partner display name + DisplayName *string `json:"displayName,omitempty"` + // IsConfigured Whether device management partner is configured or not + IsConfigured *bool `json:"isConfigured,omitempty"` + // WhenPartnerDevicesWillBeRemoved DateTime in UTC when PartnerDevices will be removed. This will become obselete soon. + WhenPartnerDevicesWillBeRemoved *time.Time `json:"whenPartnerDevicesWillBeRemoved,omitempty"` + // WhenPartnerDevicesWillBeMarkedAsNonCompliant DateTime in UTC when PartnerDevices will be marked as NonCompliant. This will become obselete soon. + WhenPartnerDevicesWillBeMarkedAsNonCompliant *time.Time `json:"whenPartnerDevicesWillBeMarkedAsNonCompliant,omitempty"` + // WhenPartnerDevicesWillBeRemovedDateTime DateTime in UTC when PartnerDevices will be removed + WhenPartnerDevicesWillBeRemovedDateTime *time.Time `json:"whenPartnerDevicesWillBeRemovedDateTime,omitempty"` + // WhenPartnerDevicesWillBeMarkedAsNonCompliantDateTime DateTime in UTC when PartnerDevices will be marked as NonCompliant + WhenPartnerDevicesWillBeMarkedAsNonCompliantDateTime *time.Time `json:"whenPartnerDevicesWillBeMarkedAsNonCompliantDateTime,omitempty"` + // GroupsRequiringPartnerEnrollment User groups that specifies whether enrollment is through partner. + GroupsRequiringPartnerEnrollment []DeviceManagementPartnerAssignment `json:"groupsRequiringPartnerEnrollment,omitempty"` +} + +// DeviceManagementPartnerAssignment undocumented +type DeviceManagementPartnerAssignment struct { + // Object is the base model of DeviceManagementPartnerAssignment + Object + // Target User groups targeting for devices to be enrolled through partner. + Target *DeviceAndAppManagementAssignmentTarget `json:"target,omitempty"` +} + +// DeviceManagementReportSchedule Entity representing a schedule for which reports are delivered +type DeviceManagementReportSchedule struct { + // Entity is the base model of DeviceManagementReportSchedule + Entity + // ReportScheduleName Name of the schedule + ReportScheduleName *string `json:"reportScheduleName,omitempty"` + // Subject Subject of the scheduled reports that are delivered + Subject *string `json:"subject,omitempty"` + // Emails Emails to which the scheduled reports are delivered + Emails []string `json:"emails,omitempty"` + // Recurrence Frequency of scheduled report delivery + Recurrence *DeviceManagementScheduledReportRecurrence `json:"recurrence,omitempty"` + // StartDateTime Time that the delivery of the scheduled reports starts + StartDateTime *time.Time `json:"startDateTime,omitempty"` + // EndDateTime Time that the delivery of the scheduled reports ends + EndDateTime *time.Time `json:"endDateTime,omitempty"` + // UserID The Id of the User who created the report + UserID *string `json:"userId,omitempty"` + // ReportName Name of the report + ReportName *string `json:"reportName,omitempty"` + // Filter Filters applied on the report + Filter *string `json:"filter,omitempty"` + // Select Columns selected from the report + Select []string `json:"select,omitempty"` + // OrderBy Ordering of columns in the report + OrderBy []string `json:"orderBy,omitempty"` + // Format Format of the scheduled report + Format *DeviceManagementReportFileFormat `json:"format,omitempty"` +} + +// DeviceManagementReports Singleton entity that acts as a container for all reports functionality. +type DeviceManagementReports struct { + // Entity is the base model of DeviceManagementReports + Entity + // CachedReportConfigurations undocumented + CachedReportConfigurations []DeviceManagementCachedReportConfiguration `json:"cachedReportConfigurations,omitempty"` + // ExportJobs undocumented + ExportJobs []DeviceManagementExportJob `json:"exportJobs,omitempty"` + // ReportSchedules undocumented + ReportSchedules []DeviceManagementReportSchedule `json:"reportSchedules,omitempty"` +} + +// 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. +type DeviceManagementScript struct { + // Entity is the base model of DeviceManagementScript + Entity + // DisplayName Name of the device management script. + DisplayName *string `json:"displayName,omitempty"` + // Description Optional description for the device management script. + Description *string `json:"description,omitempty"` + // ScriptContent The script content. + ScriptContent *Binary `json:"scriptContent,omitempty"` + // CreatedDateTime The date and time the device management script was created. This property is read-only. + CreatedDateTime *time.Time `json:"createdDateTime,omitempty"` + // LastModifiedDateTime The date and time the device management script was last modified. This property is read-only. + LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"` + // RunAsAccount Indicates the type of execution context. + RunAsAccount *RunAsAccountType `json:"runAsAccount,omitempty"` + // EnforceSignatureCheck Indicate whether the script signature needs be checked. + EnforceSignatureCheck *bool `json:"enforceSignatureCheck,omitempty"` + // FileName Script file name. + FileName *string `json:"fileName,omitempty"` + // RoleScopeTagIDs List of Scope Tag IDs for this PowerShellScript instance. + RoleScopeTagIDs []string `json:"roleScopeTagIds,omitempty"` + // RunAs32Bit A value indicating whether the PowerShell script should run as 32-bit + RunAs32Bit *bool `json:"runAs32Bit,omitempty"` + // GroupAssignments undocumented + GroupAssignments []DeviceManagementScriptGroupAssignment `json:"groupAssignments,omitempty"` + // Assignments undocumented + Assignments []DeviceManagementScriptAssignment `json:"assignments,omitempty"` + // RunSummary undocumented + RunSummary *DeviceManagementScriptRunSummary `json:"runSummary,omitempty"` + // DeviceRunStates undocumented + DeviceRunStates []DeviceManagementScriptDeviceState `json:"deviceRunStates,omitempty"` + // UserRunStates undocumented + UserRunStates []DeviceManagementScriptUserState `json:"userRunStates,omitempty"` +} + +// DeviceManagementScriptAssignment Contains properties used to assign a device management script to a group. +type DeviceManagementScriptAssignment struct { + // Entity is the base model of DeviceManagementScriptAssignment + Entity + // Target The Id of the Azure Active Directory group we are targeting the script to. + Target *DeviceAndAppManagementAssignmentTarget `json:"target,omitempty"` +} + +// DeviceManagementScriptDeviceState Contains properties for device run state of the device management script. +type DeviceManagementScriptDeviceState struct { + // Entity is the base model of DeviceManagementScriptDeviceState + Entity + // RunState State of latest run of the device management script. + RunState *RunState `json:"runState,omitempty"` + // ResultMessage Details of execution output. + ResultMessage *string `json:"resultMessage,omitempty"` + // LastStateUpdateDateTime Latest time the device management script executes. + LastStateUpdateDateTime *time.Time `json:"lastStateUpdateDateTime,omitempty"` + // ErrorCode Error code corresponding to erroneous execution of the device management script. + ErrorCode *int `json:"errorCode,omitempty"` + // ErrorDescription Error description corresponding to erroneous execution of the device management script. + ErrorDescription *string `json:"errorDescription,omitempty"` + // ManagedDevice undocumented + ManagedDevice *ManagedDevice `json:"managedDevice,omitempty"` +} + +// DeviceManagementScriptGroupAssignment Contains properties used to assign a device management script to a group. +type DeviceManagementScriptGroupAssignment struct { + // Entity is the base model of DeviceManagementScriptGroupAssignment + Entity + // TargetGroupID The Id of the Azure Active Directory group we are targeting the script to. + TargetGroupID *string `json:"targetGroupId,omitempty"` +} + +// DeviceManagementScriptPolicySetItem A class containing the properties used for device management script PolicySetItem. +type DeviceManagementScriptPolicySetItem struct { + // PolicySetItem is the base model of DeviceManagementScriptPolicySetItem + PolicySetItem +} + +// DeviceManagementScriptRunSummary Contains properties for the run summary of a device management script. +type DeviceManagementScriptRunSummary struct { + // Entity is the base model of DeviceManagementScriptRunSummary + Entity + // SuccessDeviceCount Success device count. + SuccessDeviceCount *int `json:"successDeviceCount,omitempty"` + // ErrorDeviceCount Error device count. + ErrorDeviceCount *int `json:"errorDeviceCount,omitempty"` + // SuccessUserCount Success user count. + SuccessUserCount *int `json:"successUserCount,omitempty"` + // ErrorUserCount Error user count. + ErrorUserCount *int `json:"errorUserCount,omitempty"` +} + +// DeviceManagementScriptUserState Contains properties for user run state of the device management script. +type DeviceManagementScriptUserState struct { + // Entity is the base model of DeviceManagementScriptUserState + Entity + // SuccessDeviceCount Success device count for specific user. + SuccessDeviceCount *int `json:"successDeviceCount,omitempty"` + // ErrorDeviceCount Error device count for specific user. + ErrorDeviceCount *int `json:"errorDeviceCount,omitempty"` + // UserPrincipalName User principle name of specific user. + UserPrincipalName *string `json:"userPrincipalName,omitempty"` + // DeviceRunStates undocumented + DeviceRunStates []DeviceManagementScriptDeviceState `json:"deviceRunStates,omitempty"` +} + +// DeviceManagementSettingBooleanConstraint undocumented +type DeviceManagementSettingBooleanConstraint struct { + // DeviceManagementConstraint is the base model of DeviceManagementSettingBooleanConstraint + DeviceManagementConstraint + // Value The boolean value to compare against + Value *bool `json:"value,omitempty"` +} + +// DeviceManagementSettingCategory Entity representing a setting category +type DeviceManagementSettingCategory struct { + // Entity is the base model of DeviceManagementSettingCategory + Entity + // DisplayName The category name + DisplayName *string `json:"displayName,omitempty"` + // SettingDefinitions undocumented + SettingDefinitions []DeviceManagementSettingDefinition `json:"settingDefinitions,omitempty"` +} + +// DeviceManagementSettingComparison undocumented +type DeviceManagementSettingComparison struct { + // Object is the base model of DeviceManagementSettingComparison + Object + // ID The setting ID + ID *string `json:"id,omitempty"` + // DisplayName The setting's display name + DisplayName *string `json:"displayName,omitempty"` + // DefinitionID The ID of the setting definition for this instance + DefinitionID *string `json:"definitionId,omitempty"` + // CurrentValueJSON JSON representation of current intent (or) template setting's value + CurrentValueJSON *string `json:"currentValueJson,omitempty"` + // NewValueJSON JSON representation of new template setting's value + NewValueJSON *string `json:"newValueJson,omitempty"` + // ComparisonResult Setting comparison result + ComparisonResult *DeviceManagementComparisonResult `json:"comparisonResult,omitempty"` +} + +// DeviceManagementSettingDefinition Entity representing the defintion for a given setting +type DeviceManagementSettingDefinition struct { + // Entity is the base model of DeviceManagementSettingDefinition + Entity + // ValueType The data type of the value + ValueType *DeviceManangementIntentValueType `json:"valueType,omitempty"` + // DisplayName The setting's display name + DisplayName *string `json:"displayName,omitempty"` + // IsTopLevel If the setting is top level, it can be configured without the need to be wrapped in a collection or complex setting + IsTopLevel *bool `json:"isTopLevel,omitempty"` + // Description The setting's description + Description *string `json:"description,omitempty"` + // DocumentationURL Url to setting documentation + DocumentationURL *string `json:"documentationUrl,omitempty"` + // Keywords Keywords associated with the setting + Keywords []string `json:"keywords,omitempty"` + // Constraints Collection of constraints for the setting value + Constraints []DeviceManagementConstraint `json:"constraints,omitempty"` + // Dependencies Collection of dependencies on other settings + Dependencies []DeviceManagementSettingDependency `json:"dependencies,omitempty"` +} + +// DeviceManagementSettingDependency undocumented +type DeviceManagementSettingDependency struct { + // Object is the base model of DeviceManagementSettingDependency + Object + // DefinitionID The setting definition ID of the setting depended on + DefinitionID *string `json:"definitionId,omitempty"` + // Constraints Collection of constraints for the dependency setting value + Constraints []DeviceManagementConstraint `json:"constraints,omitempty"` +} + +// DeviceManagementSettingInstance Base type for a setting instance +type DeviceManagementSettingInstance struct { + // Entity is the base model of DeviceManagementSettingInstance + Entity + // DefinitionID The ID of the setting definition for this instance + DefinitionID *string `json:"definitionId,omitempty"` + // ValueJSON JSON representation of the value + ValueJSON *string `json:"valueJson,omitempty"` +} + +// DeviceManagementSettingIntegerConstraint undocumented +type DeviceManagementSettingIntegerConstraint struct { + // DeviceManagementConstraint is the base model of DeviceManagementSettingIntegerConstraint + DeviceManagementConstraint + // MinimumValue The minimum permitted value + MinimumValue *int `json:"minimumValue,omitempty"` + // MaximumValue The maximum permitted value + MaximumValue *int `json:"maximumValue,omitempty"` +} + +// DeviceManagementSettingRegexConstraint undocumented +type DeviceManagementSettingRegexConstraint struct { + // DeviceManagementConstraint is the base model of DeviceManagementSettingRegexConstraint + DeviceManagementConstraint + // Regex The RegEx pattern to match against + Regex *string `json:"regex,omitempty"` +} + +// DeviceManagementSettingStringLengthConstraint undocumented +type DeviceManagementSettingStringLengthConstraint struct { + // DeviceManagementConstraint is the base model of DeviceManagementSettingStringLengthConstraint + DeviceManagementConstraint + // MinimumLength The minimum permitted string length + MinimumLength *int `json:"minimumLength,omitempty"` + // MaximumLength The maximum permitted string length + MaximumLength *int `json:"maximumLength,omitempty"` +} + +// DeviceManagementSettingXMLConstraint undocumented +type DeviceManagementSettingXMLConstraint struct { + // DeviceManagementConstraint is the base model of DeviceManagementSettingXMLConstraint + DeviceManagementConstraint +} + +// DeviceManagementSettings undocumented +type DeviceManagementSettings struct { + // Object is the base model of DeviceManagementSettings + Object + // DeviceComplianceCheckinThresholdDays The number of days a device is allowed to go without checking in to remain compliant. + DeviceComplianceCheckinThresholdDays *int `json:"deviceComplianceCheckinThresholdDays,omitempty"` + // IsScheduledActionEnabled Is feature enabled or not for scheduled action for rule. + IsScheduledActionEnabled *bool `json:"isScheduledActionEnabled,omitempty"` + // SecureByDefault Device should be noncompliant when there is no compliance policy targeted when this is true + SecureByDefault *bool `json:"secureByDefault,omitempty"` + // EnhancedJailBreak Is feature enabled or not for enhanced jailbreak detection. + EnhancedJailBreak *bool `json:"enhancedJailBreak,omitempty"` + // 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 + DeviceInactivityBeforeRetirementInDay *int `json:"deviceInactivityBeforeRetirementInDay,omitempty"` + // DerivedCredentialProvider The Derived Credential Provider to use for this account. + DerivedCredentialProvider *DerivedCredentialProviderType `json:"derivedCredentialProvider,omitempty"` + // DerivedCredentialURL The Derived Credential Provider self-service URI. + DerivedCredentialURL *string `json:"derivedCredentialUrl,omitempty"` + // AndroidDeviceAdministratorEnrollmentEnabled The property to determine if Android device administrator enrollment is enabled for this account. + AndroidDeviceAdministratorEnrollmentEnabled *bool `json:"androidDeviceAdministratorEnrollmentEnabled,omitempty"` +} + +// DeviceManagementStringSettingInstance A setting instance representing a string value +type DeviceManagementStringSettingInstance struct { + // DeviceManagementSettingInstance is the base model of DeviceManagementStringSettingInstance + DeviceManagementSettingInstance + // Value The string value + Value *string `json:"value,omitempty"` +} + +// DeviceManagementTemplate Entity that represents a defined collection of device settings +type DeviceManagementTemplate struct { + // Entity is the base model of DeviceManagementTemplate + Entity + // DisplayName The template's display name + DisplayName *string `json:"displayName,omitempty"` + // Description The template's description + Description *string `json:"description,omitempty"` + // VersionInfo The template's version information + VersionInfo *string `json:"versionInfo,omitempty"` + // IsDeprecated The template is deprecated or not. Intents cannot be created from a deprecated template. + IsDeprecated *bool `json:"isDeprecated,omitempty"` + // IntentCount Number of Intents created from this template. + IntentCount *int `json:"intentCount,omitempty"` + // TemplateType The template's type. + TemplateType *DeviceManagementTemplateType `json:"templateType,omitempty"` + // PlatformType The template's platform. + PlatformType *PolicyPlatformType `json:"platformType,omitempty"` + // PublishedDateTime When the template was published + PublishedDateTime *time.Time `json:"publishedDateTime,omitempty"` + // Settings undocumented + Settings []DeviceManagementSettingInstance `json:"settings,omitempty"` + // Categories undocumented + Categories []DeviceManagementTemplateSettingCategory `json:"categories,omitempty"` + // MigratableTo undocumented + MigratableTo []DeviceManagementTemplate `json:"migratableTo,omitempty"` +} + +// DeviceManagementTemplateSettingCategory Entity representing a template setting category +type DeviceManagementTemplateSettingCategory struct { + // DeviceManagementSettingCategory is the base model of DeviceManagementTemplateSettingCategory + DeviceManagementSettingCategory + // RecommendedSettings undocumented + RecommendedSettings []DeviceManagementSettingInstance `json:"recommendedSettings,omitempty"` +} + +// DeviceManagementTroubleshootingErrorDetails undocumented +type DeviceManagementTroubleshootingErrorDetails struct { + // Object is the base model of DeviceManagementTroubleshootingErrorDetails + Object + // Context undocumented + Context *string `json:"context,omitempty"` + // Failure undocumented + Failure *string `json:"failure,omitempty"` + // FailureDetails The detailed description of what went wrong. + FailureDetails *string `json:"failureDetails,omitempty"` + // Remediation The detailed description of how to remediate this issue. + Remediation *string `json:"remediation,omitempty"` + // Resources Links to helpful documentation about this failure. + Resources []DeviceManagementTroubleshootingErrorResource `json:"resources,omitempty"` +} + +// DeviceManagementTroubleshootingErrorResource undocumented +type DeviceManagementTroubleshootingErrorResource struct { + // Object is the base model of DeviceManagementTroubleshootingErrorResource + Object + // Text undocumented + Text *string `json:"text,omitempty"` + // Link The link to the web resource. Can contain any of the following formatters: {{UPN}}, {{DeviceGUID}}, {{UserGUID}} + Link *string `json:"link,omitempty"` +} + +// DeviceManagementTroubleshootingEvent Event representing an general failure. +type DeviceManagementTroubleshootingEvent struct { + // Entity is the base model of DeviceManagementTroubleshootingEvent + Entity + // EventDateTime Time when the event occurred . + EventDateTime *time.Time `json:"eventDateTime,omitempty"` + // CorrelationID Id used for tracing the failure in the service. + CorrelationID *string `json:"correlationId,omitempty"` + // TroubleshootingErrorDetails Object containing detailed information about the error and its remediation. + TroubleshootingErrorDetails *DeviceManagementTroubleshootingErrorDetails `json:"troubleshootingErrorDetails,omitempty"` + // EventName Event Name corresponding to the Troubleshooting Event. It is an Optional field + EventName *string `json:"eventName,omitempty"` + // AdditionalInformation A set of string key and string value pairs which provides additional information on the Troubleshooting event + AdditionalInformation []KeyValuePair `json:"additionalInformation,omitempty"` +} + +// DeviceManagementUserRightsLocalUserOrGroup undocumented +type DeviceManagementUserRightsLocalUserOrGroup struct { + // Object is the base model of DeviceManagementUserRightsLocalUserOrGroup + Object + // Name The name of this local user or group. + Name *string `json:"name,omitempty"` + // Description Admin’s description of this local user or group. + Description *string `json:"description,omitempty"` + // SecurityIdentifier The security identifier of this local user or group (e.g. *S-1-5-32-544). + SecurityIdentifier *string `json:"securityIdentifier,omitempty"` +} + +// DeviceManagementUserRightsSetting undocumented +type DeviceManagementUserRightsSetting struct { + // Object is the base model of DeviceManagementUserRightsSetting + Object + // State Representing the current state of this user rights setting + State *StateManagementSetting `json:"state,omitempty"` + // 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. + LocalUsersOrGroups []DeviceManagementUserRightsLocalUserOrGroup `json:"localUsersOrGroups,omitempty"` +} + +// DeviceOperatingSystemSummary undocumented +type DeviceOperatingSystemSummary struct { + // Object is the base model of DeviceOperatingSystemSummary + Object + // AndroidCount Number of android device count. + AndroidCount *int `json:"androidCount,omitempty"` + // IOSCount Number of iOS device count. + IOSCount *int `json:"iosCount,omitempty"` + // MacOSCount Number of Mac OS X device count. + MacOSCount *int `json:"macOSCount,omitempty"` + // WindowsMobileCount Number of Windows mobile device count. + WindowsMobileCount *int `json:"windowsMobileCount,omitempty"` + // WindowsCount Number of Windows device count. + WindowsCount *int `json:"windowsCount,omitempty"` + // UnknownCount Number of unknown device count. + UnknownCount *int `json:"unknownCount,omitempty"` + // AndroidDedicatedCount Number of dedicated Android devices. + AndroidDedicatedCount *int `json:"androidDedicatedCount,omitempty"` + // AndroidDeviceAdminCount Number of device admin Android devices. + AndroidDeviceAdminCount *int `json:"androidDeviceAdminCount,omitempty"` + // AndroidFullyManagedCount Number of fully managed Android devices. + AndroidFullyManagedCount *int `json:"androidFullyManagedCount,omitempty"` + // AndroidWorkProfileCount Number of work profile Android devices. + AndroidWorkProfileCount *int `json:"androidWorkProfileCount,omitempty"` +} + +// DeviceProtectionOverview undocumented +type DeviceProtectionOverview struct { + // Object is the base model of DeviceProtectionOverview + Object + // TotalReportedDeviceCount Total device count. + TotalReportedDeviceCount *int `json:"totalReportedDeviceCount,omitempty"` + // InactiveThreatAgentDeviceCount Device with inactive threat agent count + InactiveThreatAgentDeviceCount *int `json:"inactiveThreatAgentDeviceCount,omitempty"` + // UnknownStateThreatAgentDeviceCount Device with threat agent state as unknown count. + UnknownStateThreatAgentDeviceCount *int `json:"unknownStateThreatAgentDeviceCount,omitempty"` + // PendingSignatureUpdateDeviceCount Device with old signature count. + PendingSignatureUpdateDeviceCount *int `json:"pendingSignatureUpdateDeviceCount,omitempty"` + // CleanDeviceCount Clean device count. + CleanDeviceCount *int `json:"cleanDeviceCount,omitempty"` + // PendingFullScanDeviceCount Pending full scan device count. + PendingFullScanDeviceCount *int `json:"pendingFullScanDeviceCount,omitempty"` + // PendingRestartDeviceCount Pending restart device count. + PendingRestartDeviceCount *int `json:"pendingRestartDeviceCount,omitempty"` + // PendingManualStepsDeviceCount Pending manual steps device count. + PendingManualStepsDeviceCount *int `json:"pendingManualStepsDeviceCount,omitempty"` + // PendingOfflineScanDeviceCount Pending offline scan device count. + PendingOfflineScanDeviceCount *int `json:"pendingOfflineScanDeviceCount,omitempty"` + // CriticalFailuresDeviceCount Critical failures device count. + CriticalFailuresDeviceCount *int `json:"criticalFailuresDeviceCount,omitempty"` +} + +// DeviceRestrictionAction undocumented +type DeviceRestrictionAction struct { + // DlpActionInfo is the base model of DeviceRestrictionAction + DlpActionInfo + // RestrictionAction undocumented + RestrictionAction *RestrictionAction `json:"restrictionAction,omitempty"` + // Triggers undocumented + Triggers []RestrictionTrigger `json:"triggers,omitempty"` + // Message undocumented + Message *string `json:"message,omitempty"` +} + +// DeviceSetupConfiguration This is the base class for Setup Configuration. Setup configurations are platform specific and individual per-platform setup configurations inherit from here. +type DeviceSetupConfiguration struct { + // Entity is the base model of DeviceSetupConfiguration + Entity + // CreatedDateTime DateTime the object was created. + CreatedDateTime *time.Time `json:"createdDateTime,omitempty"` + // Description Admin provided description of the Device Configuration. + Description *string `json:"description,omitempty"` + // LastModifiedDateTime DateTime the object was last modified. + LastModifiedDateTime *time.Time `json:"lastModifiedDateTime,omitempty"` + // DisplayName Admin provided name of the device configuration. + DisplayName *string `json:"displayName,omitempty"` + // Version Version of the device configuration. + Version *int `json:"version,omitempty"` +} |