Data/Operations/GroupPolicyDefinitionValue.ListBeta.psd1
|
<# Operation descriptor - data only. Loaded with Import-PowerShellDataFile. The settings configured inside one Administrative Template policy. Requires an {id} parameter - the configuration id from GroupPolicyConfiguration.ListBeta. The $expand=definition is LOAD-BEARING and therefore fixed in the path rather than left to the caller. Without it a definitionValue is a row of ids, an enabled flag and timestamps with no indication of which Group Policy setting it configures - technically a successful response, and useless. This is the same reasoning as Organization/GetMdmAuthority's fixed $select: an operation whose output is meaningless without a query option should not depend on every caller remembering it. Because the option is fixed, AdvancedQuery stays unsupported and Resolve-GraphUri refuses a caller-supplied $expand rather than emitting it twice. LIVE-VERIFIED against a populated response. The lab tenant's own administrative templates are all unpopulated shells (createdDateTime == lastModifiedDateTime), so a fixture policy was created there specifically to verify this walk - "GraphKit verification fixture - do not deploy", unassigned, left in place so future changes can re-verify without another write. A populated row carries: configurationType, createdDateTime, definition, enabled, id, lastModifiedDateTime. The expanded 'definition' carries categoryPath, classType, displayName, explainText, groupPolicyCategoryId, hasRelatedDefinitions, id, lastModifiedDateTime, minDeviceCspVersion, minUserCspVersion, policyType, supportedOn, version. The $expand being load-bearing is measured, not argued: the same request without it returns HTTP 200 and the identical row MINUS the 'definition' key. Nothing errors - the caller just gets a row that cannot say which Group Policy setting it configures. #> @{ SchemaVersion = 1 Type = 'GroupPolicyDefinitionValue' Operation = 'ListBeta' OperationKind = 'Collection' HandlerStrategyId = 'Collection.Default' ApiVersion = 'beta' Stability = 'BetaOnly' BetaReason = 'Administrative Template policies are exposed only on beta; the v1.0 path does not exist.' Method = 'GET' PathTemplate = '/deviceManagement/groupPolicyConfigurations/{id}/definitionValues?$expand=definition' RequestBodyKind = $null ResponseKind = 'Json' PagingStrategy = 'NextLink' RequiredPagingHeaders = @() DeduplicationKey = 'id' SupportsAll = $false SupportsDelta = $false ReplayPolicy = 'Safe' Condition = $null Reconciliation = $null AdvancedQuery = @{ Supported = $false } Concurrency = @{ Mode = 'None'; Header = $null; Required = $false; AllowWildcard = $false } CredentialPolicy = 'GraphBearer' AllowedHosts = @() RedirectPolicy = 'None' IdentityRequirement = 'Verified' ResourceFamily = 'Intune.GroupPolicy' ThrottleClass = 'Read' SupportedAuthModes = @('Certificate', 'ClientSecret', 'ManagedIdentity') RequiredPermissions = @( @{ Type = 'Application'; Value = 'DeviceManagementConfiguration.Read.All' } ) RequiredLicense = @('Microsoft Intune') SupportedClouds = @('Global', 'USGov', 'USGovDoD') } |