sharedmodels

package
v0.26.0-alpha Latest Latest
Warning

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

Go to latest
Published: Aug 12, 2025 License: MPL-2.0 Imports: 2 Imported by: 0

Documentation

Overview

REF: https://learn.microsoft.com/en-us/graph/api/resources/intune-rbac-roleassignment?view=graph-rest-beta

Index

Constants

This section is empty.

Variables

View Source
var DeviceConfigurationPolicyV2GraphServiceModelReference struct {
	SettingsDetails []struct {
		ID              string `json:"id"`
		SettingInstance struct {

			// For choice setting collections
			ChoiceSettingCollectionValue []struct {
				Children []struct {
					ODataType                        string `json:"@odata.type"`
					SettingDefinitionId              string `json:"settingDefinitionId"`
					SettingInstanceTemplateReference *struct {
						SettingInstanceTemplateId string `json:"settingInstanceTemplateId"`
					} `json:"settingInstanceTemplateReference,omitempty"`
					// For nested simple setting collection within choice setting collection
					SimpleSettingCollectionValue []struct {
						ODataType                     string `json:"@odata.type"`
						SettingValueTemplateReference *struct {
							SettingValueTemplateId string `json:"settingValueTemplateId"`
							UseTemplateDefault     bool   `json:"useTemplateDefault"`
						} `json:"settingValueTemplateReference,omitempty"`
						Value string `json:"value"`
					} `json:"simpleSettingCollectionValue,omitempty"`
					// For nested simple settings within choice setting collection
					SimpleSettingValue *struct {
						ODataType                     string `json:"@odata.type"`
						SettingValueTemplateReference *struct {
							SettingValueTemplateId string `json:"settingValueTemplateId"`
							UseTemplateDefault     bool   `json:"useTemplateDefault"`
						} `json:"settingValueTemplateReference,omitempty"`
						Value interface{} `json:"value"`
					} `json:"simpleSettingValue,omitempty"`
				} `json:"children"`
				SettingValueTemplateReference *struct {
					SettingValueTemplateId string `json:"settingValueTemplateId"`
					UseTemplateDefault     bool   `json:"useTemplateDefault"`
				} `json:"settingValueTemplateReference,omitempty"`

				Value string `json:"value"`
			} `json:"choiceSettingCollectionValue,omitempty"`

			// For choice settings
			ChoiceSettingValue *struct {
				Children []struct {
					// For nested choice settings within choice children
					ChoiceSettingValue *struct {
						Children []struct {
							ODataType           string `json:"@odata.type"`
							SettingDefinitionId string `json:"settingDefinitionId"`
						} `json:"children"`
						SettingValueTemplateReference *struct {
							SettingValueTemplateId string `json:"settingValueTemplateId"`
							UseTemplateDefault     bool   `json:"useTemplateDefault"`
						} `json:"settingValueTemplateReference,omitempty"`
						Value string `json:"value"`
					} `json:"choiceSettingValue,omitempty"`
					// For GroupSettingCollectionValue within Choice children
					GroupSettingCollectionValue []struct {
						Children []struct {
							ODataType                        string `json:"@odata.type"`
							SettingDefinitionId              string `json:"settingDefinitionId"`
							SettingInstanceTemplateReference *struct {
								SettingInstanceTemplateId string `json:"settingInstanceTemplateId"`
							} `json:"settingInstanceTemplateReference,omitempty"`
							SimpleSettingValue *struct {
								ODataType                     string `json:"@odata.type"`
								SettingValueTemplateReference *struct {
									SettingValueTemplateId string `json:"settingValueTemplateId"`
									UseTemplateDefault     bool   `json:"useTemplateDefault"`
								} `json:"settingValueTemplateReference,omitempty"`
								Value interface{} `json:"value"`
							} `json:"simpleSettingValue,omitempty"`
						} `json:"children"`
						SettingValueTemplateReference *struct {
							SettingValueTemplateId string `json:"settingValueTemplateId"`
							UseTemplateDefault     bool   `json:"useTemplateDefault"`
						} `json:"settingValueTemplateReference,omitempty"`
					} `json:"groupSettingCollectionValue,omitempty"`
					ODataType                        string `json:"@odata.type"`
					SettingDefinitionId              string `json:"settingDefinitionId"`
					SettingInstanceTemplateReference *struct {
						SettingInstanceTemplateId string `json:"settingInstanceTemplateId"`
					} `json:"settingInstanceTemplateReference,omitempty"`
					// For SimpleSettingCollectionValue within Choice children
					SimpleSettingCollectionValue []struct {
						ODataType                     string `json:"@odata.type"`
						SettingValueTemplateReference *struct {
							SettingValueTemplateId string `json:"settingValueTemplateId"`
							UseTemplateDefault     bool   `json:"useTemplateDefault"`
						} `json:"settingValueTemplateReference,omitempty"`
						Value string `json:"value"`
					} `json:"simpleSettingCollectionValue,omitempty"`
					// For simple settings within choice children
					SimpleSettingValue *struct {
						ODataType                     string `json:"@odata.type"`
						SettingValueTemplateReference *struct {
							SettingValueTemplateId string `json:"settingValueTemplateId"`
							UseTemplateDefault     bool   `json:"useTemplateDefault"`
						} `json:"settingValueTemplateReference,omitempty"`
						Value interface{} `json:"value"`
					} `json:"simpleSettingValue,omitempty"`
				} `json:"children"`
				SettingValueTemplateReference *struct {
					SettingValueTemplateId string `json:"settingValueTemplateId"`
					UseTemplateDefault     bool   `json:"useTemplateDefault"`
				} `json:"settingValueTemplateReference,omitempty"`
				Value string `json:"value"`
			} `json:"choiceSettingValue,omitempty"`

			// For group setting collections
			GroupSettingCollectionValue []struct {
				Children []struct {
					// For nested choice settings within group setting collection (Level 2)
					ChoiceSettingValue *struct {
						Children []struct {
							ChoiceSettingValue *struct {
								Children []struct {
									ODataType           string `json:"@odata.type"`
									SettingDefinitionId string `json:"settingDefinitionId"`
								} `json:"children"`
								SettingValueTemplateReference *struct {
									SettingValueTemplateId string `json:"settingValueTemplateId"`
									UseTemplateDefault     bool   `json:"useTemplateDefault"`
								} `json:"settingValueTemplateReference,omitempty"`
								Value string `json:"value"`
							} `json:"choiceSettingValue,omitempty"`
							ODataType                        string `json:"@odata.type"`
							SettingDefinitionId              string `json:"settingDefinitionId"`
							SettingInstanceTemplateReference *struct {
								SettingInstanceTemplateId string `json:"settingInstanceTemplateId"`
							} `json:"settingInstanceTemplateReference,omitempty"`
							SimpleSettingValue *struct {
								ODataType                     string `json:"@odata.type"`
								SettingValueTemplateReference *struct {
									SettingValueTemplateId string `json:"settingValueTemplateId"`
									UseTemplateDefault     bool   `json:"useTemplateDefault"`
								} `json:"settingValueTemplateReference,omitempty"`
								Value interface{} `json:"value"`
							} `json:"simpleSettingValue,omitempty"`
						} `json:"children"`
						SettingValueTemplateReference *struct {
							SettingValueTemplateId string `json:"settingValueTemplateId"`
							UseTemplateDefault     bool   `json:"useTemplateDefault"`
						} `json:"settingValueTemplateReference,omitempty"`
						Value string `json:"value"`
					} `json:"choiceSettingValue,omitempty"`
					// For nested group setting collections within group setting collection (Level 2)
					GroupSettingCollectionValue []struct {
						Children []struct {
							// For nested choice settings within group setting collection within group setting collection (Level 3)
							ChoiceSettingValue *struct {
								Children []struct {
									ODataType           string `json:"@odata.type"`
									SettingDefinitionId string `json:"settingDefinitionId"`
									SimpleSettingValue  *struct {
										ODataType                     string `json:"@odata.type"`
										SettingValueTemplateReference *struct {
											SettingValueTemplateId string `json:"settingValueTemplateId"`
											UseTemplateDefault     bool   `json:"useTemplateDefault"`
										} `json:"settingValueTemplateReference,omitempty"`
										Value      interface{} `json:"value"`
										ValueState string      `json:"valueState,omitempty"`
									} `json:"simpleSettingValue,omitempty"`
								} `json:"children"`
								SettingValueTemplateReference *struct {
									SettingValueTemplateId string `json:"settingValueTemplateId"`
									UseTemplateDefault     bool   `json:"useTemplateDefault"`
								} `json:"settingValueTemplateReference,omitempty"`
								Value string `json:"value"`
							} `json:"choiceSettingValue,omitempty"`
							// For nested group setting collections within group setting collection within group setting collection (Level 3)
							GroupSettingCollectionValue []struct {
								Children []struct {
									// For nested choice settings within group setting collection within group setting collection within group setting collection (Level 4)
									ChoiceSettingValue *struct {
										Children []struct {
											ODataType                        string `json:"@odata.type"`
											SettingDefinitionId              string `json:"settingDefinitionId"`
											SettingInstanceTemplateReference *struct {
												SettingInstanceTemplateId string `json:"settingInstanceTemplateId"`
											} `json:"settingInstanceTemplateReference,omitempty"`
											// For nested simple settings within choice settings within group setting collection within group setting collection within group setting collection (Level 5)
											SimpleSettingValue *struct {
												ODataType                     string `json:"@odata.type"`
												SettingValueTemplateReference *struct {
													SettingValueTemplateId string `json:"settingValueTemplateId"`
													UseTemplateDefault     bool   `json:"useTemplateDefault"`
												} `json:"settingValueTemplateReference,omitempty"`
												Value interface{} `json:"value"`
											} `json:"simpleSettingValue,omitempty"`
										} `json:"children"`
										SettingValueTemplateReference *struct {
											SettingValueTemplateId string `json:"settingValueTemplateId"`
											UseTemplateDefault     bool   `json:"useTemplateDefault"`
										} `json:"settingValueTemplateReference,omitempty"`
										Value string `json:"value"`
									} `json:"choiceSettingValue,omitempty"`
									ODataType                        string `json:"@odata.type"`
									SettingDefinitionId              string `json:"settingDefinitionId"`
									SettingInstanceTemplateReference *struct {
										SettingInstanceTemplateId string `json:"settingInstanceTemplateId"`
									} `json:"settingInstanceTemplateReference,omitempty"`
									// For simple settings collection within group setting collection within group setting collection within group setting collection (Level 4)
									SimpleSettingCollectionValue []struct {
										ODataType                     string `json:"@odata.type"`
										SettingValueTemplateReference *struct {
											SettingValueTemplateId string `json:"settingValueTemplateId"`
											UseTemplateDefault     bool   `json:"useTemplateDefault"`
										} `json:"settingValueTemplateReference,omitempty"`
										Value string `json:"value"`
									} `json:"simpleSettingCollectionValue,omitempty"`
									// For simple settings within group setting collection within group setting collection within group setting collection (Level 4)
									SimpleSettingValue *struct {
										ODataType                     string `json:"@odata.type"`
										SettingValueTemplateReference *struct {
											SettingValueTemplateId string `json:"settingValueTemplateId"`
											UseTemplateDefault     bool   `json:"useTemplateDefault"`
										} `json:"settingValueTemplateReference,omitempty"`
										Value interface{} `json:"value"`
									} `json:"simpleSettingValue,omitempty"`
								} `json:"children"`
								SettingValueTemplateReference *struct {
									SettingValueTemplateId string `json:"settingValueTemplateId"`
									UseTemplateDefault     bool   `json:"useTemplateDefault"`
								} `json:"settingValueTemplateReference,omitempty"`
							} `json:"groupSettingCollectionValue,omitempty"`
							ODataType                        string `json:"@odata.type"`
							SettingDefinitionId              string `json:"settingDefinitionId"`
							SettingInstanceTemplateReference *struct {
								SettingInstanceTemplateId string `json:"settingInstanceTemplateId"`
							} `json:"settingInstanceTemplateReference,omitempty"`
							// For nested simple setting collections within group setting collection within group setting collection (Level 3)
							SimpleSettingCollectionValue []struct {
								ODataType                     string `json:"@odata.type"`
								SettingValueTemplateReference *struct {
									SettingValueTemplateId string `json:"settingValueTemplateId"`
									UseTemplateDefault     bool   `json:"useTemplateDefault"`
								} `json:"settingValueTemplateReference,omitempty"`
								Value string `json:"value"`
							} `json:"simpleSettingCollectionValue,omitempty"`
							// For nested simple settings within group setting collection within group setting collection (Level 3)
							SimpleSettingValue *struct {
								ODataType                     string `json:"@odata.type"`
								SettingValueTemplateReference *struct {
									SettingValueTemplateId string `json:"settingValueTemplateId"`
									UseTemplateDefault     bool   `json:"useTemplateDefault"`
								} `json:"settingValueTemplateReference,omitempty"`
								Value      interface{} `json:"value"`
								ValueState string      `json:"valueState,omitempty"`
							} `json:"simpleSettingValue,omitempty"`
						} `json:"children"`
						SettingValueTemplateReference *struct {
							SettingValueTemplateId string `json:"settingValueTemplateId"`
							UseTemplateDefault     bool   `json:"useTemplateDefault"`
						} `json:"settingValueTemplateReference,omitempty"`
					} `json:"groupSettingCollectionValue,omitempty"`
					ODataType                        string `json:"@odata.type"`
					SettingDefinitionId              string `json:"settingDefinitionId"`
					SettingInstanceTemplateReference *struct {
						SettingInstanceTemplateId string `json:"settingInstanceTemplateId"`
					} `json:"settingInstanceTemplateReference,omitempty"`
					// For nested simple settings (string, integer, secret) within group setting collection  (Level 2)
					SimpleSettingValue *struct {
						ODataType                     string `json:"@odata.type"`
						SettingValueTemplateReference *struct {
							SettingValueTemplateId string `json:"settingValueTemplateId"`
							UseTemplateDefault     bool   `json:"useTemplateDefault"`
						} `json:"settingValueTemplateReference,omitempty"`
						Value      interface{} `json:"value"`
						ValueState string      `json:"valueState,omitempty"`
					} `json:"simpleSettingValue,omitempty"`
					// For nested simple setting collections within group setting collection (Level 2)
					SimpleSettingCollectionValue []struct {
						ODataType                     string `json:"@odata.type"`
						SettingValueTemplateReference *struct {
							SettingValueTemplateId string `json:"settingValueTemplateId"`
							UseTemplateDefault     bool   `json:"useTemplateDefault"`
						} `json:"settingValueTemplateReference,omitempty"`
						Value string `json:"value"`
					} `json:"simpleSettingCollectionValue,omitempty"`
				} `json:"children"`
				SettingValueTemplateReference *struct {
					SettingValueTemplateId string `json:"settingValueTemplateId"`
					UseTemplateDefault     bool   `json:"useTemplateDefault"`
				} `json:"settingValueTemplateReference,omitempty"`
			} `json:"groupSettingCollectionValue,omitempty"`

			// Setting instance Odata and template reference
			ODataType                        string `json:"@odata.type"`
			SettingDefinitionId              string `json:"settingDefinitionId"`
			SettingInstanceTemplateReference *struct {
				SettingInstanceTemplateId string `json:"settingInstanceTemplateId"`
			} `json:"settingInstanceTemplateReference,omitempty"`

			// For simple collection settings
			SimpleSettingCollectionValue []struct {
				ODataType                     string `json:"@odata.type"`
				SettingValueTemplateReference *struct {
					SettingValueTemplateId string `json:"settingValueTemplateId"`
					UseTemplateDefault     bool   `json:"useTemplateDefault"`
				} `json:"settingValueTemplateReference,omitempty"`

				Value string `json:"value"`
			} `json:"simpleSettingCollectionValue,omitempty"`

			// For simple settings
			SimpleSettingValue *struct {
				ODataType                     string `json:"@odata.type"`
				SettingValueTemplateReference *struct {
					SettingValueTemplateId string `json:"settingValueTemplateId"`
					UseTemplateDefault     bool   `json:"useTemplateDefault"`
				} `json:"settingValueTemplateReference,omitempty"`
				Value interface{} `json:"value"`
			} `json:"simpleSettingValue,omitempty"`
		} `json:"settingInstance"`
	} `json:"settings"`
}

DeviceConfigurationPolicyV2GraphServiceModelReference is an anomimous struct that represents the JSON structure of settings catalog settings fors windows, linux, macOS, and iOS. Used for device configuration, endpoint privilege management, templated device configuration. This struct is used as a reference for understanding the complex nested nature of settings catalog that's not explitly clear when using named go structs.This struct is not actively used in the codebase.

Functions

This section is empty.

Types

type ChoiceSettingChild

type ChoiceSettingChild struct {
	ODataType                        string                            `json:"@odata.type"`
	SettingDefinitionId              string                            `json:"settingDefinitionId"`
	SettingInstanceTemplateReference *SettingInstanceTemplateReference `json:"settingInstanceTemplateReference"`
	ChoiceSettingValue               *ChoiceSettingStruct              `json:"choiceSettingValue,omitempty"`
	ChoiceSettingCollectionValue     []ChoiceSettingCollectionStruct   `json:"choiceSettingCollectionValue,omitempty"`
	SimpleSettingValue               *SimpleSettingStruct              `json:"simpleSettingValue,omitempty"`
	SimpleSettingCollectionValue     []SimpleSettingCollectionStruct   `json:"simpleSettingCollectionValue,omitempty"`
	GroupSettingCollectionValue      []GroupSettingCollectionStruct    `json:"groupSettingCollectionValue,omitempty"`
}

ChoiceSettingChild represents a child element in a choice setting

type ChoiceSettingCollectionChild

type ChoiceSettingCollectionChild struct {
	ODataType                        string                            `json:"@odata.type"`
	SettingDefinitionId              string                            `json:"settingDefinitionId"`
	SettingInstanceTemplateReference *SettingInstanceTemplateReference `json:"settingInstanceTemplateReference"`
	SimpleSettingValue               *SimpleSettingStruct              `json:"simpleSettingValue,omitempty"`
	SimpleSettingCollectionValue     []SimpleSettingCollectionStruct   `json:"simpleSettingCollectionValue,omitempty"`
}

ChoiceSettingCollectionChild represents a child element in a choice setting collection

type ChoiceSettingCollectionStruct

type ChoiceSettingCollectionStruct struct {
	SettingValueTemplateReference *SettingValueTemplateReference `json:"settingValueTemplateReference"`
	Value                         string                         `json:"value"`
	Children                      []ChoiceSettingCollectionChild `json:"children"`
}

ChoiceSettingCollectionStruct represents a collection of choice settings

type ChoiceSettingStruct

type ChoiceSettingStruct struct {
	SettingValueTemplateReference *SettingValueTemplateReference `json:"settingValueTemplateReference"`
	Value                         string                         `json:"value"`
	Children                      []ChoiceSettingChild           `json:"children"`
}

ChoiceSettingStruct represents a choice setting

type DeviceCompliancePolicyAssignmentResourceModel

type DeviceCompliancePolicyAssignmentResourceModel struct {
	// Target assignment fields - only one should be used at a time
	Type    types.String `tfsdk:"type"`     // "allDevicesAssignmentTarget", "allLicensedUsersAssignmentTarget", "groupAssignmentTarget", "exclusionGroupAssignmentTarget"
	GroupId types.String `tfsdk:"group_id"` // For group targets (both include and exclude)
	// Assignment filter fields
	FilterId   types.String `tfsdk:"filter_id"`
	FilterType types.String `tfsdk:"filter_type"` // "include", "exclude", or "none"
}

DeviceCompliancePolicyAssignmentResourceModel struct to hold device compliance policy assignment configuration

type DeviceConfigV2GraphServiceResourceModel

type DeviceConfigV2GraphServiceResourceModel struct {
	Settings []Setting `json:"settings,omitempty"` // For array-based settings
	Setting  *Setting  `json:"setting,omitempty"`  // For single-instance settings
}

DeviceConfigV2GraphServiceResourceModel is the root settings catalog model Officially the api only recognises 'settings' as the root key, but we use 'settings' and 'setting' to support both single-instance and array-based settings.

type DeviceManagementDeviceConfigurationAssignmentWithAllLicensedUsersInclusionGroupConfigurationManagerCollectionAssignmentModel

type DeviceManagementDeviceConfigurationAssignmentWithAllLicensedUsersInclusionGroupConfigurationManagerCollectionAssignmentModel struct {
	Type         types.String `tfsdk:"type"`          // "allDevicesAssignmentTarget", "allLicensedUsersAssignmentTarget", "groupAssignmentTarget", "exclusionGroupAssignmentTarget"
	GroupId      types.String `tfsdk:"group_id"`      // For group targets (both include and exclude)
	CollectionId types.String `tfsdk:"collection_id"` // For configuration manager collection targets
}

DeviceManagementDeviceConfigurationAssignmentWithAllLicensedUsersInclusionGroupConfigurationManagerCollectionAssignmentModel defines the schema for a Windows Remediation Script assignment.

type DeviceManagementDeviceConfigurationAssignmentWithGroupFilterModel

type DeviceManagementDeviceConfigurationAssignmentWithGroupFilterModel struct {
	Type       types.String `tfsdk:"type"`     // "allDevicesAssignmentTarget", "allLicensedUsersAssignmentTarget", "groupAssignmentTarget", "exclusionGroupAssignmentTarget"
	GroupId    types.String `tfsdk:"group_id"` // For group targets (both include and exclude)
	FilterId   types.String `tfsdk:"filter_id"`
	FilterType types.String `tfsdk:"filter_type"` // "include", "exclude", or "none"
}

DeviceManagementDeviceConfigurationAssignmentWithGroupFilterModel defines the schema for a Windows Remediation Script assignment.

type DeviceManagementDeviceConfigurationAssignmentWithoutGroupFilterModel

type DeviceManagementDeviceConfigurationAssignmentWithoutGroupFilterModel struct {
	Type    types.String `tfsdk:"type"`     // "allDevicesAssignmentTarget", "allLicensedUsersAssignmentTarget", "groupAssignmentTarget", "exclusionGroupAssignmentTarget"
	GroupId types.String `tfsdk:"group_id"` // For group targets (both include and exclude)
}

DeviceManagementDeviceConfigurationAssignmentWithoutGroupFilterModel defines the schema for a Windows Remediation Script assignment.

type GroupSettingCollectionChild

type GroupSettingCollectionChild struct {
	ODataType                        string                            `json:"@odata.type"`
	SettingDefinitionId              string                            `json:"settingDefinitionId"`
	SettingInstanceTemplateReference *SettingInstanceTemplateReference `json:"settingInstanceTemplateReference"`
	ChoiceSettingValue               *ChoiceSettingStruct              `json:"choiceSettingValue,omitempty"`
	ChoiceSettingCollectionValue     []ChoiceSettingCollectionStruct   `json:"choiceSettingCollectionValue,omitempty"`
	GroupSettingCollectionValue      []GroupSettingCollectionStruct    `json:"groupSettingCollectionValue,omitempty"`
	SimpleSettingValue               *SimpleSettingStruct              `json:"simpleSettingValue,omitempty"`
	SimpleSettingCollectionValue     []SimpleSettingCollectionStruct   `json:"simpleSettingCollectionValue,omitempty"`
}

GroupSettingCollectionChild represents a child element in a group setting collection

type GroupSettingCollectionStruct

type GroupSettingCollectionStruct struct {
	SettingValueTemplateReference *SettingValueTemplateReference `json:"settingValueTemplateReference"`
	Children                      []GroupSettingCollectionChild  `json:"children"`
}

GroupSettingCollectionStruct represents a collection of group settings

type PlatformScriptAssignmentModel

type PlatformScriptAssignmentModel struct {
	// Target assignment fields - only one should be used at a time
	Type    types.String `tfsdk:"type"`     // "allDevicesAssignmentTarget", "allLicensedUsersAssignmentTarget", "groupAssignmentTarget", "exclusionGroupAssignmentTarget"
	GroupId types.String `tfsdk:"group_id"` // For group targets (both include and exclude)
}

PlatformScriptAssignmentModel defines the schema for a MacOS Platform Script assignment.

type ReuseablePolicySettingsResourceModel

type ReuseablePolicySettingsResourceModel struct {
	ID                                  types.String   `tfsdk:"id"`
	DisplayName                         types.String   `tfsdk:"display_name"`
	Description                         types.String   `tfsdk:"description"`
	CreatedDateTime                     types.String   `tfsdk:"created_date_time"`
	LastModifiedDateTime                types.String   `tfsdk:"last_modified_date_time"`
	ReferencingConfigurationPolicies    types.List     `tfsdk:"referencing_configuration_policies"`
	ReferencingConfigurationPolicyCount types.Int32    `tfsdk:"referencing_configuration_policy_count"`
	Settings                            types.String   `tfsdk:"settings"`
	Version                             types.Int32    `tfsdk:"version"`
	Timeouts                            timeouts.Value `tfsdk:"timeouts"`
}

ReuseablePolicySettingsResourceModel holds the configuration for a Settings Catalog profile.

type RoleAssignmentResourceModel

type RoleAssignmentResourceModel struct {
	ID             types.String `tfsdk:"id"`
	DisplayName    types.String `tfsdk:"display_name"`
	Description    types.String `tfsdk:"description"`
	ScopeMembers   types.Set    `tfsdk:"admin_group_users_group_ids"`
	ScopeType      types.String `tfsdk:"scope_type"`
	ResourceScopes types.Set    `tfsdk:"resource_scopes"`
}

type Setting

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

SettingDetail represents a single setting detail type SettingDetail struct {

type SettingInstance

type SettingInstance struct {
	ODataType                        string                            `json:"@odata.type"`
	SettingDefinitionId              string                            `json:"settingDefinitionId"`
	SettingInstanceTemplateReference *SettingInstanceTemplateReference `json:"settingInstanceTemplateReference"`
	SimpleSettingValue               *SimpleSettingStruct              `json:"simpleSettingValue,omitempty"`
	SimpleSettingCollectionValue     []SimpleSettingCollectionStruct   `json:"simpleSettingCollectionValue,omitempty"`
	ChoiceSettingValue               *ChoiceSettingStruct              `json:"choiceSettingValue,omitempty"`
	ChoiceSettingCollectionValue     []ChoiceSettingCollectionStruct   `json:"choiceSettingCollectionValue,omitempty"`
	GroupSettingCollectionValue      []GroupSettingCollectionStruct    `json:"groupSettingCollectionValue,omitempty"`
}

SettingInstance contains the core setting configuration

type SettingInstanceTemplateReference

type SettingInstanceTemplateReference struct {
	SettingInstanceTemplateId string `json:"settingInstanceTemplateId"`
}

SettingInstanceTemplateReference represents the template reference at the instance level

type SettingValueTemplateReference

type SettingValueTemplateReference struct {
	SettingValueTemplateId string `json:"settingValueTemplateId"`
	UseTemplateDefault     bool   `json:"useTemplateDefault"`
}

SettingValueTemplateReference represents the template reference at the value level

type SettingsCatalogJsonResourceModel

type SettingsCatalogJsonResourceModel struct {
	ID                          types.String   `tfsdk:"id"`
	Name                        types.String   `tfsdk:"name"`
	Description                 types.String   `tfsdk:"description"`
	Platforms                   types.String   `tfsdk:"platforms"`
	Technologies                types.List     `tfsdk:"technologies"`
	SettingsCatalogTemplateType types.String   `tfsdk:"settings_catalog_template_type"`
	RoleScopeTagIds             types.Set      `tfsdk:"role_scope_tag_ids"`
	SettingsCount               types.Int32    `tfsdk:"settings_count"`
	IsAssigned                  types.Bool     `tfsdk:"is_assigned"`
	LastModifiedDateTime        types.String   `tfsdk:"last_modified_date_time"`
	CreatedDateTime             types.String   `tfsdk:"created_date_time"`
	Settings                    types.String   `tfsdk:"settings"`
	Assignments                 types.Set      `tfsdk:"assignments"`
	Timeouts                    timeouts.Value `tfsdk:"timeouts"`
}

SettingsCatalogJsonResourceModel holds the configuration for a Settings Catalog profile. Reference: https://learn.microsoft.com/en-us/graph/api/resources/intune-deviceconfigv2-devicemanagementconfigurationpolicy?view=graph-rest-beta

type SimpleSettingCollectionStruct

type SimpleSettingCollectionStruct struct {
	ODataType                     string                         `json:"@odata.type"`
	SettingValueTemplateReference *SettingValueTemplateReference `json:"settingValueTemplateReference"`
	Value                         string                         `json:"value"`
}

SimpleSettingCollectionStruct represents a collection of simple settings

type SimpleSettingStruct

type SimpleSettingStruct struct {
	ODataType                     string                         `json:"@odata.type"`
	SettingValueTemplateReference *SettingValueTemplateReference `json:"settingValueTemplateReference"`
	Value                         interface{}                    `json:"value"`
	ValueState                    string                         `json:"valueState,omitempty"`
}

SimpleSettingStruct represents a simple setting value

type WindowsSoftwareUpdateAssignmentModel

type WindowsSoftwareUpdateAssignmentModel struct {
	Type    types.String `tfsdk:"type"`     // "groupAssignmentTarget", "exclusionGroupAssignmentTarget"
	GroupId types.String `tfsdk:"group_id"` // For group targets (both include and exclude)
}

WindowsSoftwareUpdateAssignmentModel defines the schema for a Windows Software Update assignment.

Jump to

Keyboard shortcuts

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