Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5wcm92aWRlcmh1Yi9wcm92aWRlcnJlZ2lzdHJhdGlvbnMve30vY3VzdG9tcm9sbG91dHMve30=/2025-03-01-preview.xml (9,815 lines of code) (raw):
<?xml version='1.0' encoding='utf-8'?>
<CodeGen plane="mgmt-plane">
<resource id="/subscriptions/{}/providers/microsoft.providerhub/providerregistrations/{}/customrollouts/{}" version="2025-03-01-preview" swagger="mgmt-plane/providerhub/ResourceProviders/Microsoft.ProviderHub/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9wcm92aWRlcnMvTWljcm9zb2Z0LlByb3ZpZGVySHViL3Byb3ZpZGVyUmVnaXN0cmF0aW9ucy97cHJvdmlkZXJOYW1lc3BhY2V9L2N1c3RvbVJvbGxvdXRzL3tyb2xsb3V0TmFtZX0=/V/MjAyNS0wMy0wMS1wcmV2aWV3"/>
<commandGroup name="providerhub custom-rollout">
<command name="show" version="2025-03-01-preview">
<resource id="/subscriptions/{}/providers/microsoft.providerhub/providerregistrations/{}/customrollouts/{}" version="2025-03-01-preview" swagger="mgmt-plane/providerhub/ResourceProviders/Microsoft.ProviderHub/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9wcm92aWRlcnMvTWljcm9zb2Z0LlByb3ZpZGVySHViL3Byb3ZpZGVyUmVnaXN0cmF0aW9ucy97cHJvdmlkZXJOYW1lc3BhY2V9L2N1c3RvbVJvbGxvdXRzL3tyb2xsb3V0TmFtZX0=/V/MjAyNS0wMy0wMS1wcmV2aWV3"/>
<argGroup name="">
<arg type="string" var="$Path.providerNamespace" options="provider-namespace" required="True" idPart="name">
<help short="The name of the resource provider hosted within ProviderHub."/>
</arg>
<arg type="string" var="$Path.rolloutName" options="rollout-name name n" required="True" idPart="child_name_1">
<help short="The rollout name."/>
<format pattern="^[-\w\._\(\)]+$" maxLength="260"/>
</arg>
<arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/>
</argGroup>
<operation operationId="CustomRollouts_Get">
<http path="/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/customRollouts/{rolloutName}">
<request method="get">
<path>
<param type="string" name="providerNamespace" arg="$Path.providerNamespace" required="True"/>
<param type="string" name="rolloutName" arg="$Path.rolloutName" required="True">
<format pattern="^[-\w\._\(\)]+$" maxLength="260"/>
</param>
<param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True">
<format minLength="1"/>
</param>
</path>
<query>
<const readOnly="True" const="True" type="string" name="api-version" required="True">
<default value=""2025-03-01-preview""/>
<format minLength="1"/>
</const>
</query>
</request>
<response statusCode="200">
<body>
<json var="$Instance">
<schema type="object">
<prop readOnly="True" type="ResourceId" name="id">
<format template="/subscriptions/{}/providers/Microsoft.ProviderHub/providerRegistrations/{}/customRollouts/{}"/>
</prop>
<prop readOnly="True" type="string" name="name"/>
<prop type="object" name="properties" required="True">
<prop readOnly="True" type="string" name="provisioningState">
<enum>
<item value=""Accepted""/>
<item value=""Canceled""/>
<item value=""Created""/>
<item value=""Creating""/>
<item value=""Deleted""/>
<item value=""Deleting""/>
<item value=""Failed""/>
<item value=""MovingResources""/>
<item value=""NotSpecified""/>
<item value=""RolloutInProgress""/>
<item value=""Running""/>
<item value=""Succeeded""/>
<item value=""TransientFailure""/>
</enum>
</prop>
<prop type="object" name="specification" required="True">
<prop type="object" name="autoProvisionConfig">
<prop type="boolean" name="resourceGraph"/>
<prop type="boolean" name="storage"/>
</prop>
<prop type="object" name="canary">
<prop type="array<string>" name="regions">
<item type="string"/>
</prop>
</prop>
<prop type="object" name="manifestCheckinSpecification">
<prop type="string" name="manifestCheckinOption">
<default value=""DoNotAttemptAutomaticManifestCheckin""/>
<enum>
<item value=""AttemptAutomaticManifestCheckin""/>
<item value=""DoNotAttemptAutomaticManifestCheckin""/>
</enum>
</prop>
<prop type="object" name="manifestCheckinParams">
<prop type="string" name="baselineArmManifestLocation" required="True"/>
<prop type="string" name="environment" required="True"/>
</prop>
</prop>
<prop type="object" name="providerRegistration">
<prop readOnly="True" type="ResourceId" name="id">
<format template="/subscriptions/{}/providers/Microsoft.ProviderHub/providerRegistrations/{}"/>
</prop>
<prop type="string" name="kind">
<default value=""Managed""/>
<enum>
<item value=""Direct""/>
<item value=""Hybrid""/>
<item value=""Managed""/>
</enum>
</prop>
<prop readOnly="True" type="string" name="name"/>
<prop type="object" name="properties">
<prop type="array<object>" name="capabilities" identifiers="quotaId">
<item type="object">
<prop type="string" name="effect" required="True">
<enum>
<item value=""Allow""/>
<item value=""Disallow""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="string" name="quotaId" required="True"/>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="string" name="crossTenantTokenValidation">
<enum>
<item value=""EnsureSecureValidation""/>
<item value=""PassthroughInsecureToken""/>
</enum>
</prop>
<prop type="string" name="customManifestVersion"/>
<prop type="object" name="dstsConfiguration">
<prop type="string" name="serviceDnsName"/>
<prop type="string" name="serviceName" required="True"/>
</prop>
<prop type="boolean" name="enablePresetResourceTypes"/>
<prop nullable="True" type="boolean" name="enableTenantLinkedNotification"/>
<prop type="object" name="featuresRule">
<prop type="string" name="requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="globalNotificationEndpoints">
<item type="object" cls="ResourceProviderEndpoint_read">
<prop type="array<string>" name="apiVersions">
<item type="string"/>
</prop>
<prop type="boolean" name="enabled"/>
<prop type="string" name="endpointType">
<enum>
<item value=""Canary""/>
<item value=""NotSpecified""/>
<item value=""Production""/>
<item value=""TestInProduction""/>
</enum>
</prop>
<prop type="string" name="endpointUri"/>
<prop type="object" name="featuresRule">
<prop type="string" name="requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="locations">
<item type="string"/>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
<prop type="string" name="skuLink"/>
<prop type="duration" name="timeout"/>
</item>
</prop>
<prop type="string" name="legacyNamespace"/>
<prop type="array<string>" name="legacyRegistrations">
<item type="string"/>
</prop>
<prop type="array<object>" name="linkedNotificationRules">
<item type="object">
<prop type="array<string>" name="actions">
<item type="string"/>
</prop>
<prop type="object" name="dstsConfiguration">
<prop type="string" name="serviceDnsName"/>
<prop type="string" name="serviceName" required="True"/>
</prop>
<prop type="array<@ResourceProviderEndpoint_read>" name="endpoints">
<item type="@ResourceProviderEndpoint_read"/>
</prop>
<prop type="object" name="tokenAuthConfiguration" cls="TokenAuthConfiguration_read">
<prop type="string" name="authenticationScheme">
<enum>
<item value=""Bearer""/>
<item value=""PoP""/>
</enum>
</prop>
<prop type="boolean" name="disableCertificateAuthenticationFallback"/>
<prop type="string" name="signedRequestScope">
<enum>
<item value=""Endpoint""/>
<item value=""ResourceUri""/>
</enum>
</prop>
</prop>
</item>
</prop>
<prop type="object" name="management">
<prop type="array<string>" name="authorizationOwners">
<item type="string"/>
</prop>
<prop type="array<string>" name="canaryManifestOwners">
<item type="string"/>
</prop>
<prop type="object" name="errorResponseMessageOptions">
<prop type="string" name="serverFailureResponseMessageType">
<enum>
<item value=""NotSpecified""/>
<item value=""OutageReporting""/>
</enum>
</prop>
</prop>
<prop type="object" name="expeditedRolloutMetadata">
<prop type="boolean" name="enabled"/>
<prop type="string" name="expeditedRolloutIntent">
<enum>
<item value=""Hotfix""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="expeditedRolloutSubmitters">
<item type="string"/>
</prop>
<prop type="string" name="incidentContactEmail"/>
<prop type="string" name="incidentRoutingService"/>
<prop type="string" name="incidentRoutingTeam"/>
<prop type="array<string>" name="manifestOwners">
<item type="string"/>
</prop>
<prop type="string" name="pcCode"/>
<prop type="string" name="profitCenterProgramId"/>
<prop type="string" name="resourceAccessPolicy">
<enum>
<item value=""AcisActionAllowed""/>
<item value=""AcisReadAllowed""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="array<object>" name="resourceAccessRoles">
<item type="object" cls="ResourceAccessRole_read">
<prop type="array<string>" name="actions">
<item type="string"/>
</prop>
<prop type="array<string>" name="allowedGroupClaims">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="array<string>" name="schemaOwners">
<item type="string"/>
</prop>
<prop type="array<object>" name="serviceTreeInfos">
<item type="object" cls="ServiceTreeInfo_read">
<prop type="string" name="componentId"/>
<prop type="string" name="readiness">
<enum>
<item value=""ClosingDown""/>
<item value=""Deprecated""/>
<item value=""GA""/>
<item value=""InDevelopment""/>
<item value=""InternalOnly""/>
<item value=""PrivatePreview""/>
<item value=""PublicPreview""/>
<item value=""RemovedFromARM""/>
<item value=""Retired""/>
</enum>
</prop>
<prop type="string" name="serviceId"/>
</item>
</prop>
</prop>
<prop type="array<@ResourceProviderEndpoint_read>" name="managementGroupGlobalNotificationEndpoints">
<item type="@ResourceProviderEndpoint_read"/>
</prop>
<prop type="object" name="metadata">
<additionalProp anyType="True"/>
</prop>
<prop type="string" name="namespace"/>
<prop type="string" name="notificationOptions">
<enum>
<item value=""EmitSpendingLimit""/>
<item value=""None""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="notificationSettings">
<prop type="array<object>" name="subscriberSettings">
<item type="object">
<prop type="array<object>" name="filterRules">
<item type="object">
<prop type="array<object>" name="endpointInformation">
<item type="object">
<prop type="string" name="endpoint"/>
<prop type="string" name="endpointType">
<enum>
<item value=""Eventhub""/>
<item value=""Webhook""/>
</enum>
</prop>
<prop type="string" name="schemaVersion"/>
</item>
</prop>
<prop type="string" name="filterQuery"/>
</item>
</prop>
</item>
</prop>
</prop>
<prop type="array<object>" name="notifications" cls="Notifications_read">
<item type="object">
<prop type="string" name="notificationType">
<enum>
<item value=""SubscriptionNotification""/>
<item value=""Unspecified""/>
</enum>
</prop>
<prop type="string" name="skipNotifications">
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
<item value=""Unspecified""/>
</enum>
</prop>
</item>
</prop>
<prop type="string" name="oboSubscriptionId"/>
<prop type="array<string>" name="optionalFeatures">
<item type="string"/>
</prop>
<prop type="object" name="privateResourceProviderConfiguration">
<prop type="array<string>" name="allowedSubscriptions">
<item type="string"/>
</prop>
</prop>
<prop type="object" name="providerAuthentication">
<prop type="array<string>" name="allowedAudiences" required="True">
<item type="string"/>
</prop>
</prop>
<prop type="array<object>" name="providerAuthorizations">
<item type="object" cls="ResourceProviderAuthorization_read">
<prop type="array<object>" name="allowedThirdPartyExtensions" identifiers="name">
<item type="object">
<prop type="string" name="name"/>
</item>
</prop>
<prop type="string" name="applicationId"/>
<prop type="string" name="groupingTag"/>
<prop type="object" name="managedByAuthorization">
<prop type="array<object>" name="additionalAuthorizations" identifiers="roleDefinitionId applicationId">
<item type="object">
<prop type="string" name="applicationId"/>
<prop type="string" name="roleDefinitionId"/>
</item>
</prop>
<prop type="boolean" name="allowManagedByInheritance"/>
<prop type="string" name="managedByResourceRoleDefinitionId"/>
</prop>
<prop type="string" name="managedByRoleDefinitionId"/>
<prop type="string" name="roleDefinitionId"/>
</item>
</prop>
<prop type="object" name="providerHubMetadata">
<prop type="string" name="directRpRoleDefinitionId"/>
<prop type="string" name="globalAsyncOperationResourceTypeName"/>
<prop type="object" name="providerAuthentication">
<prop type="array<string>" name="allowedAudiences" required="True">
<item type="string"/>
</prop>
</prop>
<prop type="array<@ResourceProviderAuthorization_read>" name="providerAuthorizations">
<item type="@ResourceProviderAuthorization_read"/>
</prop>
<prop type="string" name="regionalAsyncOperationResourceTypeName"/>
<prop type="object" name="thirdPartyProviderAuthorization">
<prop type="array<object>" name="authorizations">
<item type="object">
<prop type="string" name="principalId" required="True"/>
<prop type="string" name="roleDefinitionId" required="True"/>
</item>
</prop>
<prop type="string" name="managedByTenantId"/>
</prop>
</prop>
<prop type="string" name="providerType">
<enum>
<item value=""AuthorizationFree""/>
<item value=""Decommissioned""/>
<item value=""External""/>
<item value=""Hidden""/>
<item value=""Internal""/>
<item value=""LegacyRegistrationRequired""/>
<item value=""NotSpecified""/>
<item value=""RegistrationFree""/>
<item value=""TenantOnly""/>
</enum>
</prop>
<prop type="string" name="providerVersion"/>
<prop readOnly="True" type="string" name="provisioningState">
<enum>
<item value=""Accepted""/>
<item value=""Canceled""/>
<item value=""Created""/>
<item value=""Creating""/>
<item value=""Deleted""/>
<item value=""Deleting""/>
<item value=""Failed""/>
<item value=""MovingResources""/>
<item value=""NotSpecified""/>
<item value=""RolloutInProgress""/>
<item value=""Running""/>
<item value=""Succeeded""/>
<item value=""TransientFailure""/>
</enum>
</prop>
<prop type="object" name="requestHeaderOptions">
<prop type="string" name="optInHeaders">
<enum>
<item value=""ClientGroupMembership""/>
<item value=""ClientPrincipalNameEncoded""/>
<item value=""MSIResourceIdEncoded""/>
<item value=""ManagementGroupAncestorsEncoded""/>
<item value=""NotSpecified""/>
<item value=""PrivateLinkId""/>
<item value=""PrivateLinkResourceId""/>
<item value=""PrivateLinkVnetTrafficTag""/>
<item value=""ResourceGroupLocation""/>
<item value=""SignedAuxiliaryTokens""/>
<item value=""SignedUserToken""/>
<item value=""UnboundedClientGroupMembership""/>
</enum>
</prop>
<prop type="string" name="optOutHeaders">
<enum>
<item value=""NotSpecified""/>
<item value=""SystemDataCreatedByLastModifiedBy""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
<prop type="object" name="resourceGroupLockOptionDuringMove">
<prop type="string" name="blockActionVerb">
<enum>
<item value=""Action""/>
<item value=""Delete""/>
<item value=""NotSpecified""/>
<item value=""Read""/>
<item value=""Unrecognized""/>
<item value=""Write""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="resourceHydrationAccounts">
<item type="object">
<prop type="string" name="accountName"/>
<prop type="string" name="encryptedKey"/>
<prop type="integer64" name="maxChildResourceConsistencyJobLimit"/>
<prop type="string" name="subscriptionId"/>
</item>
</prop>
<prop type="object" name="resourceProviderAuthorizationRules" cls="ResourceProviderAuthorizationRules_read">
<prop type="object" name="asyncOperationPollingRules">
<prop type="string" name="additionalOptions">
<enum>
<item value=""ProtectedAsyncOperationPolling""/>
<item value=""ProtectedAsyncOperationPollingAuditOnly""/>
</enum>
</prop>
<prop type="array<string>" name="authorizationActions">
<item type="string"/>
</prop>
</prop>
</prop>
<prop type="object" name="responseOptions">
<prop type="string" name="serviceClientOptionsType">
<enum>
<item value=""DisableAutomaticDecompression""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="string" name="serviceName"/>
<prop type="array<object>" name="services">
<item type="object">
<prop type="string" name="serviceName"/>
<prop type="string" name="status">
<enum>
<item value=""Active""/>
<item value=""Inactive""/>
</enum>
</prop>
</item>
</prop>
<prop type="object" name="subscriptionLifecycleNotificationSpecifications">
<prop type="duration" name="softDeleteTTL"/>
<prop type="array<object>" name="subscriptionStateOverrideActions">
<item type="object" cls="SubscriptionStateOverrideAction_read">
<prop type="string" name="action" required="True">
<enum>
<item value=""BillingCancellation""/>
<item value=""DeleteAllResources""/>
<item value=""NoOp""/>
<item value=""NotDefined""/>
<item value=""SoftDeleteAllResources""/>
<item value=""UndoSoftDelete""/>
</enum>
</prop>
<prop type="string" name="state" required="True">
<enum>
<item value=""Deleted""/>
<item value=""Registered""/>
<item value=""Suspended""/>
<item value=""SuspendedToDeleted""/>
<item value=""SuspendedToRegistered""/>
<item value=""SuspendedToUnregistered""/>
<item value=""SuspendedToWarned""/>
<item value=""Unregistered""/>
<item value=""Warned""/>
<item value=""WarnedToDeleted""/>
<item value=""WarnedToRegistered""/>
<item value=""WarnedToSuspended""/>
<item value=""WarnedToUnregistered""/>
</enum>
</prop>
</item>
</prop>
</prop>
<prop type="object" name="templateDeploymentOptions">
<prop type="array<string>" name="preflightOptions">
<item type="string">
<enum>
<item value=""ContinueDeploymentOnFailure""/>
<item value=""DefaultValidationOnly""/>
<item value=""None""/>
</enum>
</item>
</prop>
<prop type="boolean" name="preflightSupported"/>
</prop>
<prop type="@TokenAuthConfiguration_read" name="tokenAuthConfiguration"/>
</prop>
<prop readOnly="True" type="object" name="systemData" cls="SystemData_read">
<prop type="dateTime" name="createdAt"/>
<prop type="string" name="createdBy"/>
<prop type="string" name="createdByType">
<enum>
<item value=""Application""/>
<item value=""Key""/>
<item value=""ManagedIdentity""/>
<item value=""User""/>
</enum>
</prop>
<prop type="dateTime" name="lastModifiedAt"/>
<prop type="string" name="lastModifiedBy"/>
<prop type="string" name="lastModifiedByType">
<enum>
<item value=""Application""/>
<item value=""Key""/>
<item value=""ManagedIdentity""/>
<item value=""User""/>
</enum>
</prop>
</prop>
<prop readOnly="True" type="string" name="type"/>
</prop>
<prop type="boolean" name="refreshSubscriptionRegistration"/>
<prop type="array<string>" name="releaseScopes">
<item type="string"/>
</prop>
<prop type="array<object>" name="resourceTypeRegistrations">
<item type="object">
<prop readOnly="True" type="ResourceId" name="id">
<format template="/subscriptions/{}/providers/Microsoft.ProviderHub/providerRegistrations/{}/resourcetypeRegistrations/{}"/>
</prop>
<prop type="string" name="kind">
<default value=""Managed""/>
<enum>
<item value=""Direct""/>
<item value=""Hybrid""/>
<item value=""Managed""/>
</enum>
</prop>
<prop readOnly="True" type="string" name="name"/>
<prop type="object" name="properties">
<prop type="boolean" name="addResourceListTargetLocations"/>
<prop type="string" name="additionalOptions">
<enum>
<item value=""ProtectedAsyncOperationPolling""/>
<item value=""ProtectedAsyncOperationPollingAuditOnly""/>
</enum>
</prop>
<prop type="boolean" name="allowEmptyRoleAssignments"/>
<prop type="array<object>" name="allowedResourceNames" identifiers="getActionVerb name">
<item type="object">
<prop type="string" name="getActionVerb"/>
<prop type="string" name="name"/>
</item>
</prop>
<prop type="array<string>" name="allowedTemplateDeploymentReferenceActions">
<item type="string"/>
</prop>
<prop type="array<string>" name="allowedUnauthorizedActions">
<item type="string"/>
</prop>
<prop type="array<object>" name="allowedUnauthorizedActionsExtensions">
<item type="object">
<prop type="string" name="action"/>
<prop type="string" name="intent">
<enum>
<item value=""DEFERRED_ACCESS_CHECK""/>
<item value=""LOW_PRIVILEGE""/>
<item value=""NOT_SPECIFIED""/>
<item value=""RP_CONTRACT""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<object>" name="apiProfiles" identifiers="profileVersion apiVersion">
<item type="object">
<prop type="string" name="apiVersion"/>
<prop type="string" name="profileVersion"/>
</item>
</prop>
<prop type="string" name="asyncOperationResourceTypeName"/>
<prop type="array<object>" name="asyncTimeoutRules">
<item type="object">
<prop type="string" name="actionName"/>
<prop type="string" name="timeout"/>
</item>
</prop>
<prop type="array<object>" name="authorizationActionMappings" identifiers="original">
<item type="object">
<prop type="string" name="desired"/>
<prop type="string" name="original"/>
</item>
</prop>
<prop type="object" name="availabilityZoneRule">
<prop type="string" name="availabilityZonePolicy">
<enum>
<item value=""MultiZoned""/>
<item value=""NotSpecified""/>
<item value=""SingleZoned""/>
</enum>
</prop>
</prop>
<prop type="object" name="capacityRule">
<prop type="string" name="capacityPolicy">
<enum>
<item value=""Default""/>
<item value=""Restricted""/>
</enum>
</prop>
<prop type="string" name="skuAlias"/>
</prop>
<prop type="string" name="category">
<enum>
<item value=""FreeForm""/>
<item value=""Internal""/>
<item value=""None""/>
<item value=""PureProxy""/>
</enum>
</prop>
<prop type="object" name="checkNameAvailabilitySpecifications">
<prop type="boolean" name="enableDefaultValidation"/>
<prop type="array<string>" name="resourceTypesWithCustomValidation">
<item type="string"/>
</prop>
</prop>
<prop type="array<string>" name="commonApiVersions">
<item type="string"/>
</prop>
<prop type="string" name="crossTenantTokenValidation">
<enum>
<item value=""EnsureSecureValidation""/>
<item value=""PassthroughInsecureToken""/>
</enum>
</prop>
<prop type="string" name="defaultApiVersion"/>
<prop type="array<string>" name="disallowedActionVerbs">
<item type="string"/>
</prop>
<prop type="array<string>" name="disallowedEndUserOperations">
<item type="string"/>
</prop>
<prop type="object" name="dstsConfiguration">
<prop type="string" name="serviceDnsName"/>
<prop type="string" name="serviceName" required="True"/>
</prop>
<prop type="boolean" name="enableAsyncOperation"/>
<prop type="boolean" name="enableThirdPartyS2S"/>
<prop type="array<object>" name="endpoints">
<item type="object">
<prop type="string" name="apiVersion"/>
<prop type="array<string>" name="apiVersions">
<item type="string"/>
</prop>
<prop type="string" name="dataBoundary">
<enum>
<item value=""EU""/>
<item value=""Global""/>
<item value=""NotDefined""/>
<item value=""US""/>
</enum>
</prop>
<prop type="object" name="dstsConfiguration">
<prop type="string" name="serviceDnsName"/>
<prop type="string" name="serviceName" required="True"/>
</prop>
<prop type="boolean" name="enabled"/>
<prop type="string" name="endpointType">
<enum>
<item value=""Canary""/>
<item value=""NotSpecified""/>
<item value=""Production""/>
<item value=""TestInProduction""/>
</enum>
</prop>
<prop type="string" name="endpointUri"/>
<prop type="array<object>" name="extensions" identifiers="endpointUri">
<item type="object">
<prop type="string" name="endpointUri"/>
<prop type="array<string>" name="extensionCategories">
<item type="string">
<enum>
<item value=""BestMatchOperationBegin""/>
<item value=""NotSpecified""/>
<item value=""ResourceCreationBegin""/>
<item value=""ResourceCreationCompleted""/>
<item value=""ResourceCreationValidate""/>
<item value=""ResourceDeletionBegin""/>
<item value=""ResourceDeletionCompleted""/>
<item value=""ResourceDeletionValidate""/>
<item value=""ResourceMoveBegin""/>
<item value=""ResourceMoveCompleted""/>
<item value=""ResourcePatchBegin""/>
<item value=""ResourcePatchCompleted""/>
<item value=""ResourcePatchValidate""/>
<item value=""ResourcePostAction""/>
<item value=""ResourceReadBegin""/>
<item value=""ResourceReadValidate""/>
<item value=""SubscriptionLifecycleNotification""/>
<item value=""SubscriptionLifecycleNotificationDeletion""/>
</enum>
</item>
</prop>
<prop type="duration" name="timeout"/>
</item>
</prop>
<prop type="object" name="featuresRule">
<prop type="string" name="requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="string" name="kind">
<default value=""Managed""/>
<enum>
<item value=""Direct""/>
<item value=""Managed""/>
</enum>
</prop>
<prop type="array<string>" name="locations">
<item type="string"/>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
<prop type="string" name="skuLink"/>
<prop type="duration" name="timeout"/>
<prop type="@TokenAuthConfiguration_read" name="tokenAuthConfiguration"/>
<prop type="array<string>" name="zones">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="array<object>" name="extendedLocations">
<item type="object">
<prop type="string" name="supportedPolicy"/>
<prop type="string" name="type"/>
</item>
</prop>
<prop type="object" name="extensionOptions">
<prop type="object" name="resourceCreationBegin">
<prop type="array<string>" name="request">
<item type="string">
<enum>
<item value=""DoNotMergeExistingReadOnlyAndSecretProperties""/>
<item value=""IncludeInternalMetadata""/>
<item value=""NotSpecified""/>
</enum>
</item>
</prop>
<prop type="array<string>" name="response">
<item type="string">
<enum>
<item value=""DoNotMergeExistingReadOnlyAndSecretProperties""/>
<item value=""IncludeInternalMetadata""/>
<item value=""NotSpecified""/>
</enum>
</item>
</prop>
</prop>
</prop>
<prop type="object" name="featuresRule">
<prop type="string" name="requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="string" name="frontdoorRequestMode">
<enum>
<item value=""NotSpecified""/>
<item value=""UseManifest""/>
</enum>
</prop>
<prop type="string" name="groupingTag"/>
<prop type="object" name="identityManagement">
<prop type="string" name="applicationId"/>
<prop type="array<string>" name="applicationIds">
<item type="string"/>
</prop>
<prop type="array<string>" name="delegationAppIds">
<item type="string"/>
</prop>
<prop type="string" name="type">
<enum>
<item value=""Actor""/>
<item value=""DelegatedResourceIdentity""/>
<item value=""NotSpecified""/>
<item value=""SystemAssigned""/>
<item value=""UserAssigned""/>
</enum>
</prop>
</prop>
<prop type="boolean" name="isPureProxy"/>
<prop type="string" name="legacyName"/>
<prop type="array<string>" name="legacyNames">
<item type="string"/>
</prop>
<prop type="object" name="legacyPolicy">
<prop type="array<object>" name="disallowedConditions">
<item type="object">
<prop type="array<string>" name="disallowedLegacyOperations">
<item type="string">
<enum>
<item value=""Action""/>
<item value=""AzureAsyncOperationWaiting""/>
<item value=""Create""/>
<item value=""Delete""/>
<item value=""DeploymentCleanup""/>
<item value=""EvaluateDeploymentOutput""/>
<item value=""NotSpecified""/>
<item value=""Read""/>
<item value=""ResourceCacheWaiting""/>
<item value=""Waiting""/>
</enum>
</item>
</prop>
<prop type="string" name="feature"/>
</item>
</prop>
<prop type="array<string>" name="disallowedLegacyOperations">
<item type="string">
<enum>
<item value=""Action""/>
<item value=""AzureAsyncOperationWaiting""/>
<item value=""Create""/>
<item value=""Delete""/>
<item value=""DeploymentCleanup""/>
<item value=""EvaluateDeploymentOutput""/>
<item value=""NotSpecified""/>
<item value=""Read""/>
<item value=""ResourceCacheWaiting""/>
<item value=""Waiting""/>
</enum>
</item>
</prop>
</prop>
<prop type="array<object>" name="linkedAccessChecks">
<item type="object">
<prop type="string" name="actionName"/>
<prop type="string" name="linkedAction"/>
<prop type="string" name="linkedActionVerb"/>
<prop type="string" name="linkedProperty"/>
<prop type="string" name="linkedType"/>
<prop readOnly="True" type="string" name="options">
<enum>
<item value=""IgnoreEmptyStringLinkedType""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<object>" name="linkedNotificationRules">
<item type="object">
<prop type="array<string>" name="actions">
<item type="string"/>
</prop>
<prop type="array<string>" name="actionsOnFailedOperation">
<item type="string"/>
</prop>
<prop type="array<string>" name="fastPathActions">
<item type="string"/>
</prop>
<prop type="array<string>" name="fastPathActionsOnFailedOperation">
<item type="string"/>
</prop>
<prop type="duration" name="linkedNotificationTimeout"/>
</item>
</prop>
<prop type="array<object>" name="linkedOperationRules" identifiers="linkedOperation linkedAction">
<item type="object">
<prop type="array<string>" name="dependsOnTypes">
<item type="string"/>
</prop>
<prop type="string" name="linkedAction" required="True">
<enum>
<item value=""Blocked""/>
<item value=""Enabled""/>
<item value=""NotSpecified""/>
<item value=""Validate""/>
</enum>
</prop>
<prop type="string" name="linkedOperation" required="True">
<enum>
<item value=""CrossResourceGroupResourceMove""/>
<item value=""CrossSubscriptionResourceMove""/>
<item value=""None""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<object>" name="loggingRules">
<item type="object">
<prop type="string" name="action" required="True"/>
<prop type="string" name="detailLevel" required="True">
<enum>
<item value=""Body""/>
<item value=""None""/>
</enum>
</prop>
<prop type="string" name="direction" required="True">
<enum>
<item value=""None""/>
<item value=""Request""/>
<item value=""Response""/>
</enum>
</prop>
<prop type="object" name="hiddenPropertyPaths">
<prop type="array<string>" name="hiddenPathsOnRequest">
<item type="string"/>
</prop>
<prop type="array<string>" name="hiddenPathsOnResponse">
<item type="string"/>
</prop>
</prop>
</item>
</prop>
<prop type="object" name="managedResourceGroupConfiguration">
<prop type="array<string>" name="applicationIds">
<item type="string"/>
</prop>
<prop type="object" name="denyAssignmentConfiguration">
<prop type="boolean" name="enabled"/>
<prop type="array<string>" name="notActions">
<item type="string"/>
</prop>
</prop>
<prop type="boolean" name="enabled"/>
<prop type="string" name="resourceGroupLocationOverride"/>
</prop>
<prop type="object" name="management">
<prop type="array<string>" name="authorizationOwners">
<item type="string"/>
</prop>
<prop type="array<string>" name="canaryManifestOwners">
<item type="string"/>
</prop>
<prop type="object" name="errorResponseMessageOptions">
<prop type="string" name="serverFailureResponseMessageType">
<enum>
<item value=""NotSpecified""/>
<item value=""OutageReporting""/>
</enum>
</prop>
</prop>
<prop type="object" name="expeditedRolloutMetadata">
<prop type="boolean" name="enabled"/>
<prop type="string" name="expeditedRolloutIntent">
<enum>
<item value=""Hotfix""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="expeditedRolloutSubmitters">
<item type="string"/>
</prop>
<prop type="string" name="incidentContactEmail"/>
<prop type="string" name="incidentRoutingService"/>
<prop type="string" name="incidentRoutingTeam"/>
<prop type="array<string>" name="manifestOwners">
<item type="string"/>
</prop>
<prop type="string" name="pcCode"/>
<prop type="string" name="profitCenterProgramId"/>
<prop type="string" name="resourceAccessPolicy">
<enum>
<item value=""AcisActionAllowed""/>
<item value=""AcisReadAllowed""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="array<@ResourceAccessRole_read>" name="resourceAccessRoles">
<item type="@ResourceAccessRole_read"/>
</prop>
<prop type="array<string>" name="schemaOwners">
<item type="string"/>
</prop>
<prop type="array<@ServiceTreeInfo_read>" name="serviceTreeInfos">
<item type="@ServiceTreeInfo_read"/>
</prop>
</prop>
<prop type="string" name="manifestLink"/>
<prop type="object" name="marketplaceOptions">
<prop type="boolean" name="addOnPlanConversionAllowed"/>
</prop>
<prop type="string" name="marketplaceType">
<enum>
<item value=""AddOn""/>
<item value=""Bypass""/>
<item value=""NotSpecified""/>
<item value=""ProviderHub""/>
<item value=""Store""/>
</enum>
</prop>
<prop type="object" name="metadata">
<additionalProp>
<item type="object">
<additionalProp anyType="True"/>
</item>
</additionalProp>
</prop>
<prop type="@Notifications_read" name="notifications"/>
<prop type="object" name="onBehalfOfTokens">
<prop type="string" name="actionName"/>
<prop type="string" name="lifeTime"/>
</prop>
<prop type="object" name="openApiConfiguration">
<prop type="object" name="validation">
<prop type="boolean" name="allowNoncompliantCollectionResponse"/>
</prop>
</prop>
<prop type="string" name="policyExecutionType">
<enum>
<item value=""BypassPolicies""/>
<item value=""ExecutePolicies""/>
<item value=""ExpectPartialPutRequests""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="privateEndpointConfiguration">
<prop type="array<object>" name="groupConnectivityInformation" required="True">
<item type="object">
<prop type="string" name="groupId" required="True"/>
<prop type="string" name="redirectMapId"/>
<prop type="array<string>" name="requiredMembers" required="True">
<item type="string"/>
</prop>
<prop type="array<string>" name="requiredZoneNames" required="True">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="string" name="minApiVersion" required="True"/>
</prop>
<prop readOnly="True" type="string" name="provisioningState">
<enum>
<item value=""Accepted""/>
<item value=""Canceled""/>
<item value=""Created""/>
<item value=""Creating""/>
<item value=""Deleted""/>
<item value=""Deleting""/>
<item value=""Failed""/>
<item value=""MovingResources""/>
<item value=""NotSpecified""/>
<item value=""RolloutInProgress""/>
<item value=""Running""/>
<item value=""Succeeded""/>
<item value=""TransientFailure""/>
</enum>
</prop>
<prop type="object" name="quotaRule">
<prop type="array<object>" name="locationRules">
<item type="object">
<prop type="string" name="location"/>
<prop type="string" name="policy">
<enum>
<item value=""Default""/>
<item value=""None""/>
<item value=""Restricted""/>
</enum>
</prop>
<prop type="string" name="quotaId"/>
</item>
</prop>
<prop type="string" name="quotaPolicy">
<enum>
<item value=""Default""/>
<item value=""None""/>
<item value=""Restricted""/>
</enum>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
</prop>
<prop type="string" name="regionality">
<enum>
<item value=""Global""/>
<item value=""NotSpecified""/>
<item value=""Regional""/>
</enum>
</prop>
<prop type="object" name="requestHeaderOptions">
<prop type="string" name="optInHeaders">
<enum>
<item value=""ClientGroupMembership""/>
<item value=""ClientPrincipalNameEncoded""/>
<item value=""MSIResourceIdEncoded""/>
<item value=""ManagementGroupAncestorsEncoded""/>
<item value=""NotSpecified""/>
<item value=""PrivateLinkId""/>
<item value=""PrivateLinkResourceId""/>
<item value=""PrivateLinkVnetTrafficTag""/>
<item value=""ResourceGroupLocation""/>
<item value=""SignedAuxiliaryTokens""/>
<item value=""SignedUserToken""/>
<item value=""UnboundedClientGroupMembership""/>
</enum>
</prop>
<prop type="string" name="optOutHeaders">
<enum>
<item value=""NotSpecified""/>
<item value=""SystemDataCreatedByLastModifiedBy""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
<prop type="object" name="resourceCache">
<prop type="boolean" name="enableResourceCache"/>
<prop type="string" name="resourceCacheExpirationTimespan"/>
</prop>
<prop type="object" name="resourceConcurrencyControlOptions">
<additionalProp>
<item type="object">
<prop type="string" name="policy">
<enum>
<item value=""NotSpecified""/>
<item value=""SynchronizeBeginExtension""/>
</enum>
</prop>
</item>
</additionalProp>
</prop>
<prop type="string" name="resourceDeletionPolicy">
<enum>
<item value=""CascadeDeleteAll""/>
<item value=""CascadeDeleteProxyOnlyChildren""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="resourceGraphConfiguration">
<prop type="string" name="apiVersion"/>
<prop type="boolean" name="enabled"/>
</prop>
<prop type="object" name="resourceManagementOptions">
<prop type="object" name="batchProvisioningSupport">
<prop type="array<object>" name="actionConfigurations">
<item type="object">
<prop type="string" name="authorizationAction"/>
<prop type="integer64" name="maxBatchSize"/>
</item>
</prop>
<prop type="string" name="batchContractVersion"/>
<prop type="integer64" name="maxBatchSize"/>
<prop type="integer64" name="maxNestedBatchSize"/>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
<prop type="string" name="supportedOperations">
<enum>
<item value=""Delete""/>
<item value=""Get""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="deleteDependencies" identifiers="requiredFeatures linkedProperty linkedType">
<item type="object">
<prop type="string" name="linkedProperty"/>
<prop type="string" name="linkedType"/>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="object" name="nestedProvisioningSupport">
<prop type="string" name="minimumApiVersion"/>
</prop>
</prop>
<prop type="object" name="resourceMovePolicy">
<prop type="boolean" name="crossResourceGroupMoveEnabled"/>
<prop type="boolean" name="crossSubscriptionMoveEnabled"/>
<prop type="boolean" name="validationRequired"/>
</prop>
<prop type="@ResourceProviderAuthorizationRules_read" name="resourceProviderAuthorizationRules"/>
<prop type="object" name="resourceQueryManagement">
<prop type="string" name="filterOption">
<enum>
<item value=""EnableSubscriptionFilterOnTenant""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="string" name="resourceSubType">
<enum>
<item value=""AsyncOperation""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="resourceTypeCommonAttributeManagement">
<prop type="string" name="commonApiVersionsMergeMode">
<enum>
<item value=""Merge""/>
<item value=""Overwrite""/>
</enum>
</prop>
</prop>
<prop type="string" name="resourceValidation">
<enum>
<item value=""NotSpecified""/>
<item value=""ProfaneWords""/>
<item value=""ReservedWords""/>
</enum>
</prop>
<prop type="object" name="routingRule">
<prop type="string" name="hostResourceType"/>
</prop>
<prop type="string" name="routingType">
<enum>
<item value=""CascadeExtension""/>
<item value=""Default""/>
<item value=""Extension""/>
<item value=""Failover""/>
<item value=""Fanout""/>
<item value=""HostBased""/>
<item value=""LocationBased""/>
<item value=""ProxyOnly""/>
<item value=""Tenant""/>
</enum>
</prop>
<prop type="array<@ServiceTreeInfo_read>" name="serviceTreeInfos">
<item type="@ServiceTreeInfo_read"/>
</prop>
<prop type="string" name="skuLink"/>
<prop type="object" name="subscriptionLifecycleNotificationSpecifications">
<prop type="duration" name="softDeleteTTL"/>
<prop type="array<@SubscriptionStateOverrideAction_read>" name="subscriptionStateOverrideActions">
<item type="@SubscriptionStateOverrideAction_read"/>
</prop>
</prop>
<prop type="array<object>" name="subscriptionStateRules">
<item type="object">
<prop type="array<string>" name="allowedActions">
<item type="string"/>
</prop>
<prop type="string" name="state">
<enum>
<item value=""Deleted""/>
<item value=""Disabled""/>
<item value=""Enabled""/>
<item value=""NotDefined""/>
<item value=""PastDue""/>
<item value=""Warned""/>
</enum>
</prop>
</item>
</prop>
<prop type="boolean" name="superScaleEnabled"/>
<prop type="boolean" name="supportsTags"/>
<prop type="array<object>" name="swaggerSpecifications" identifiers="swaggerSpecFolderUri">
<item type="object">
<prop type="array<string>" name="apiVersions">
<item type="string"/>
</prop>
<prop type="string" name="swaggerSpecFolderUri"/>
</item>
</prop>
<prop type="object" name="templateDeploymentOptions">
<prop type="array<string>" name="preflightOptions">
<item type="string">
<enum>
<item value=""ContinueDeploymentOnFailure""/>
<item value=""DefaultValidationOnly""/>
<item value=""None""/>
</enum>
</item>
</prop>
<prop type="boolean" name="preflightSupported"/>
</prop>
<prop type="object" name="templateDeploymentPolicy">
<prop type="string" name="capabilities" required="True">
<enum>
<item value=""Default""/>
<item value=""Preflight""/>
</enum>
</prop>
<prop type="string" name="preflightNotifications">
<enum>
<item value=""None""/>
<item value=""UnregisteredSubscriptions""/>
</enum>
</prop>
<prop type="string" name="preflightOptions" required="True">
<enum>
<item value=""DeploymentRequests""/>
<item value=""None""/>
<item value=""RegisteredOnly""/>
<item value=""TestOnly""/>
<item value=""ValidationRequests""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="throttlingRules">
<item type="object">
<prop type="string" name="action" required="True"/>
<prop type="array<string>" name="applicationId">
<item type="string"/>
</prop>
<prop type="array<object>" name="metrics" required="True">
<item type="object">
<prop type="string" name="bucketSize"/>
<prop type="duration" name="interval"/>
<prop type="integer64" name="limit" required="True"/>
<prop type="string" name="type" required="True">
<enum>
<item value=""NotSpecified""/>
<item value=""NumberOfRequests""/>
<item value=""NumberOfResources""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="@TokenAuthConfiguration_read" name="tokenAuthConfiguration"/>
<prop type="object" name="writeLock">
<prop type="string" name="state">
<default value=""Disabled""/>
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
</enum>
</prop>
</prop>
</prop>
<prop readOnly="True" type="@SystemData_read" name="systemData"/>
<prop readOnly="True" type="string" name="type"/>
</item>
</prop>
<prop type="string" name="rolloutId"/>
<prop type="boolean" name="skipReleaseScopeValidation"/>
</prop>
<prop type="object" name="status">
<prop type="array<string>" name="completedRegions">
<item type="string"/>
</prop>
<prop type="object" name="failedOrSkippedRegions">
<additionalProp>
<item type="object" cls="ExtendedErrorInfo_read">
<prop type="array<object>" name="additionalInfo" identifiers="type">
<item type="object">
<prop readOnly="True" type="object" name="info">
<additionalProp readOnly="True" anyType="True"/>
</prop>
<prop type="string" name="type" required="True"/>
</item>
</prop>
<prop type="string" name="code"/>
<prop type="array<@ExtendedErrorInfo_read>" name="details" identifiers="code">
<item type="@ExtendedErrorInfo_read"/>
</prop>
<prop type="string" name="message"/>
<prop type="string" name="target"/>
</item>
</additionalProp>
</prop>
<prop type="object" name="manifestCheckinStatus">
<prop type="string" name="commitId"/>
<prop type="boolean" name="isCheckedIn" required="True"/>
<prop type="string" name="pullRequest"/>
<prop type="string" name="statusMessage" required="True"/>
</prop>
</prop>
</prop>
<prop readOnly="True" type="@SystemData_read" name="systemData"/>
<prop readOnly="True" type="string" name="type"/>
</schema>
</json>
</body>
</response>
<response isError="True">
<body>
<json>
<schema type="@MgmtErrorFormat"/>
</json>
</body>
</response>
</http>
</operation>
<output type="object" ref="$Instance" clientFlatten="True"/>
</command>
<command name="delete" version="2025-03-01-preview" confirmation="Are you sure you want to perform this operation?">
<resource id="/subscriptions/{}/providers/microsoft.providerhub/providerregistrations/{}/customrollouts/{}" version="2025-03-01-preview" swagger="mgmt-plane/providerhub/ResourceProviders/Microsoft.ProviderHub/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9wcm92aWRlcnMvTWljcm9zb2Z0LlByb3ZpZGVySHViL3Byb3ZpZGVyUmVnaXN0cmF0aW9ucy97cHJvdmlkZXJOYW1lc3BhY2V9L2N1c3RvbVJvbGxvdXRzL3tyb2xsb3V0TmFtZX0=/V/MjAyNS0wMy0wMS1wcmV2aWV3"/>
<argGroup name="">
<arg type="string" var="$Path.providerNamespace" options="provider-namespace" required="True" idPart="name">
<help short="The name of the resource provider hosted within ProviderHub."/>
</arg>
<arg type="string" var="$Path.rolloutName" options="rollout-name name n" required="True" idPart="child_name_1">
<help short="The rollout name."/>
<format pattern="^[-\w\._\(\)]+$" maxLength="260"/>
</arg>
<arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/>
</argGroup>
<operation operationId="CustomRollouts_Delete">
<http path="/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/customRollouts/{rolloutName}">
<request method="delete">
<path>
<param type="string" name="providerNamespace" arg="$Path.providerNamespace" required="True"/>
<param type="string" name="rolloutName" arg="$Path.rolloutName" required="True">
<format pattern="^[-\w\._\(\)]+$" maxLength="260"/>
</param>
<param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True">
<format minLength="1"/>
</param>
</path>
<query>
<const readOnly="True" const="True" type="string" name="api-version" required="True">
<default value=""2025-03-01-preview""/>
<format minLength="1"/>
</const>
</query>
</request>
<response statusCode="200"/>
<response statusCode="204"/>
<response isError="True">
<body>
<json>
<schema type="@MgmtErrorFormat"/>
</json>
</body>
</response>
</http>
</operation>
</command>
<command name="create" version="2025-03-01-preview">
<resource id="/subscriptions/{}/providers/microsoft.providerhub/providerregistrations/{}/customrollouts/{}" version="2025-03-01-preview" swagger="mgmt-plane/providerhub/ResourceProviders/Microsoft.ProviderHub/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9wcm92aWRlcnMvTWljcm9zb2Z0LlByb3ZpZGVySHViL3Byb3ZpZGVyUmVnaXN0cmF0aW9ucy97cHJvdmlkZXJOYW1lc3BhY2V9L2N1c3RvbVJvbGxvdXRzL3tyb2xsb3V0TmFtZX0=/V/MjAyNS0wMy0wMS1wcmV2aWV3"/>
<argGroup name="">
<arg type="string" var="$Path.providerNamespace" options="provider-namespace" required="True" idPart="name">
<help short="The name of the resource provider hosted within ProviderHub."/>
</arg>
<arg type="string" var="$Path.rolloutName" options="rollout-name name n" required="True" idPart="child_name_1">
<help short="The rollout name."/>
<format pattern="^[-\w\._\(\)]+$" maxLength="260"/>
</arg>
<arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/>
</argGroup>
<argGroup name="Properties">
<arg type="object" var="$properties.properties.specification" options="specification" required="True" group="Properties">
<arg type="object" var="$properties.properties.specification.autoProvisionConfig" options="auto-provision-config">
<arg type="boolean" var="$properties.properties.specification.autoProvisionConfig.resourceGraph" options="resource-graph"/>
<arg type="boolean" var="$properties.properties.specification.autoProvisionConfig.storage" options="storage"/>
</arg>
<arg type="object" var="$properties.properties.specification.canary" options="canary">
<arg type="array<string>" var="$properties.properties.specification.canary.regions" options="regions">
<item type="string"/>
</arg>
</arg>
<arg type="object" var="$properties.properties.specification.manifestCheckinSpecification" options="manifest-checkin-specification">
<arg type="string" var="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinOption" options="manifest-checkin-option">
<default value=""DoNotAttemptAutomaticManifestCheckin""/>
<enum>
<item name="AttemptAutomaticManifestCheckin" value=""AttemptAutomaticManifestCheckin""/>
<item name="DoNotAttemptAutomaticManifestCheckin" value=""DoNotAttemptAutomaticManifestCheckin""/>
</enum>
</arg>
<arg type="object" var="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinParams" options="manifest-checkin-params">
<arg type="string" var="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinParams.baselineArmManifestLocation" options="baseline-arm-manifest-location" required="True">
<help short="The baseline ARM manifest location supplied to the checkin manifest operation."/>
</arg>
<arg type="string" var="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinParams.environment" options="environment" required="True">
<help short="The environment supplied to the checkin manifest operation."/>
</arg>
</arg>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration" options="provider-registration">
<arg type="string" var="$properties.properties.specification.providerRegistration.kind" options="kind">
<help short="Provider registration kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type."/>
<default value=""Managed""/>
<enum>
<item name="Direct" value=""Direct""/>
<item name="Hybrid" value=""Hybrid""/>
<item name="Managed" value=""Managed""/>
</enum>
</arg>
<arg type="array<object>" var="$properties.properties.specification.providerRegistration.properties.capabilities" options="capabilities" group="Properties">
<item type="object">
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.capabilities[].effect" options="effect" required="True">
<enum>
<item name="Allow" value=""Allow""/>
<item name="Disallow" value=""Disallow""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.capabilities[].quotaId" options="quota-id" required="True"/>
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.capabilities[].requiredFeatures" options="required-features">
<item type="string"/>
</arg>
</item>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.crossTenantTokenValidation" options="cross-tenant-token-validation" group="Properties">
<enum>
<item name="EnsureSecureValidation" value=""EnsureSecureValidation""/>
<item name="PassthroughInsecureToken" value=""PassthroughInsecureToken""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.customManifestVersion" options="custom-manifest-version" group="Properties">
<help short="Custom manifest version."/>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.dstsConfiguration" options="dsts-configuration" group="Properties">
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.dstsConfiguration.serviceDnsName" options="service-dns-name"/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.dstsConfiguration.serviceName" options="service-name" required="True"/>
</arg>
<arg type="boolean" var="$properties.properties.specification.providerRegistration.properties.enablePresetResourceTypes" options="enable-preset-resource-types" group="Properties">
<help short="Preset resource types enabled?"/>
</arg>
<arg nullable="True" type="boolean" var="$properties.properties.specification.providerRegistration.properties.enableTenantLinkedNotification" options="enable-tenant-linked-notification" group="Properties"/>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.featuresRule" options="features-rule" group="Properties">
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.featuresRule.requiredFeaturesPolicy" options="required-features-policy" required="True">
<enum>
<item name="All" value=""All""/>
<item name="Any" value=""Any""/>
</enum>
</arg>
</arg>
<arg type="array<object>" var="$properties.properties.specification.providerRegistration.properties.globalNotificationEndpoints" options="global-notification-endpoints" group="Properties">
<item type="object" cls="ResourceProviderEndpoint_create">
<arg type="array<string>" var="@ResourceProviderEndpoint_create.apiVersions" options="api-versions">
<item type="string"/>
</arg>
<arg type="boolean" var="@ResourceProviderEndpoint_create.enabled" options="enabled"/>
<arg type="string" var="@ResourceProviderEndpoint_create.endpointType" options="endpoint-type">
<enum>
<item name="Canary" value=""Canary""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="Production" value=""Production""/>
<item name="TestInProduction" value=""TestInProduction""/>
</enum>
</arg>
<arg type="string" var="@ResourceProviderEndpoint_create.endpointUri" options="endpoint-uri"/>
<arg type="object" var="@ResourceProviderEndpoint_create.featuresRule" options="features-rule">
<arg type="string" var="@ResourceProviderEndpoint_create.featuresRule.requiredFeaturesPolicy" options="required-features-policy" required="True">
<enum>
<item name="All" value=""All""/>
<item name="Any" value=""Any""/>
</enum>
</arg>
</arg>
<arg type="array<string>" var="@ResourceProviderEndpoint_create.locations" options="locations">
<item type="string"/>
</arg>
<arg type="array<string>" var="@ResourceProviderEndpoint_create.requiredFeatures" options="required-features">
<item type="string"/>
</arg>
<arg type="string" var="@ResourceProviderEndpoint_create.skuLink" options="sku-link"/>
<arg type="duration" var="@ResourceProviderEndpoint_create.timeout" options="timeout"/>
</item>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.legacyNamespace" options="legacy-namespace" group="Properties">
<help short="Legacy namespace."/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.legacyRegistrations" options="legacy-registrations" group="Properties">
<help short="Legacy registrations."/>
<item type="string"/>
</arg>
<arg type="array<object>" var="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules" options="linked-notification-rules" group="Properties">
<item type="object">
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].actions" options="actions">
<item type="string"/>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].dstsConfiguration" options="dsts-configuration">
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].dstsConfiguration.serviceDnsName" options="service-dns-name"/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].dstsConfiguration.serviceName" options="service-name" required="True"/>
</arg>
<arg type="array<@ResourceProviderEndpoint_create>" var="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].endpoints" options="endpoints">
<item type="@ResourceProviderEndpoint_create"/>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].tokenAuthConfiguration" options="token-auth-configuration" cls="TokenAuthConfiguration_create">
<arg type="string" var="@TokenAuthConfiguration_create.authenticationScheme" options="authentication-scheme">
<enum>
<item name="Bearer" value=""Bearer""/>
<item name="PoP" value=""PoP""/>
</enum>
</arg>
<arg type="boolean" var="@TokenAuthConfiguration_create.disableCertificateAuthenticationFallback" options="disable-certificate-authentication-fallback"/>
<arg type="string" var="@TokenAuthConfiguration_create.signedRequestScope" options="signed-request-scope">
<enum>
<item name="Endpoint" value=""Endpoint""/>
<item name="ResourceUri" value=""ResourceUri""/>
</enum>
</arg>
</arg>
</item>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.management" options="management" group="Properties">
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.management.authorizationOwners" options="authorization-owners">
<item type="string"/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.management.canaryManifestOwners" options="canary-manifest-owners">
<help short="List of manifest owners for canary."/>
<item type="string"/>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.management.errorResponseMessageOptions" options="error-response-message-options">
<help short="Options for error response messages."/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.management.errorResponseMessageOptions.serverFailureResponseMessageType" options="server-failure-response-message-type">
<help short="Type of server failure response message."/>
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="OutageReporting" value=""OutageReporting""/>
</enum>
</arg>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutMetadata" options="expedited-rollout-metadata">
<help short="Metadata for expedited rollout."/>
<arg type="boolean" var="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutMetadata.enabled" options="enabled">
<help short="Expedited rollout enabled?"/>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutMetadata.expeditedRolloutIntent" options="expedited-rollout-intent">
<help short="Expedited rollout intent."/>
<enum>
<item name="Hotfix" value=""Hotfix""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
</arg>
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutSubmitters" options="expedited-rollout-submitters">
<help short="List of expedited rollout submitters."/>
<item type="string"/>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.management.incidentContactEmail" options="incident-contact-email"/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.management.incidentRoutingService" options="incident-routing-service"/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.management.incidentRoutingTeam" options="incident-routing-team"/>
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.management.manifestOwners" options="manifest-owners">
<item type="string"/>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.management.pcCode" options="pc-code">
<help short="The profit center code for the subscription."/>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.management.profitCenterProgramId" options="profit-center-program-id">
<help short="The profit center program id for the subscription."/>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.management.resourceAccessPolicy" options="resource-access-policy">
<enum>
<item name="AcisActionAllowed" value=""AcisActionAllowed""/>
<item name="AcisReadAllowed" value=""AcisReadAllowed""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
<arg type="array<object>" var="$properties.properties.specification.providerRegistration.properties.management.resourceAccessRoles" options="resource-access-roles">
<item type="object" cls="ResourceAccessRole_create">
<arg type="array<string>" var="@ResourceAccessRole_create.actions" options="actions">
<item type="string"/>
</arg>
<arg type="array<string>" var="@ResourceAccessRole_create.allowedGroupClaims" options="allowed-group-claims">
<item type="string"/>
</arg>
</item>
</arg>
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.management.schemaOwners" options="schema-owners">
<item type="string"/>
</arg>
<arg type="array<object>" var="$properties.properties.specification.providerRegistration.properties.management.serviceTreeInfos" options="service-tree-infos">
<item type="object" cls="ServiceTreeInfo_create">
<arg type="string" var="@ServiceTreeInfo_create.componentId" options="component-id"/>
<arg type="string" var="@ServiceTreeInfo_create.readiness" options="readiness">
<enum>
<item name="ClosingDown" value=""ClosingDown""/>
<item name="Deprecated" value=""Deprecated""/>
<item name="GA" value=""GA""/>
<item name="InDevelopment" value=""InDevelopment""/>
<item name="InternalOnly" value=""InternalOnly""/>
<item name="PrivatePreview" value=""PrivatePreview""/>
<item name="PublicPreview" value=""PublicPreview""/>
<item name="RemovedFromARM" value=""RemovedFromARM""/>
<item name="Retired" value=""Retired""/>
</enum>
</arg>
<arg type="string" var="@ServiceTreeInfo_create.serviceId" options="service-id"/>
</item>
</arg>
</arg>
<arg type="array<@ResourceProviderEndpoint_create>" var="$properties.properties.specification.providerRegistration.properties.managementGroupGlobalNotificationEndpoints" options="management-group-global-notification-endpoints" group="Properties">
<help short="Management groups global notification endpoints."/>
<item type="@ResourceProviderEndpoint_create"/>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.metadata" options="metadata" group="Properties">
<additionalProp anyType="True"/>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.namespace" options="namespace" group="Properties"/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.notificationOptions" options="notification-options" group="Properties">
<help short="Notification options."/>
<enum>
<item name="EmitSpendingLimit" value=""EmitSpendingLimit""/>
<item name="None" value=""None""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.notificationSettings" options="notification-settings" group="Properties">
<help short="Notification settings."/>
<arg type="array<object>" var="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings" options="subscriber-settings">
<item type="object">
<arg type="array<object>" var="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules" options="filter-rules">
<item type="object">
<arg type="array<object>" var="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation" options="endpoint-information">
<item type="object">
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation[].endpoint" options="endpoint"/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation[].endpointType" options="endpoint-type">
<enum>
<item name="Eventhub" value=""Eventhub""/>
<item name="Webhook" value=""Webhook""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation[].schemaVersion" options="schema-version"/>
</item>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].filterQuery" options="filter-query"/>
</item>
</arg>
</item>
</arg>
</arg>
<arg type="array<object>" var="$properties.properties.specification.providerRegistration.properties.notifications" options="notifications" group="Properties" cls="Notifications_create">
<item type="object">
<arg type="string" var="@Notifications_create[].notificationType" options="notification-type">
<enum>
<item name="SubscriptionNotification" value=""SubscriptionNotification""/>
<item name="Unspecified" value=""Unspecified""/>
</enum>
</arg>
<arg type="string" var="@Notifications_create[].skipNotifications" options="skip-notifications">
<enum>
<item name="Disabled" value=""Disabled""/>
<item name="Enabled" value=""Enabled""/>
<item name="Unspecified" value=""Unspecified""/>
</enum>
</arg>
</item>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.oboSubscriptionId" options="obo-subscription-id" group="Properties">
<help short="The on behalf of subscription id for the resource provider."/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.optionalFeatures" options="optional-features" group="Properties">
<help short="Optional features."/>
<item type="string"/>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.privateResourceProviderConfiguration" options="private-resource-provider-configuration" group="Properties">
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.privateResourceProviderConfiguration.allowedSubscriptions" options="allowed-subscriptions">
<item type="string"/>
</arg>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.providerAuthentication" options="provider-authentication" group="Properties">
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.providerAuthentication.allowedAudiences" options="allowed-audiences" required="True">
<item type="string"/>
</arg>
</arg>
<arg type="array<object>" var="$properties.properties.specification.providerRegistration.properties.providerAuthorizations" options="provider-authorizations" group="Properties">
<item type="object" cls="ResourceProviderAuthorization_create">
<arg type="array<object>" var="@ResourceProviderAuthorization_create.allowedThirdPartyExtensions" options="allowed-third-party-extensions">
<item type="object">
<arg type="string" var="@ResourceProviderAuthorization_create.allowedThirdPartyExtensions[].name" options="name">
<help short="Name of third party extension."/>
</arg>
</item>
</arg>
<arg type="string" var="@ResourceProviderAuthorization_create.applicationId" options="application-id"/>
<arg type="string" var="@ResourceProviderAuthorization_create.groupingTag" options="grouping-tag"/>
<arg type="object" var="@ResourceProviderAuthorization_create.managedByAuthorization" options="managed-by-authorization">
<help short="Managed by authorization."/>
<arg type="array<object>" var="@ResourceProviderAuthorization_create.managedByAuthorization.additionalAuthorizations" options="additional-authorizations">
<item type="object">
<arg type="string" var="@ResourceProviderAuthorization_create.managedByAuthorization.additionalAuthorizations[].applicationId" options="application-id"/>
<arg type="string" var="@ResourceProviderAuthorization_create.managedByAuthorization.additionalAuthorizations[].roleDefinitionId" options="role-definition-id"/>
</item>
</arg>
<arg type="boolean" var="@ResourceProviderAuthorization_create.managedByAuthorization.allowManagedByInheritance" options="allow-managed-by-inheritance">
<help short="Indicates whether the managed by resource role definition ID should be inherited."/>
</arg>
<arg type="string" var="@ResourceProviderAuthorization_create.managedByAuthorization.managedByResourceRoleDefinitionId" options="managed-by-resource-role-definition-id">
<help short="The managed by resource role definition ID for the application."/>
</arg>
</arg>
<arg type="string" var="@ResourceProviderAuthorization_create.managedByRoleDefinitionId" options="managed-by-role-definition-id"/>
<arg type="string" var="@ResourceProviderAuthorization_create.roleDefinitionId" options="role-definition-id"/>
</item>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata" options="provider-hub-metadata" group="Properties">
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.directRpRoleDefinitionId" options="direct-rp-role-definition-id"/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.globalAsyncOperationResourceTypeName" options="global-async-operation-resource-type-name"/>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.providerAuthentication" options="provider-authentication">
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.providerAuthentication.allowedAudiences" options="allowed-audiences" required="True">
<item type="string"/>
</arg>
</arg>
<arg type="array<@ResourceProviderAuthorization_create>" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.providerAuthorizations" options="provider-authorizations">
<item type="@ResourceProviderAuthorization_create"/>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.regionalAsyncOperationResourceTypeName" options="regional-async-operation-resource-type-name"/>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization" options="third-party-provider-authorization">
<arg type="array<object>" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.authorizations" options="authorizations">
<item type="object">
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.authorizations[].principalId" options="principal-id" required="True"/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.authorizations[].roleDefinitionId" options="role-definition-id" required="True"/>
</item>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.managedByTenantId" options="managed-by-tenant-id"/>
</arg>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.providerType" options="provider-type" group="Properties">
<enum>
<item name="AuthorizationFree" value=""AuthorizationFree""/>
<item name="Decommissioned" value=""Decommissioned""/>
<item name="External" value=""External""/>
<item name="Hidden" value=""Hidden""/>
<item name="Internal" value=""Internal""/>
<item name="LegacyRegistrationRequired" value=""LegacyRegistrationRequired""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="RegistrationFree" value=""RegistrationFree""/>
<item name="TenantOnly" value=""TenantOnly""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.providerVersion" options="provider-version" group="Properties"/>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.requestHeaderOptions" options="request-header-options" group="Properties">
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.requestHeaderOptions.optInHeaders" options="opt-in-headers">
<enum>
<item name="ClientGroupMembership" value=""ClientGroupMembership""/>
<item name="ClientPrincipalNameEncoded" value=""ClientPrincipalNameEncoded""/>
<item name="MSIResourceIdEncoded" value=""MSIResourceIdEncoded""/>
<item name="ManagementGroupAncestorsEncoded" value=""ManagementGroupAncestorsEncoded""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="PrivateLinkId" value=""PrivateLinkId""/>
<item name="PrivateLinkResourceId" value=""PrivateLinkResourceId""/>
<item name="PrivateLinkVnetTrafficTag" value=""PrivateLinkVnetTrafficTag""/>
<item name="ResourceGroupLocation" value=""ResourceGroupLocation""/>
<item name="SignedAuxiliaryTokens" value=""SignedAuxiliaryTokens""/>
<item name="SignedUserToken" value=""SignedUserToken""/>
<item name="UnboundedClientGroupMembership" value=""UnboundedClientGroupMembership""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.requestHeaderOptions.optOutHeaders" options="opt-out-headers">
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="SystemDataCreatedByLastModifiedBy" value=""SystemDataCreatedByLastModifiedBy""/>
</enum>
</arg>
</arg>
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.requiredFeatures" options="required-features" group="Properties">
<item type="string"/>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.resourceGroupLockOptionDuringMove" options="resource-group-lock-option-during-move" group="Properties">
<help short="Resource group lock option during move."/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.resourceGroupLockOptionDuringMove.blockActionVerb" options="block-action-verb">
<help short="The action verb that will be blocked when the resource group is locked during move."/>
<enum>
<item name="Action" value=""Action""/>
<item name="Delete" value=""Delete""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="Read" value=""Read""/>
<item name="Unrecognized" value=""Unrecognized""/>
<item name="Write" value=""Write""/>
</enum>
</arg>
</arg>
<arg type="array<object>" var="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts" options="resource-hydration-accounts" group="Properties">
<help short="resource hydration accounts"/>
<item type="object">
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].accountName" options="account-name"/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].encryptedKey" options="encrypted-key"/>
<arg type="integer64" var="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].maxChildResourceConsistencyJobLimit" options="max-child-resource-consistency-job-limit"/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].subscriptionId" options="subscription-id"/>
</item>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.resourceProviderAuthorizationRules" options="resource-provider-authorization-rules" group="Properties" cls="ResourceProviderAuthorizationRules_create">
<arg type="object" var="@ResourceProviderAuthorizationRules_create.asyncOperationPollingRules" options="async-operation-polling-rules">
<arg type="string" var="@ResourceProviderAuthorizationRules_create.asyncOperationPollingRules.additionalOptions" options="additional-options">
<enum>
<item name="ProtectedAsyncOperationPolling" value=""ProtectedAsyncOperationPolling""/>
<item name="ProtectedAsyncOperationPollingAuditOnly" value=""ProtectedAsyncOperationPollingAuditOnly""/>
</enum>
</arg>
<arg type="array<string>" var="@ResourceProviderAuthorizationRules_create.asyncOperationPollingRules.authorizationActions" options="authorization-actions">
<item type="string"/>
</arg>
</arg>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.responseOptions" options="response-options" group="Properties">
<help short="Response options."/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.responseOptions.serviceClientOptionsType" options="service-client-options-type">
<enum>
<item name="DisableAutomaticDecompression" value=""DisableAutomaticDecompression""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.serviceName" options="service-name" group="Properties"/>
<arg type="array<object>" var="$properties.properties.specification.providerRegistration.properties.services" options="services" group="Properties">
<item type="object">
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.services[].serviceName" options="service-name"/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.services[].status" options="status">
<enum>
<item name="Active" value=""Active""/>
<item name="Inactive" value=""Inactive""/>
</enum>
</arg>
</item>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.subscriptionLifecycleNotificationSpecifications" options="subscription-lifecycle-notification-specifications" group="Properties">
<arg type="duration" var="$properties.properties.specification.providerRegistration.properties.subscriptionLifecycleNotificationSpecifications.softDeleteTTL" options="soft-delete-ttl"/>
<arg type="array<object>" var="$properties.properties.specification.providerRegistration.properties.subscriptionLifecycleNotificationSpecifications.subscriptionStateOverrideActions" options="subscription-state-override-actions">
<item type="object" cls="SubscriptionStateOverrideAction_create">
<arg type="string" var="@SubscriptionStateOverrideAction_create.action" options="action" required="True">
<enum>
<item name="BillingCancellation" value=""BillingCancellation""/>
<item name="DeleteAllResources" value=""DeleteAllResources""/>
<item name="NoOp" value=""NoOp""/>
<item name="NotDefined" value=""NotDefined""/>
<item name="SoftDeleteAllResources" value=""SoftDeleteAllResources""/>
<item name="UndoSoftDelete" value=""UndoSoftDelete""/>
</enum>
</arg>
<arg type="string" var="@SubscriptionStateOverrideAction_create.state" options="state" required="True">
<enum>
<item name="Deleted" value=""Deleted""/>
<item name="Registered" value=""Registered""/>
<item name="Suspended" value=""Suspended""/>
<item name="SuspendedToDeleted" value=""SuspendedToDeleted""/>
<item name="SuspendedToRegistered" value=""SuspendedToRegistered""/>
<item name="SuspendedToUnregistered" value=""SuspendedToUnregistered""/>
<item name="SuspendedToWarned" value=""SuspendedToWarned""/>
<item name="Unregistered" value=""Unregistered""/>
<item name="Warned" value=""Warned""/>
<item name="WarnedToDeleted" value=""WarnedToDeleted""/>
<item name="WarnedToRegistered" value=""WarnedToRegistered""/>
<item name="WarnedToSuspended" value=""WarnedToSuspended""/>
<item name="WarnedToUnregistered" value=""WarnedToUnregistered""/>
</enum>
</arg>
</item>
</arg>
</arg>
<arg type="object" var="$properties.properties.specification.providerRegistration.properties.templateDeploymentOptions" options="template-deployment-options" group="Properties">
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.templateDeploymentOptions.preflightOptions" options="preflight-options">
<item type="string">
<enum>
<item name="ContinueDeploymentOnFailure" value=""ContinueDeploymentOnFailure""/>
<item name="DefaultValidationOnly" value=""DefaultValidationOnly""/>
<item name="None" value=""None""/>
</enum>
</item>
</arg>
<arg type="boolean" var="$properties.properties.specification.providerRegistration.properties.templateDeploymentOptions.preflightSupported" options="preflight-supported"/>
</arg>
<arg type="@TokenAuthConfiguration_create" var="$properties.properties.specification.providerRegistration.properties.tokenAuthConfiguration" options="token-auth-configuration" group="Properties"/>
</arg>
<arg type="boolean" var="$properties.properties.specification.refreshSubscriptionRegistration" options="refresh-subscription-registration"/>
<arg type="array<string>" var="$properties.properties.specification.releaseScopes" options="release-scopes">
<item type="string"/>
</arg>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations" options="resource-type-registrations">
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].kind" options="kind">
<help short="Resource type registration kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type."/>
<default value=""Managed""/>
<enum>
<item name="Direct" value=""Direct""/>
<item name="Hybrid" value=""Hybrid""/>
<item name="Managed" value=""Managed""/>
</enum>
</arg>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.addResourceListTargetLocations" options="add-resource-list-target-locations" group="Properties">
<help short="Add resource list target locations?"/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.additionalOptions" options="additional-options" group="Properties">
<enum>
<item name="ProtectedAsyncOperationPolling" value=""ProtectedAsyncOperationPolling""/>
<item name="ProtectedAsyncOperationPollingAuditOnly" value=""ProtectedAsyncOperationPollingAuditOnly""/>
</enum>
</arg>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowEmptyRoleAssignments" options="allow-empty-role-assignments" group="Properties"/>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedResourceNames" options="allowed-resource-names" group="Properties">
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedResourceNames[].getActionVerb" options="get-action-verb">
<help short="Get action verb."/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedResourceNames[].name" options="name">
<help short="Resource name."/>
</arg>
</item>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedTemplateDeploymentReferenceActions" options="allowed-template-deployment-reference-actions" group="Properties">
<help short="Allowed template deployment reference actions."/>
<item type="string"/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActions" options="allowed-unauthorized-actions" group="Properties">
<item type="string"/>
</arg>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActionsExtensions" options="allowed-unauthorized-actions-extensions" group="Properties">
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActionsExtensions[].action" options="action"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActionsExtensions[].intent" options="intent">
<enum>
<item name="DEFERRED_ACCESS_CHECK" value=""DEFERRED_ACCESS_CHECK""/>
<item name="LOW_PRIVILEGE" value=""LOW_PRIVILEGE""/>
<item name="NOT_SPECIFIED" value=""NOT_SPECIFIED""/>
<item name="RP_CONTRACT" value=""RP_CONTRACT""/>
</enum>
</arg>
</item>
</arg>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.apiProfiles" options="api-profiles" group="Properties">
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.apiProfiles[].apiVersion" options="api-version">
<help short="Api version."/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.apiProfiles[].profileVersion" options="profile-version">
<help short="Profile version."/>
</arg>
</item>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncOperationResourceTypeName" options="async-operation-resource-type-name" group="Properties"/>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncTimeoutRules" options="async-timeout-rules" group="Properties">
<help short="Async timeout rules"/>
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncTimeoutRules[].actionName" options="action-name"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncTimeoutRules[].timeout" options="timeout"/>
</item>
</arg>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.authorizationActionMappings" options="authorization-action-mappings" group="Properties">
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.authorizationActionMappings[].desired" options="desired"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.authorizationActionMappings[].original" options="original"/>
</item>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.availabilityZoneRule" options="availability-zone-rule" group="Properties">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.availabilityZoneRule.availabilityZonePolicy" options="availability-zone-policy">
<enum>
<item name="MultiZoned" value=""MultiZoned""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="SingleZoned" value=""SingleZoned""/>
</enum>
</arg>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.capacityRule" options="capacity-rule" group="Properties">
<help short="Capacity rule."/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.capacityRule.capacityPolicy" options="capacity-policy">
<help short="Capacity policy."/>
<enum>
<item name="Default" value=""Default""/>
<item name="Restricted" value=""Restricted""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.capacityRule.skuAlias" options="sku-alias">
<help short="Sku alias"/>
</arg>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.category" options="category" group="Properties">
<enum>
<item name="FreeForm" value=""FreeForm""/>
<item name="Internal" value=""Internal""/>
<item name="None" value=""None""/>
<item name="PureProxy" value=""PureProxy""/>
</enum>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.checkNameAvailabilitySpecifications" options="check-name-availability-specifications" group="Properties">
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.checkNameAvailabilitySpecifications.enableDefaultValidation" options="enable-default-validation"/>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.checkNameAvailabilitySpecifications.resourceTypesWithCustomValidation" options="resource-types-with-custom-validation">
<item type="string"/>
</arg>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.commonApiVersions" options="common-api-versions" group="Properties">
<help short="Common API versions for the resource type."/>
<item type="string"/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.crossTenantTokenValidation" options="cross-tenant-token-validation" group="Properties">
<enum>
<item name="EnsureSecureValidation" value=""EnsureSecureValidation""/>
<item name="PassthroughInsecureToken" value=""PassthroughInsecureToken""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.defaultApiVersion" options="default-api-version" group="Properties"/>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.disallowedActionVerbs" options="disallowed-action-verbs" group="Properties">
<item type="string"/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.disallowedEndUserOperations" options="disallowed-end-user-operations" group="Properties">
<item type="string"/>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.dstsConfiguration" options="dsts-configuration" group="Properties">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.dstsConfiguration.serviceDnsName" options="service-dns-name"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.dstsConfiguration.serviceName" options="service-name" required="True"/>
</arg>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.enableAsyncOperation" options="enable-async-operation" group="Properties"/>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.enableThirdPartyS2S" options="enable-third-party-s2-s" group="Properties"/>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints" options="endpoints" group="Properties">
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].apiVersion" options="api-version">
<help short="Api version."/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].apiVersions" options="api-versions">
<item type="string"/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dataBoundary" options="data-boundary">
<enum>
<item name="EU" value=""EU""/>
<item name="Global" value=""Global""/>
<item name="NotDefined" value=""NotDefined""/>
<item name="US" value=""US""/>
</enum>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dstsConfiguration" options="dsts-configuration">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dstsConfiguration.serviceDnsName" options="service-dns-name"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dstsConfiguration.serviceName" options="service-name" required="True"/>
</arg>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].enabled" options="enabled"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].endpointType" options="endpoint-type">
<enum>
<item name="Canary" value=""Canary""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="Production" value=""Production""/>
<item name="TestInProduction" value=""TestInProduction""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].endpointUri" options="endpoint-uri"/>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions" options="extensions">
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions[].endpointUri" options="endpoint-uri"/>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions[].extensionCategories" options="extension-categories">
<item type="string">
<enum>
<item name="BestMatchOperationBegin" value=""BestMatchOperationBegin""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="ResourceCreationBegin" value=""ResourceCreationBegin""/>
<item name="ResourceCreationCompleted" value=""ResourceCreationCompleted""/>
<item name="ResourceCreationValidate" value=""ResourceCreationValidate""/>
<item name="ResourceDeletionBegin" value=""ResourceDeletionBegin""/>
<item name="ResourceDeletionCompleted" value=""ResourceDeletionCompleted""/>
<item name="ResourceDeletionValidate" value=""ResourceDeletionValidate""/>
<item name="ResourceMoveBegin" value=""ResourceMoveBegin""/>
<item name="ResourceMoveCompleted" value=""ResourceMoveCompleted""/>
<item name="ResourcePatchBegin" value=""ResourcePatchBegin""/>
<item name="ResourcePatchCompleted" value=""ResourcePatchCompleted""/>
<item name="ResourcePatchValidate" value=""ResourcePatchValidate""/>
<item name="ResourcePostAction" value=""ResourcePostAction""/>
<item name="ResourceReadBegin" value=""ResourceReadBegin""/>
<item name="ResourceReadValidate" value=""ResourceReadValidate""/>
<item name="SubscriptionLifecycleNotification" value=""SubscriptionLifecycleNotification""/>
<item name="SubscriptionLifecycleNotificationDeletion" value=""SubscriptionLifecycleNotificationDeletion""/>
</enum>
</item>
</arg>
<arg type="duration" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions[].timeout" options="timeout"/>
</item>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].featuresRule" options="features-rule">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].featuresRule.requiredFeaturesPolicy" options="required-features-policy" required="True">
<enum>
<item name="All" value=""All""/>
<item name="Any" value=""Any""/>
</enum>
</arg>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].kind" options="kind">
<help short="Resource type endpoint kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type."/>
<default value=""Managed""/>
<enum>
<item name="Direct" value=""Direct""/>
<item name="Managed" value=""Managed""/>
</enum>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].locations" options="locations">
<item type="string"/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].requiredFeatures" options="required-features">
<item type="string"/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].skuLink" options="sku-link"/>
<arg type="duration" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].timeout" options="timeout"/>
<arg type="@TokenAuthConfiguration_create" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].tokenAuthConfiguration" options="token-auth-configuration"/>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].zones" options="zones">
<help short="List of zones."/>
<item type="string"/>
</arg>
</item>
</arg>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.extendedLocations" options="extended-locations" group="Properties">
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.extendedLocations[].supportedPolicy" options="supported-policy"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.extendedLocations[].type" options="type"/>
</item>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions" options="extension-options" group="Properties">
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions.resourceCreationBegin" options="resource-creation-begin">
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions.resourceCreationBegin.request" options="request">
<item type="string">
<enum>
<item name="DoNotMergeExistingReadOnlyAndSecretProperties" value=""DoNotMergeExistingReadOnlyAndSecretProperties""/>
<item name="IncludeInternalMetadata" value=""IncludeInternalMetadata""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</item>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions.resourceCreationBegin.response" options="response">
<item type="string">
<enum>
<item name="DoNotMergeExistingReadOnlyAndSecretProperties" value=""DoNotMergeExistingReadOnlyAndSecretProperties""/>
<item name="IncludeInternalMetadata" value=""IncludeInternalMetadata""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</item>
</arg>
</arg>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.featuresRule" options="features-rule" group="Properties">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.featuresRule.requiredFeaturesPolicy" options="required-features-policy" required="True">
<enum>
<item name="All" value=""All""/>
<item name="Any" value=""Any""/>
</enum>
</arg>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.frontdoorRequestMode" options="frontdoor-request-mode" group="Properties">
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="UseManifest" value=""UseManifest""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.groupingTag" options="grouping-tag" group="Properties">
<help short="Grouping tag."/>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement" options="identity-management" group="Properties">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.applicationId" options="application-id"/>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.applicationIds" options="application-ids">
<item type="string"/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.delegationAppIds" options="delegation-app-ids">
<item type="string"/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.type" options="type">
<enum>
<item name="Actor" value=""Actor""/>
<item name="DelegatedResourceIdentity" value=""DelegatedResourceIdentity""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="SystemAssigned" value=""SystemAssigned""/>
<item name="UserAssigned" value=""UserAssigned""/>
</enum>
</arg>
</arg>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.isPureProxy" options="is-pure-proxy" group="Properties"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyName" options="legacy-name" group="Properties"/>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyNames" options="legacy-names" group="Properties">
<item type="string"/>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy" options="legacy-policy" group="Properties">
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedConditions" options="disallowed-conditions">
<item type="object">
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedConditions[].disallowedLegacyOperations" options="disallowed-legacy-operations">
<item type="string">
<enum>
<item name="Action" value=""Action""/>
<item name="AzureAsyncOperationWaiting" value=""AzureAsyncOperationWaiting""/>
<item name="Create" value=""Create""/>
<item name="Delete" value=""Delete""/>
<item name="DeploymentCleanup" value=""DeploymentCleanup""/>
<item name="EvaluateDeploymentOutput" value=""EvaluateDeploymentOutput""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="Read" value=""Read""/>
<item name="ResourceCacheWaiting" value=""ResourceCacheWaiting""/>
<item name="Waiting" value=""Waiting""/>
</enum>
</item>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedConditions[].feature" options="feature">
<help short="Feature string."/>
</arg>
</item>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedLegacyOperations" options="disallowed-legacy-operations">
<item type="string">
<enum>
<item name="Action" value=""Action""/>
<item name="AzureAsyncOperationWaiting" value=""AzureAsyncOperationWaiting""/>
<item name="Create" value=""Create""/>
<item name="Delete" value=""Delete""/>
<item name="DeploymentCleanup" value=""DeploymentCleanup""/>
<item name="EvaluateDeploymentOutput" value=""EvaluateDeploymentOutput""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="Read" value=""Read""/>
<item name="ResourceCacheWaiting" value=""ResourceCacheWaiting""/>
<item name="Waiting" value=""Waiting""/>
</enum>
</item>
</arg>
</arg>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks" options="linked-access-checks" group="Properties">
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].actionName" options="action-name"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedAction" options="linked-action"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedActionVerb" options="linked-action-verb"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedProperty" options="linked-property"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedType" options="linked-type"/>
</item>
</arg>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules" options="linked-notification-rules" group="Properties">
<item type="object">
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].actions" options="actions">
<item type="string"/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].actionsOnFailedOperation" options="actions-on-failed-operation">
<item type="string"/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].fastPathActions" options="fast-path-actions">
<item type="string"/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].fastPathActionsOnFailedOperation" options="fast-path-actions-on-failed-operation">
<item type="string"/>
</arg>
<arg type="duration" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].linkedNotificationTimeout" options="linked-notification-timeout"/>
</item>
</arg>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules" options="linked-operation-rules" group="Properties">
<item type="object">
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules[].dependsOnTypes" options="depends-on-types">
<help short="Depends on types."/>
<item type="string"/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules[].linkedAction" options="linked-action" required="True">
<enum>
<item name="Blocked" value=""Blocked""/>
<item name="Enabled" value=""Enabled""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="Validate" value=""Validate""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules[].linkedOperation" options="linked-operation" required="True">
<enum>
<item name="CrossResourceGroupResourceMove" value=""CrossResourceGroupResourceMove""/>
<item name="CrossSubscriptionResourceMove" value=""CrossSubscriptionResourceMove""/>
<item name="None" value=""None""/>
</enum>
</arg>
</item>
</arg>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules" options="logging-rules" group="Properties">
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].action" options="action" required="True"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].detailLevel" options="detail-level" required="True">
<enum>
<item name="Body" value=""Body""/>
<item name="None" value=""None""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].direction" options="direction" required="True">
<enum>
<item name="None" value=""None""/>
<item name="Request" value=""Request""/>
<item name="Response" value=""Response""/>
</enum>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].hiddenPropertyPaths" options="hidden-property-paths">
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].hiddenPropertyPaths.hiddenPathsOnRequest" options="hidden-paths-on-request">
<item type="string"/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].hiddenPropertyPaths.hiddenPathsOnResponse" options="hidden-paths-on-response">
<item type="string"/>
</arg>
</arg>
</item>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration" options="managed-resource-group-configuration" group="Properties">
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.applicationIds" options="application-ids">
<item type="string"/>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.denyAssignmentConfiguration" options="deny-assignment-configuration">
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.denyAssignmentConfiguration.enabled" options="enabled"/>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.denyAssignmentConfiguration.notActions" options="not-actions">
<item type="string"/>
</arg>
</arg>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.enabled" options="enabled"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.resourceGroupLocationOverride" options="resource-group-location-override"/>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management" options="management" group="Properties">
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.authorizationOwners" options="authorization-owners">
<item type="string"/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.canaryManifestOwners" options="canary-manifest-owners">
<help short="List of manifest owners for canary."/>
<item type="string"/>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.errorResponseMessageOptions" options="error-response-message-options">
<help short="Options for error response messages."/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.errorResponseMessageOptions.serverFailureResponseMessageType" options="server-failure-response-message-type">
<help short="Type of server failure response message."/>
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="OutageReporting" value=""OutageReporting""/>
</enum>
</arg>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutMetadata" options="expedited-rollout-metadata">
<help short="Metadata for expedited rollout."/>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutMetadata.enabled" options="enabled">
<help short="Expedited rollout enabled?"/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutMetadata.expeditedRolloutIntent" options="expedited-rollout-intent">
<help short="Expedited rollout intent."/>
<enum>
<item name="Hotfix" value=""Hotfix""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutSubmitters" options="expedited-rollout-submitters">
<help short="List of expedited rollout submitters."/>
<item type="string"/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.incidentContactEmail" options="incident-contact-email"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.incidentRoutingService" options="incident-routing-service"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.incidentRoutingTeam" options="incident-routing-team"/>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.manifestOwners" options="manifest-owners">
<item type="string"/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.pcCode" options="pc-code">
<help short="The profit center code for the subscription."/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.profitCenterProgramId" options="profit-center-program-id">
<help short="The profit center program id for the subscription."/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.resourceAccessPolicy" options="resource-access-policy">
<enum>
<item name="AcisActionAllowed" value=""AcisActionAllowed""/>
<item name="AcisReadAllowed" value=""AcisReadAllowed""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
<arg type="array<@ResourceAccessRole_create>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.resourceAccessRoles" options="resource-access-roles">
<item type="@ResourceAccessRole_create"/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.schemaOwners" options="schema-owners">
<item type="string"/>
</arg>
<arg type="array<@ServiceTreeInfo_create>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.serviceTreeInfos" options="service-tree-infos">
<item type="@ServiceTreeInfo_create"/>
</arg>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.manifestLink" options="manifest-link" group="Properties">
<help short="Manifest link."/>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.marketplaceOptions" options="marketplace-options" group="Properties">
<help short="Marketplace options."/>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.marketplaceOptions.addOnPlanConversionAllowed" options="add-on-plan-conversion-allowed">
<help short="Add-on plan conversion allowed."/>
</arg>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.marketplaceType" options="marketplace-type" group="Properties">
<enum>
<item name="AddOn" value=""AddOn""/>
<item name="Bypass" value=""Bypass""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="ProviderHub" value=""ProviderHub""/>
<item name="Store" value=""Store""/>
</enum>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.metadata" options="metadata" group="Properties">
<additionalProp>
<item type="object">
<additionalProp anyType="True"/>
</item>
</additionalProp>
</arg>
<arg type="@Notifications_create" var="$properties.properties.specification.resourceTypeRegistrations[].properties.notifications" options="notifications" group="Properties"/>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.onBehalfOfTokens" options="on-behalf-of-tokens" group="Properties">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.onBehalfOfTokens.actionName" options="action-name"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.onBehalfOfTokens.lifeTime" options="life-time"/>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.openApiConfiguration" options="open-api-configuration" group="Properties">
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.openApiConfiguration.validation" options="validation">
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.openApiConfiguration.validation.allowNoncompliantCollectionResponse" options="allow-noncompliant-collection-response">
<help short="Indicates whether a non compliance response is allowed for a LIST call"/>
</arg>
</arg>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.policyExecutionType" options="policy-execution-type" group="Properties">
<enum>
<item name="BypassPolicies" value=""BypassPolicies""/>
<item name="ExecutePolicies" value=""ExecutePolicies""/>
<item name="ExpectPartialPutRequests" value=""ExpectPartialPutRequests""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration" options="private-endpoint-configuration" group="Properties">
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation" options="group-connectivity-information" required="True">
<help short="The list of group connectivity information."/>
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].groupId" options="group-id" required="True">
<help short="The group id."/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].redirectMapId" options="redirect-map-id">
<help short="The redirect map id."/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].requiredMembers" options="required-members" required="True">
<help short="List of required members for the group id."/>
<item type="string"/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].requiredZoneNames" options="required-zone-names" required="True">
<help short="List of required zone names for the group id."/>
<item type="string"/>
</arg>
</item>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.minApiVersion" options="min-api-version" required="True">
<help short="The first api version that support private endpoint."/>
</arg>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule" options="quota-rule" group="Properties">
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules" options="location-rules">
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules[].location" options="location"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules[].policy" options="policy">
<help short="Quota policy."/>
<enum>
<item name="Default" value=""Default""/>
<item name="None" value=""None""/>
<item name="Restricted" value=""Restricted""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules[].quotaId" options="quota-id"/>
</item>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.quotaPolicy" options="quota-policy">
<help short="Quota policy."/>
<enum>
<item name="Default" value=""Default""/>
<item name="None" value=""None""/>
<item name="Restricted" value=""Restricted""/>
</enum>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.requiredFeatures" options="required-features">
<item type="string"/>
</arg>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.regionality" options="regionality" group="Properties">
<enum>
<item name="Global" value=""Global""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="Regional" value=""Regional""/>
</enum>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.requestHeaderOptions" options="request-header-options" group="Properties">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.requestHeaderOptions.optInHeaders" options="opt-in-headers">
<enum>
<item name="ClientGroupMembership" value=""ClientGroupMembership""/>
<item name="ClientPrincipalNameEncoded" value=""ClientPrincipalNameEncoded""/>
<item name="MSIResourceIdEncoded" value=""MSIResourceIdEncoded""/>
<item name="ManagementGroupAncestorsEncoded" value=""ManagementGroupAncestorsEncoded""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="PrivateLinkId" value=""PrivateLinkId""/>
<item name="PrivateLinkResourceId" value=""PrivateLinkResourceId""/>
<item name="PrivateLinkVnetTrafficTag" value=""PrivateLinkVnetTrafficTag""/>
<item name="ResourceGroupLocation" value=""ResourceGroupLocation""/>
<item name="SignedAuxiliaryTokens" value=""SignedAuxiliaryTokens""/>
<item name="SignedUserToken" value=""SignedUserToken""/>
<item name="UnboundedClientGroupMembership" value=""UnboundedClientGroupMembership""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.requestHeaderOptions.optOutHeaders" options="opt-out-headers">
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="SystemDataCreatedByLastModifiedBy" value=""SystemDataCreatedByLastModifiedBy""/>
</enum>
</arg>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.requiredFeatures" options="required-features" group="Properties">
<item type="string"/>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceCache" options="resource-cache" group="Properties">
<help short="Resource cache options."/>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceCache.enableResourceCache" options="enable-resource-cache">
<help short="Enable resource cache."/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceCache.resourceCacheExpirationTimespan" options="resource-cache-expiration-timespan">
<help short="Resource cache expiration timespan."/>
</arg>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceConcurrencyControlOptions" options="resource-concurrency-control-options" group="Properties">
<additionalProp>
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceConcurrencyControlOptions{}.policy" options="policy">
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="SynchronizeBeginExtension" value=""SynchronizeBeginExtension""/>
</enum>
</arg>
</item>
</additionalProp>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceDeletionPolicy" options="resource-deletion-policy" group="Properties">
<enum>
<item name="CascadeDeleteAll" value=""CascadeDeleteAll""/>
<item name="CascadeDeleteProxyOnlyChildren" value=""CascadeDeleteProxyOnlyChildren""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceGraphConfiguration" options="resource-graph-configuration" group="Properties">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceGraphConfiguration.apiVersion" options="api-version"/>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceGraphConfiguration.enabled" options="enabled"/>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions" options="resource-management-options" group="Properties">
<help short="Resource management options."/>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport" options="batch-provisioning-support">
<help short="Batch provisioning support."/>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.actionConfigurations" options="action-configurations">
<help short="Action Configurations."/>
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.actionConfigurations[].authorizationAction" options="authorization-action">
<help short="Authorization action."/>
</arg>
<arg type="integer64" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.actionConfigurations[].maxBatchSize" options="max-batch-size"/>
</item>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.batchContractVersion" options="batch-contract-version">
<help short="Batch contract version."/>
</arg>
<arg type="integer64" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.maxBatchSize" options="max-batch-size"/>
<arg type="integer64" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.maxNestedBatchSize" options="max-nested-batch-size"/>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.requiredFeatures" options="required-features">
<item type="string"/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.supportedOperations" options="supported-operations">
<help short="Supported operations."/>
<enum>
<item name="Delete" value=""Delete""/>
<item name="Get" value=""Get""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
</arg>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies" options="delete-dependencies">
<help short="Delete dependencies."/>
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies[].linkedProperty" options="linked-property">
<help short="Linked property."/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies[].linkedType" options="linked-type">
<help short="Linked type."/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies[].requiredFeatures" options="required-features">
<help short="Required features."/>
<item type="string"/>
</arg>
</item>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.nestedProvisioningSupport" options="nested-provisioning-support">
<help short="Nested provisioning support."/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.nestedProvisioningSupport.minimumApiVersion" options="minimum-api-version">
<help short="Minimum API version."/>
</arg>
</arg>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy" options="resource-move-policy" group="Properties">
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy.crossResourceGroupMoveEnabled" options="cross-resource-group-move-enabled"/>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy.crossSubscriptionMoveEnabled" options="cross-subscription-move-enabled"/>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy.validationRequired" options="validation-required"/>
</arg>
<arg type="@ResourceProviderAuthorizationRules_create" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceProviderAuthorizationRules" options="resource-provider-authorization-rules" group="Properties"/>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceQueryManagement" options="resource-query-management" group="Properties">
<help short="Resource query management options."/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceQueryManagement.filterOption" options="filter-option">
<help short="Filter option."/>
<enum>
<item name="EnableSubscriptionFilterOnTenant" value=""EnableSubscriptionFilterOnTenant""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceSubType" options="resource-sub-type" group="Properties">
<enum>
<item name="AsyncOperation" value=""AsyncOperation""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceTypeCommonAttributeManagement" options="resource-type-common-attribute-management" group="Properties">
<help short="Resource type common attribute management."/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceTypeCommonAttributeManagement.commonApiVersionsMergeMode" options="common-api-versions-merge-mode">
<help short="Common api versions merge mode."/>
<enum>
<item name="Merge" value=""Merge""/>
<item name="Overwrite" value=""Overwrite""/>
</enum>
</arg>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceValidation" options="resource-validation" group="Properties">
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="ProfaneWords" value=""ProfaneWords""/>
<item name="ReservedWords" value=""ReservedWords""/>
</enum>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.routingRule" options="routing-rule" group="Properties">
<help short="Routing rule."/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.routingRule.hostResourceType" options="host-resource-type">
<help short="Hosted resource type."/>
</arg>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.routingType" options="routing-type" group="Properties">
<enum>
<item name="CascadeExtension" value=""CascadeExtension""/>
<item name="Default" value=""Default""/>
<item name="Extension" value=""Extension""/>
<item name="Failover" value=""Failover""/>
<item name="Fanout" value=""Fanout""/>
<item name="HostBased" value=""HostBased""/>
<item name="LocationBased" value=""LocationBased""/>
<item name="ProxyOnly" value=""ProxyOnly""/>
<item name="Tenant" value=""Tenant""/>
</enum>
</arg>
<arg type="array<@ServiceTreeInfo_create>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.serviceTreeInfos" options="service-tree-infos" group="Properties">
<item type="@ServiceTreeInfo_create"/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.skuLink" options="sku-link" group="Properties"/>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionLifecycleNotificationSpecifications" options="subscription-lifecycle-notification-specifications" group="Properties">
<arg type="duration" var="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionLifecycleNotificationSpecifications.softDeleteTTL" options="soft-delete-ttl"/>
<arg type="array<@SubscriptionStateOverrideAction_create>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionLifecycleNotificationSpecifications.subscriptionStateOverrideActions" options="subscription-state-override-actions">
<item type="@SubscriptionStateOverrideAction_create"/>
</arg>
</arg>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionStateRules" options="subscription-state-rules" group="Properties">
<item type="object">
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionStateRules[].allowedActions" options="allowed-actions">
<item type="string"/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionStateRules[].state" options="state">
<enum>
<item name="Deleted" value=""Deleted""/>
<item name="Disabled" value=""Disabled""/>
<item name="Enabled" value=""Enabled""/>
<item name="NotDefined" value=""NotDefined""/>
<item name="PastDue" value=""PastDue""/>
<item name="Warned" value=""Warned""/>
</enum>
</arg>
</item>
</arg>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.superScaleEnabled" options="super-scale-enabled" group="Properties"/>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.supportsTags" options="supports-tags" group="Properties"/>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.swaggerSpecifications" options="swagger-specifications" group="Properties">
<item type="object">
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.swaggerSpecifications[].apiVersions" options="api-versions">
<item type="string"/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.swaggerSpecifications[].swaggerSpecFolderUri" options="swagger-spec-folder-uri"/>
</item>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentOptions" options="template-deployment-options" group="Properties">
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentOptions.preflightOptions" options="preflight-options">
<item type="string">
<enum>
<item name="ContinueDeploymentOnFailure" value=""ContinueDeploymentOnFailure""/>
<item name="DefaultValidationOnly" value=""DefaultValidationOnly""/>
<item name="None" value=""None""/>
</enum>
</item>
</arg>
<arg type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentOptions.preflightSupported" options="preflight-supported"/>
</arg>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy" options="template-deployment-policy" group="Properties">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy.capabilities" options="capabilities" required="True">
<enum>
<item name="Default" value=""Default""/>
<item name="Preflight" value=""Preflight""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy.preflightNotifications" options="preflight-notifications">
<enum>
<item name="None" value=""None""/>
<item name="UnregisteredSubscriptions" value=""UnregisteredSubscriptions""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy.preflightOptions" options="preflight-options" required="True">
<enum>
<item name="DeploymentRequests" value=""DeploymentRequests""/>
<item name="None" value=""None""/>
<item name="RegisteredOnly" value=""RegisteredOnly""/>
<item name="TestOnly" value=""TestOnly""/>
<item name="ValidationRequests" value=""ValidationRequests""/>
</enum>
</arg>
</arg>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules" options="throttling-rules" group="Properties">
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].action" options="action" required="True"/>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].applicationId" options="application-id">
<item type="string"/>
</arg>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics" options="metrics" required="True">
<item type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].bucketSize" options="bucket-size"/>
<arg type="duration" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].interval" options="interval"/>
<arg type="integer64" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].limit" options="limit" required="True"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].type" options="type" required="True">
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="NumberOfRequests" value=""NumberOfRequests""/>
<item name="NumberOfResources" value=""NumberOfResources""/>
</enum>
</arg>
</item>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].requiredFeatures" options="required-features">
<item type="string"/>
</arg>
</item>
</arg>
<arg type="@TokenAuthConfiguration_create" var="$properties.properties.specification.resourceTypeRegistrations[].properties.tokenAuthConfiguration" options="token-auth-configuration" group="Properties"/>
<arg type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.writeLock" options="write-lock" group="Properties">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.writeLock.state" options="state">
<help short="The state of write lock feature. The feature will ensure a deterministic sequence of write-operation within and across the verbs. Also the feature will ensure that the semantics of synchronous and long-running operations are honored."/>
<default value=""Disabled""/>
<enum>
<item name="Disabled" value=""Disabled""/>
<item name="Enabled" value=""Enabled""/>
</enum>
</arg>
</arg>
</item>
</arg>
<arg type="string" var="$properties.properties.specification.rolloutId" options="rollout-id"/>
<arg type="boolean" var="$properties.properties.specification.skipReleaseScopeValidation" options="skip-release-scope-validation"/>
</arg>
<arg type="object" var="$properties.properties.status" options="status" group="Properties">
<arg type="array<string>" var="$properties.properties.status.completedRegions" options="completed-regions">
<item type="string"/>
</arg>
<arg type="object" var="$properties.properties.status.failedOrSkippedRegions" options="failed-or-skipped-regions">
<additionalProp>
<item type="object" cls="ExtendedErrorInfo_create">
<arg type="array<object>" var="@ExtendedErrorInfo_create.additionalInfo" options="additional-info">
<help short="The additional error information."/>
<item type="object">
<arg type="string" var="@ExtendedErrorInfo_create.additionalInfo[].type" options="type" required="True">
<help short="The type of the error."/>
</arg>
</item>
</arg>
<arg type="string" var="@ExtendedErrorInfo_create.code" options="code">
<help short="The error code."/>
</arg>
<arg type="array<@ExtendedErrorInfo_create>" var="@ExtendedErrorInfo_create.details" options="details">
<help short="The error details."/>
<item type="@ExtendedErrorInfo_create"/>
</arg>
<arg type="string" var="@ExtendedErrorInfo_create.message" options="message">
<help short="The error message."/>
</arg>
<arg type="string" var="@ExtendedErrorInfo_create.target" options="target">
<help short="The target of the error."/>
</arg>
</item>
</additionalProp>
</arg>
<arg type="object" var="$properties.properties.status.manifestCheckinStatus" options="manifest-checkin-status">
<arg type="string" var="$properties.properties.status.manifestCheckinStatus.commitId" options="commit-id"/>
<arg type="boolean" var="$properties.properties.status.manifestCheckinStatus.isCheckedIn" options="is-checked-in" required="True"/>
<arg type="string" var="$properties.properties.status.manifestCheckinStatus.pullRequest" options="pull-request"/>
<arg type="string" var="$properties.properties.status.manifestCheckinStatus.statusMessage" options="status-message" required="True"/>
</arg>
</arg>
</argGroup>
<operation operationId="CustomRollouts_CreateOrUpdate">
<longRunning finalStateVia="azure-async-operation"/>
<http path="/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/customRollouts/{rolloutName}">
<request method="put">
<path>
<param type="string" name="providerNamespace" arg="$Path.providerNamespace" required="True"/>
<param type="string" name="rolloutName" arg="$Path.rolloutName" required="True">
<format pattern="^[-\w\._\(\)]+$" maxLength="260"/>
</param>
<param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True">
<format minLength="1"/>
</param>
</path>
<query>
<const readOnly="True" const="True" type="string" name="api-version" required="True">
<default value=""2025-03-01-preview""/>
<format minLength="1"/>
</const>
</query>
<body>
<json>
<schema type="object" name="properties" required="True" clientFlatten="True">
<prop type="object" name="properties" required="True">
<prop type="object" name="specification" arg="$properties.properties.specification" required="True">
<prop type="object" name="autoProvisionConfig" arg="$properties.properties.specification.autoProvisionConfig">
<prop type="boolean" name="resourceGraph" arg="$properties.properties.specification.autoProvisionConfig.resourceGraph"/>
<prop type="boolean" name="storage" arg="$properties.properties.specification.autoProvisionConfig.storage"/>
</prop>
<prop type="object" name="canary" arg="$properties.properties.specification.canary">
<prop type="array<string>" name="regions" arg="$properties.properties.specification.canary.regions">
<item type="string"/>
</prop>
</prop>
<prop type="object" name="manifestCheckinSpecification" arg="$properties.properties.specification.manifestCheckinSpecification">
<prop type="string" name="manifestCheckinOption" arg="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinOption">
<default value=""DoNotAttemptAutomaticManifestCheckin""/>
<enum>
<item value=""AttemptAutomaticManifestCheckin""/>
<item value=""DoNotAttemptAutomaticManifestCheckin""/>
</enum>
</prop>
<prop type="object" name="manifestCheckinParams" arg="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinParams">
<prop type="string" name="baselineArmManifestLocation" arg="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinParams.baselineArmManifestLocation" required="True"/>
<prop type="string" name="environment" arg="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinParams.environment" required="True"/>
</prop>
</prop>
<prop type="object" name="providerRegistration" arg="$properties.properties.specification.providerRegistration">
<prop type="string" name="kind" arg="$properties.properties.specification.providerRegistration.kind">
<default value=""Managed""/>
<enum>
<item value=""Direct""/>
<item value=""Hybrid""/>
<item value=""Managed""/>
</enum>
</prop>
<prop type="object" name="properties">
<prop type="array<object>" name="capabilities" arg="$properties.properties.specification.providerRegistration.properties.capabilities" identifiers="quotaId">
<item type="object">
<prop type="string" name="effect" arg="$properties.properties.specification.providerRegistration.properties.capabilities[].effect" required="True">
<enum>
<item value=""Allow""/>
<item value=""Disallow""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="string" name="quotaId" arg="$properties.properties.specification.providerRegistration.properties.capabilities[].quotaId" required="True"/>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.providerRegistration.properties.capabilities[].requiredFeatures">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="string" name="crossTenantTokenValidation" arg="$properties.properties.specification.providerRegistration.properties.crossTenantTokenValidation">
<enum>
<item value=""EnsureSecureValidation""/>
<item value=""PassthroughInsecureToken""/>
</enum>
</prop>
<prop type="string" name="customManifestVersion" arg="$properties.properties.specification.providerRegistration.properties.customManifestVersion"/>
<prop type="object" name="dstsConfiguration" arg="$properties.properties.specification.providerRegistration.properties.dstsConfiguration">
<prop type="string" name="serviceDnsName" arg="$properties.properties.specification.providerRegistration.properties.dstsConfiguration.serviceDnsName"/>
<prop type="string" name="serviceName" arg="$properties.properties.specification.providerRegistration.properties.dstsConfiguration.serviceName" required="True"/>
</prop>
<prop type="boolean" name="enablePresetResourceTypes" arg="$properties.properties.specification.providerRegistration.properties.enablePresetResourceTypes"/>
<prop nullable="True" type="boolean" name="enableTenantLinkedNotification" arg="$properties.properties.specification.providerRegistration.properties.enableTenantLinkedNotification"/>
<prop type="object" name="featuresRule" arg="$properties.properties.specification.providerRegistration.properties.featuresRule">
<prop type="string" name="requiredFeaturesPolicy" arg="$properties.properties.specification.providerRegistration.properties.featuresRule.requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="globalNotificationEndpoints" arg="$properties.properties.specification.providerRegistration.properties.globalNotificationEndpoints">
<item type="object" cls="ResourceProviderEndpoint_create">
<prop type="array<string>" name="apiVersions" arg="@ResourceProviderEndpoint_create.apiVersions">
<item type="string"/>
</prop>
<prop type="boolean" name="enabled" arg="@ResourceProviderEndpoint_create.enabled"/>
<prop type="string" name="endpointType" arg="@ResourceProviderEndpoint_create.endpointType">
<enum>
<item value=""Canary""/>
<item value=""NotSpecified""/>
<item value=""Production""/>
<item value=""TestInProduction""/>
</enum>
</prop>
<prop type="string" name="endpointUri" arg="@ResourceProviderEndpoint_create.endpointUri"/>
<prop type="object" name="featuresRule" arg="@ResourceProviderEndpoint_create.featuresRule">
<prop type="string" name="requiredFeaturesPolicy" arg="@ResourceProviderEndpoint_create.featuresRule.requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="locations" arg="@ResourceProviderEndpoint_create.locations">
<item type="string"/>
</prop>
<prop type="array<string>" name="requiredFeatures" arg="@ResourceProviderEndpoint_create.requiredFeatures">
<item type="string"/>
</prop>
<prop type="string" name="skuLink" arg="@ResourceProviderEndpoint_create.skuLink"/>
<prop type="duration" name="timeout" arg="@ResourceProviderEndpoint_create.timeout"/>
</item>
</prop>
<prop type="string" name="legacyNamespace" arg="$properties.properties.specification.providerRegistration.properties.legacyNamespace"/>
<prop type="array<string>" name="legacyRegistrations" arg="$properties.properties.specification.providerRegistration.properties.legacyRegistrations">
<item type="string"/>
</prop>
<prop type="array<object>" name="linkedNotificationRules" arg="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules">
<item type="object">
<prop type="array<string>" name="actions" arg="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].actions">
<item type="string"/>
</prop>
<prop type="object" name="dstsConfiguration" arg="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].dstsConfiguration">
<prop type="string" name="serviceDnsName" arg="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].dstsConfiguration.serviceDnsName"/>
<prop type="string" name="serviceName" arg="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].dstsConfiguration.serviceName" required="True"/>
</prop>
<prop type="array<@ResourceProviderEndpoint_create>" name="endpoints" arg="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].endpoints">
<item type="@ResourceProviderEndpoint_create"/>
</prop>
<prop type="object" name="tokenAuthConfiguration" arg="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].tokenAuthConfiguration" cls="TokenAuthConfiguration_create">
<prop type="string" name="authenticationScheme" arg="@TokenAuthConfiguration_create.authenticationScheme">
<enum>
<item value=""Bearer""/>
<item value=""PoP""/>
</enum>
</prop>
<prop type="boolean" name="disableCertificateAuthenticationFallback" arg="@TokenAuthConfiguration_create.disableCertificateAuthenticationFallback"/>
<prop type="string" name="signedRequestScope" arg="@TokenAuthConfiguration_create.signedRequestScope">
<enum>
<item value=""Endpoint""/>
<item value=""ResourceUri""/>
</enum>
</prop>
</prop>
</item>
</prop>
<prop type="object" name="management" arg="$properties.properties.specification.providerRegistration.properties.management">
<prop type="array<string>" name="authorizationOwners" arg="$properties.properties.specification.providerRegistration.properties.management.authorizationOwners">
<item type="string"/>
</prop>
<prop type="array<string>" name="canaryManifestOwners" arg="$properties.properties.specification.providerRegistration.properties.management.canaryManifestOwners">
<item type="string"/>
</prop>
<prop type="object" name="errorResponseMessageOptions" arg="$properties.properties.specification.providerRegistration.properties.management.errorResponseMessageOptions">
<prop type="string" name="serverFailureResponseMessageType" arg="$properties.properties.specification.providerRegistration.properties.management.errorResponseMessageOptions.serverFailureResponseMessageType">
<enum>
<item value=""NotSpecified""/>
<item value=""OutageReporting""/>
</enum>
</prop>
</prop>
<prop type="object" name="expeditedRolloutMetadata" arg="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutMetadata">
<prop type="boolean" name="enabled" arg="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutMetadata.enabled"/>
<prop type="string" name="expeditedRolloutIntent" arg="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutMetadata.expeditedRolloutIntent">
<enum>
<item value=""Hotfix""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="expeditedRolloutSubmitters" arg="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutSubmitters">
<item type="string"/>
</prop>
<prop type="string" name="incidentContactEmail" arg="$properties.properties.specification.providerRegistration.properties.management.incidentContactEmail"/>
<prop type="string" name="incidentRoutingService" arg="$properties.properties.specification.providerRegistration.properties.management.incidentRoutingService"/>
<prop type="string" name="incidentRoutingTeam" arg="$properties.properties.specification.providerRegistration.properties.management.incidentRoutingTeam"/>
<prop type="array<string>" name="manifestOwners" arg="$properties.properties.specification.providerRegistration.properties.management.manifestOwners">
<item type="string"/>
</prop>
<prop type="string" name="pcCode" arg="$properties.properties.specification.providerRegistration.properties.management.pcCode"/>
<prop type="string" name="profitCenterProgramId" arg="$properties.properties.specification.providerRegistration.properties.management.profitCenterProgramId"/>
<prop type="string" name="resourceAccessPolicy" arg="$properties.properties.specification.providerRegistration.properties.management.resourceAccessPolicy">
<enum>
<item value=""AcisActionAllowed""/>
<item value=""AcisReadAllowed""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="array<object>" name="resourceAccessRoles" arg="$properties.properties.specification.providerRegistration.properties.management.resourceAccessRoles">
<item type="object" cls="ResourceAccessRole_create">
<prop type="array<string>" name="actions" arg="@ResourceAccessRole_create.actions">
<item type="string"/>
</prop>
<prop type="array<string>" name="allowedGroupClaims" arg="@ResourceAccessRole_create.allowedGroupClaims">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="array<string>" name="schemaOwners" arg="$properties.properties.specification.providerRegistration.properties.management.schemaOwners">
<item type="string"/>
</prop>
<prop type="array<object>" name="serviceTreeInfos" arg="$properties.properties.specification.providerRegistration.properties.management.serviceTreeInfos">
<item type="object" cls="ServiceTreeInfo_create">
<prop type="string" name="componentId" arg="@ServiceTreeInfo_create.componentId"/>
<prop type="string" name="readiness" arg="@ServiceTreeInfo_create.readiness">
<enum>
<item value=""ClosingDown""/>
<item value=""Deprecated""/>
<item value=""GA""/>
<item value=""InDevelopment""/>
<item value=""InternalOnly""/>
<item value=""PrivatePreview""/>
<item value=""PublicPreview""/>
<item value=""RemovedFromARM""/>
<item value=""Retired""/>
</enum>
</prop>
<prop type="string" name="serviceId" arg="@ServiceTreeInfo_create.serviceId"/>
</item>
</prop>
</prop>
<prop type="array<@ResourceProviderEndpoint_create>" name="managementGroupGlobalNotificationEndpoints" arg="$properties.properties.specification.providerRegistration.properties.managementGroupGlobalNotificationEndpoints">
<item type="@ResourceProviderEndpoint_create"/>
</prop>
<prop type="object" name="metadata" arg="$properties.properties.specification.providerRegistration.properties.metadata">
<additionalProp anyType="True"/>
</prop>
<prop type="string" name="namespace" arg="$properties.properties.specification.providerRegistration.properties.namespace"/>
<prop type="string" name="notificationOptions" arg="$properties.properties.specification.providerRegistration.properties.notificationOptions">
<enum>
<item value=""EmitSpendingLimit""/>
<item value=""None""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="notificationSettings" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings">
<prop type="array<object>" name="subscriberSettings" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings">
<item type="object">
<prop type="array<object>" name="filterRules" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules">
<item type="object">
<prop type="array<object>" name="endpointInformation" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation">
<item type="object">
<prop type="string" name="endpoint" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation[].endpoint"/>
<prop type="string" name="endpointType" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation[].endpointType">
<enum>
<item value=""Eventhub""/>
<item value=""Webhook""/>
</enum>
</prop>
<prop type="string" name="schemaVersion" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation[].schemaVersion"/>
</item>
</prop>
<prop type="string" name="filterQuery" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].filterQuery"/>
</item>
</prop>
</item>
</prop>
</prop>
<prop type="array<object>" name="notifications" arg="$properties.properties.specification.providerRegistration.properties.notifications" cls="Notifications_create">
<item type="object">
<prop type="string" name="notificationType" arg="@Notifications_create[].notificationType">
<enum>
<item value=""SubscriptionNotification""/>
<item value=""Unspecified""/>
</enum>
</prop>
<prop type="string" name="skipNotifications" arg="@Notifications_create[].skipNotifications">
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
<item value=""Unspecified""/>
</enum>
</prop>
</item>
</prop>
<prop type="string" name="oboSubscriptionId" arg="$properties.properties.specification.providerRegistration.properties.oboSubscriptionId"/>
<prop type="array<string>" name="optionalFeatures" arg="$properties.properties.specification.providerRegistration.properties.optionalFeatures">
<item type="string"/>
</prop>
<prop type="object" name="privateResourceProviderConfiguration" arg="$properties.properties.specification.providerRegistration.properties.privateResourceProviderConfiguration">
<prop type="array<string>" name="allowedSubscriptions" arg="$properties.properties.specification.providerRegistration.properties.privateResourceProviderConfiguration.allowedSubscriptions">
<item type="string"/>
</prop>
</prop>
<prop type="object" name="providerAuthentication" arg="$properties.properties.specification.providerRegistration.properties.providerAuthentication">
<prop type="array<string>" name="allowedAudiences" arg="$properties.properties.specification.providerRegistration.properties.providerAuthentication.allowedAudiences" required="True">
<item type="string"/>
</prop>
</prop>
<prop type="array<object>" name="providerAuthorizations" arg="$properties.properties.specification.providerRegistration.properties.providerAuthorizations">
<item type="object" cls="ResourceProviderAuthorization_create">
<prop type="array<object>" name="allowedThirdPartyExtensions" arg="@ResourceProviderAuthorization_create.allowedThirdPartyExtensions" identifiers="name">
<item type="object">
<prop type="string" name="name" arg="@ResourceProviderAuthorization_create.allowedThirdPartyExtensions[].name"/>
</item>
</prop>
<prop type="string" name="applicationId" arg="@ResourceProviderAuthorization_create.applicationId"/>
<prop type="string" name="groupingTag" arg="@ResourceProviderAuthorization_create.groupingTag"/>
<prop type="object" name="managedByAuthorization" arg="@ResourceProviderAuthorization_create.managedByAuthorization">
<prop type="array<object>" name="additionalAuthorizations" arg="@ResourceProviderAuthorization_create.managedByAuthorization.additionalAuthorizations" identifiers="roleDefinitionId applicationId">
<item type="object">
<prop type="string" name="applicationId" arg="@ResourceProviderAuthorization_create.managedByAuthorization.additionalAuthorizations[].applicationId"/>
<prop type="string" name="roleDefinitionId" arg="@ResourceProviderAuthorization_create.managedByAuthorization.additionalAuthorizations[].roleDefinitionId"/>
</item>
</prop>
<prop type="boolean" name="allowManagedByInheritance" arg="@ResourceProviderAuthorization_create.managedByAuthorization.allowManagedByInheritance"/>
<prop type="string" name="managedByResourceRoleDefinitionId" arg="@ResourceProviderAuthorization_create.managedByAuthorization.managedByResourceRoleDefinitionId"/>
</prop>
<prop type="string" name="managedByRoleDefinitionId" arg="@ResourceProviderAuthorization_create.managedByRoleDefinitionId"/>
<prop type="string" name="roleDefinitionId" arg="@ResourceProviderAuthorization_create.roleDefinitionId"/>
</item>
</prop>
<prop type="object" name="providerHubMetadata" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata">
<prop type="string" name="directRpRoleDefinitionId" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.directRpRoleDefinitionId"/>
<prop type="string" name="globalAsyncOperationResourceTypeName" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.globalAsyncOperationResourceTypeName"/>
<prop type="object" name="providerAuthentication" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.providerAuthentication">
<prop type="array<string>" name="allowedAudiences" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.providerAuthentication.allowedAudiences" required="True">
<item type="string"/>
</prop>
</prop>
<prop type="array<@ResourceProviderAuthorization_create>" name="providerAuthorizations" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.providerAuthorizations">
<item type="@ResourceProviderAuthorization_create"/>
</prop>
<prop type="string" name="regionalAsyncOperationResourceTypeName" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.regionalAsyncOperationResourceTypeName"/>
<prop type="object" name="thirdPartyProviderAuthorization" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization">
<prop type="array<object>" name="authorizations" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.authorizations">
<item type="object">
<prop type="string" name="principalId" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.authorizations[].principalId" required="True"/>
<prop type="string" name="roleDefinitionId" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.authorizations[].roleDefinitionId" required="True"/>
</item>
</prop>
<prop type="string" name="managedByTenantId" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.managedByTenantId"/>
</prop>
</prop>
<prop type="string" name="providerType" arg="$properties.properties.specification.providerRegistration.properties.providerType">
<enum>
<item value=""AuthorizationFree""/>
<item value=""Decommissioned""/>
<item value=""External""/>
<item value=""Hidden""/>
<item value=""Internal""/>
<item value=""LegacyRegistrationRequired""/>
<item value=""NotSpecified""/>
<item value=""RegistrationFree""/>
<item value=""TenantOnly""/>
</enum>
</prop>
<prop type="string" name="providerVersion" arg="$properties.properties.specification.providerRegistration.properties.providerVersion"/>
<prop type="object" name="requestHeaderOptions" arg="$properties.properties.specification.providerRegistration.properties.requestHeaderOptions">
<prop type="string" name="optInHeaders" arg="$properties.properties.specification.providerRegistration.properties.requestHeaderOptions.optInHeaders">
<enum>
<item value=""ClientGroupMembership""/>
<item value=""ClientPrincipalNameEncoded""/>
<item value=""MSIResourceIdEncoded""/>
<item value=""ManagementGroupAncestorsEncoded""/>
<item value=""NotSpecified""/>
<item value=""PrivateLinkId""/>
<item value=""PrivateLinkResourceId""/>
<item value=""PrivateLinkVnetTrafficTag""/>
<item value=""ResourceGroupLocation""/>
<item value=""SignedAuxiliaryTokens""/>
<item value=""SignedUserToken""/>
<item value=""UnboundedClientGroupMembership""/>
</enum>
</prop>
<prop type="string" name="optOutHeaders" arg="$properties.properties.specification.providerRegistration.properties.requestHeaderOptions.optOutHeaders">
<enum>
<item value=""NotSpecified""/>
<item value=""SystemDataCreatedByLastModifiedBy""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.providerRegistration.properties.requiredFeatures">
<item type="string"/>
</prop>
<prop type="object" name="resourceGroupLockOptionDuringMove" arg="$properties.properties.specification.providerRegistration.properties.resourceGroupLockOptionDuringMove">
<prop type="string" name="blockActionVerb" arg="$properties.properties.specification.providerRegistration.properties.resourceGroupLockOptionDuringMove.blockActionVerb">
<enum>
<item value=""Action""/>
<item value=""Delete""/>
<item value=""NotSpecified""/>
<item value=""Read""/>
<item value=""Unrecognized""/>
<item value=""Write""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="resourceHydrationAccounts" arg="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts">
<item type="object">
<prop type="string" name="accountName" arg="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].accountName"/>
<prop type="string" name="encryptedKey" arg="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].encryptedKey"/>
<prop type="integer64" name="maxChildResourceConsistencyJobLimit" arg="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].maxChildResourceConsistencyJobLimit"/>
<prop type="string" name="subscriptionId" arg="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].subscriptionId"/>
</item>
</prop>
<prop type="object" name="resourceProviderAuthorizationRules" arg="$properties.properties.specification.providerRegistration.properties.resourceProviderAuthorizationRules" cls="ResourceProviderAuthorizationRules_create">
<prop type="object" name="asyncOperationPollingRules" arg="@ResourceProviderAuthorizationRules_create.asyncOperationPollingRules">
<prop type="string" name="additionalOptions" arg="@ResourceProviderAuthorizationRules_create.asyncOperationPollingRules.additionalOptions">
<enum>
<item value=""ProtectedAsyncOperationPolling""/>
<item value=""ProtectedAsyncOperationPollingAuditOnly""/>
</enum>
</prop>
<prop type="array<string>" name="authorizationActions" arg="@ResourceProviderAuthorizationRules_create.asyncOperationPollingRules.authorizationActions">
<item type="string"/>
</prop>
</prop>
</prop>
<prop type="object" name="responseOptions" arg="$properties.properties.specification.providerRegistration.properties.responseOptions">
<prop type="string" name="serviceClientOptionsType" arg="$properties.properties.specification.providerRegistration.properties.responseOptions.serviceClientOptionsType">
<enum>
<item value=""DisableAutomaticDecompression""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="string" name="serviceName" arg="$properties.properties.specification.providerRegistration.properties.serviceName"/>
<prop type="array<object>" name="services" arg="$properties.properties.specification.providerRegistration.properties.services">
<item type="object">
<prop type="string" name="serviceName" arg="$properties.properties.specification.providerRegistration.properties.services[].serviceName"/>
<prop type="string" name="status" arg="$properties.properties.specification.providerRegistration.properties.services[].status">
<enum>
<item value=""Active""/>
<item value=""Inactive""/>
</enum>
</prop>
</item>
</prop>
<prop type="object" name="subscriptionLifecycleNotificationSpecifications" arg="$properties.properties.specification.providerRegistration.properties.subscriptionLifecycleNotificationSpecifications">
<prop type="duration" name="softDeleteTTL" arg="$properties.properties.specification.providerRegistration.properties.subscriptionLifecycleNotificationSpecifications.softDeleteTTL"/>
<prop type="array<object>" name="subscriptionStateOverrideActions" arg="$properties.properties.specification.providerRegistration.properties.subscriptionLifecycleNotificationSpecifications.subscriptionStateOverrideActions">
<item type="object" cls="SubscriptionStateOverrideAction_create">
<prop type="string" name="action" arg="@SubscriptionStateOverrideAction_create.action" required="True">
<enum>
<item value=""BillingCancellation""/>
<item value=""DeleteAllResources""/>
<item value=""NoOp""/>
<item value=""NotDefined""/>
<item value=""SoftDeleteAllResources""/>
<item value=""UndoSoftDelete""/>
</enum>
</prop>
<prop type="string" name="state" arg="@SubscriptionStateOverrideAction_create.state" required="True">
<enum>
<item value=""Deleted""/>
<item value=""Registered""/>
<item value=""Suspended""/>
<item value=""SuspendedToDeleted""/>
<item value=""SuspendedToRegistered""/>
<item value=""SuspendedToUnregistered""/>
<item value=""SuspendedToWarned""/>
<item value=""Unregistered""/>
<item value=""Warned""/>
<item value=""WarnedToDeleted""/>
<item value=""WarnedToRegistered""/>
<item value=""WarnedToSuspended""/>
<item value=""WarnedToUnregistered""/>
</enum>
</prop>
</item>
</prop>
</prop>
<prop type="object" name="templateDeploymentOptions" arg="$properties.properties.specification.providerRegistration.properties.templateDeploymentOptions">
<prop type="array<string>" name="preflightOptions" arg="$properties.properties.specification.providerRegistration.properties.templateDeploymentOptions.preflightOptions">
<item type="string">
<enum>
<item value=""ContinueDeploymentOnFailure""/>
<item value=""DefaultValidationOnly""/>
<item value=""None""/>
</enum>
</item>
</prop>
<prop type="boolean" name="preflightSupported" arg="$properties.properties.specification.providerRegistration.properties.templateDeploymentOptions.preflightSupported"/>
</prop>
<prop type="@TokenAuthConfiguration_create" name="tokenAuthConfiguration" arg="$properties.properties.specification.providerRegistration.properties.tokenAuthConfiguration"/>
</prop>
</prop>
<prop type="boolean" name="refreshSubscriptionRegistration" arg="$properties.properties.specification.refreshSubscriptionRegistration"/>
<prop type="array<string>" name="releaseScopes" arg="$properties.properties.specification.releaseScopes">
<item type="string"/>
</prop>
<prop type="array<object>" name="resourceTypeRegistrations" arg="$properties.properties.specification.resourceTypeRegistrations">
<item type="object">
<prop type="string" name="kind" arg="$properties.properties.specification.resourceTypeRegistrations[].kind">
<default value=""Managed""/>
<enum>
<item value=""Direct""/>
<item value=""Hybrid""/>
<item value=""Managed""/>
</enum>
</prop>
<prop type="object" name="properties">
<prop type="boolean" name="addResourceListTargetLocations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.addResourceListTargetLocations"/>
<prop type="string" name="additionalOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.additionalOptions">
<enum>
<item value=""ProtectedAsyncOperationPolling""/>
<item value=""ProtectedAsyncOperationPollingAuditOnly""/>
</enum>
</prop>
<prop type="boolean" name="allowEmptyRoleAssignments" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowEmptyRoleAssignments"/>
<prop type="array<object>" name="allowedResourceNames" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedResourceNames" identifiers="getActionVerb name">
<item type="object">
<prop type="string" name="getActionVerb" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedResourceNames[].getActionVerb"/>
<prop type="string" name="name" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedResourceNames[].name"/>
</item>
</prop>
<prop type="array<string>" name="allowedTemplateDeploymentReferenceActions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedTemplateDeploymentReferenceActions">
<item type="string"/>
</prop>
<prop type="array<string>" name="allowedUnauthorizedActions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActions">
<item type="string"/>
</prop>
<prop type="array<object>" name="allowedUnauthorizedActionsExtensions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActionsExtensions">
<item type="object">
<prop type="string" name="action" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActionsExtensions[].action"/>
<prop type="string" name="intent" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActionsExtensions[].intent">
<enum>
<item value=""DEFERRED_ACCESS_CHECK""/>
<item value=""LOW_PRIVILEGE""/>
<item value=""NOT_SPECIFIED""/>
<item value=""RP_CONTRACT""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<object>" name="apiProfiles" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.apiProfiles" identifiers="profileVersion apiVersion">
<item type="object">
<prop type="string" name="apiVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.apiProfiles[].apiVersion"/>
<prop type="string" name="profileVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.apiProfiles[].profileVersion"/>
</item>
</prop>
<prop type="string" name="asyncOperationResourceTypeName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncOperationResourceTypeName"/>
<prop type="array<object>" name="asyncTimeoutRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncTimeoutRules">
<item type="object">
<prop type="string" name="actionName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncTimeoutRules[].actionName"/>
<prop type="string" name="timeout" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncTimeoutRules[].timeout"/>
</item>
</prop>
<prop type="array<object>" name="authorizationActionMappings" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.authorizationActionMappings" identifiers="original">
<item type="object">
<prop type="string" name="desired" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.authorizationActionMappings[].desired"/>
<prop type="string" name="original" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.authorizationActionMappings[].original"/>
</item>
</prop>
<prop type="object" name="availabilityZoneRule" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.availabilityZoneRule">
<prop type="string" name="availabilityZonePolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.availabilityZoneRule.availabilityZonePolicy">
<enum>
<item value=""MultiZoned""/>
<item value=""NotSpecified""/>
<item value=""SingleZoned""/>
</enum>
</prop>
</prop>
<prop type="object" name="capacityRule" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.capacityRule">
<prop type="string" name="capacityPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.capacityRule.capacityPolicy">
<enum>
<item value=""Default""/>
<item value=""Restricted""/>
</enum>
</prop>
<prop type="string" name="skuAlias" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.capacityRule.skuAlias"/>
</prop>
<prop type="string" name="category" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.category">
<enum>
<item value=""FreeForm""/>
<item value=""Internal""/>
<item value=""None""/>
<item value=""PureProxy""/>
</enum>
</prop>
<prop type="object" name="checkNameAvailabilitySpecifications" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.checkNameAvailabilitySpecifications">
<prop type="boolean" name="enableDefaultValidation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.checkNameAvailabilitySpecifications.enableDefaultValidation"/>
<prop type="array<string>" name="resourceTypesWithCustomValidation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.checkNameAvailabilitySpecifications.resourceTypesWithCustomValidation">
<item type="string"/>
</prop>
</prop>
<prop type="array<string>" name="commonApiVersions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.commonApiVersions">
<item type="string"/>
</prop>
<prop type="string" name="crossTenantTokenValidation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.crossTenantTokenValidation">
<enum>
<item value=""EnsureSecureValidation""/>
<item value=""PassthroughInsecureToken""/>
</enum>
</prop>
<prop type="string" name="defaultApiVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.defaultApiVersion"/>
<prop type="array<string>" name="disallowedActionVerbs" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.disallowedActionVerbs">
<item type="string"/>
</prop>
<prop type="array<string>" name="disallowedEndUserOperations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.disallowedEndUserOperations">
<item type="string"/>
</prop>
<prop type="object" name="dstsConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.dstsConfiguration">
<prop type="string" name="serviceDnsName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.dstsConfiguration.serviceDnsName"/>
<prop type="string" name="serviceName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.dstsConfiguration.serviceName" required="True"/>
</prop>
<prop type="boolean" name="enableAsyncOperation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.enableAsyncOperation"/>
<prop type="boolean" name="enableThirdPartyS2S" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.enableThirdPartyS2S"/>
<prop type="array<object>" name="endpoints" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints">
<item type="object">
<prop type="string" name="apiVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].apiVersion"/>
<prop type="array<string>" name="apiVersions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].apiVersions">
<item type="string"/>
</prop>
<prop type="string" name="dataBoundary" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dataBoundary">
<enum>
<item value=""EU""/>
<item value=""Global""/>
<item value=""NotDefined""/>
<item value=""US""/>
</enum>
</prop>
<prop type="object" name="dstsConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dstsConfiguration">
<prop type="string" name="serviceDnsName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dstsConfiguration.serviceDnsName"/>
<prop type="string" name="serviceName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dstsConfiguration.serviceName" required="True"/>
</prop>
<prop type="boolean" name="enabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].enabled"/>
<prop type="string" name="endpointType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].endpointType">
<enum>
<item value=""Canary""/>
<item value=""NotSpecified""/>
<item value=""Production""/>
<item value=""TestInProduction""/>
</enum>
</prop>
<prop type="string" name="endpointUri" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].endpointUri"/>
<prop type="array<object>" name="extensions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions" identifiers="endpointUri">
<item type="object">
<prop type="string" name="endpointUri" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions[].endpointUri"/>
<prop type="array<string>" name="extensionCategories" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions[].extensionCategories">
<item type="string">
<enum>
<item value=""BestMatchOperationBegin""/>
<item value=""NotSpecified""/>
<item value=""ResourceCreationBegin""/>
<item value=""ResourceCreationCompleted""/>
<item value=""ResourceCreationValidate""/>
<item value=""ResourceDeletionBegin""/>
<item value=""ResourceDeletionCompleted""/>
<item value=""ResourceDeletionValidate""/>
<item value=""ResourceMoveBegin""/>
<item value=""ResourceMoveCompleted""/>
<item value=""ResourcePatchBegin""/>
<item value=""ResourcePatchCompleted""/>
<item value=""ResourcePatchValidate""/>
<item value=""ResourcePostAction""/>
<item value=""ResourceReadBegin""/>
<item value=""ResourceReadValidate""/>
<item value=""SubscriptionLifecycleNotification""/>
<item value=""SubscriptionLifecycleNotificationDeletion""/>
</enum>
</item>
</prop>
<prop type="duration" name="timeout" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions[].timeout"/>
</item>
</prop>
<prop type="object" name="featuresRule" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].featuresRule">
<prop type="string" name="requiredFeaturesPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].featuresRule.requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="string" name="kind" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].kind">
<default value=""Managed""/>
<enum>
<item value=""Direct""/>
<item value=""Managed""/>
</enum>
</prop>
<prop type="array<string>" name="locations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].locations">
<item type="string"/>
</prop>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].requiredFeatures">
<item type="string"/>
</prop>
<prop type="string" name="skuLink" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].skuLink"/>
<prop type="duration" name="timeout" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].timeout"/>
<prop type="@TokenAuthConfiguration_create" name="tokenAuthConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].tokenAuthConfiguration"/>
<prop type="array<string>" name="zones" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].zones">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="array<object>" name="extendedLocations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.extendedLocations">
<item type="object">
<prop type="string" name="supportedPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.extendedLocations[].supportedPolicy"/>
<prop type="string" name="type" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.extendedLocations[].type"/>
</item>
</prop>
<prop type="object" name="extensionOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions">
<prop type="object" name="resourceCreationBegin" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions.resourceCreationBegin">
<prop type="array<string>" name="request" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions.resourceCreationBegin.request">
<item type="string">
<enum>
<item value=""DoNotMergeExistingReadOnlyAndSecretProperties""/>
<item value=""IncludeInternalMetadata""/>
<item value=""NotSpecified""/>
</enum>
</item>
</prop>
<prop type="array<string>" name="response" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions.resourceCreationBegin.response">
<item type="string">
<enum>
<item value=""DoNotMergeExistingReadOnlyAndSecretProperties""/>
<item value=""IncludeInternalMetadata""/>
<item value=""NotSpecified""/>
</enum>
</item>
</prop>
</prop>
</prop>
<prop type="object" name="featuresRule" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.featuresRule">
<prop type="string" name="requiredFeaturesPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.featuresRule.requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="string" name="frontdoorRequestMode" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.frontdoorRequestMode">
<enum>
<item value=""NotSpecified""/>
<item value=""UseManifest""/>
</enum>
</prop>
<prop type="string" name="groupingTag" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.groupingTag"/>
<prop type="object" name="identityManagement" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement">
<prop type="string" name="applicationId" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.applicationId"/>
<prop type="array<string>" name="applicationIds" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.applicationIds">
<item type="string"/>
</prop>
<prop type="array<string>" name="delegationAppIds" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.delegationAppIds">
<item type="string"/>
</prop>
<prop type="string" name="type" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.type">
<enum>
<item value=""Actor""/>
<item value=""DelegatedResourceIdentity""/>
<item value=""NotSpecified""/>
<item value=""SystemAssigned""/>
<item value=""UserAssigned""/>
</enum>
</prop>
</prop>
<prop type="boolean" name="isPureProxy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.isPureProxy"/>
<prop type="string" name="legacyName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyName"/>
<prop type="array<string>" name="legacyNames" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyNames">
<item type="string"/>
</prop>
<prop type="object" name="legacyPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy">
<prop type="array<object>" name="disallowedConditions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedConditions">
<item type="object">
<prop type="array<string>" name="disallowedLegacyOperations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedConditions[].disallowedLegacyOperations">
<item type="string">
<enum>
<item value=""Action""/>
<item value=""AzureAsyncOperationWaiting""/>
<item value=""Create""/>
<item value=""Delete""/>
<item value=""DeploymentCleanup""/>
<item value=""EvaluateDeploymentOutput""/>
<item value=""NotSpecified""/>
<item value=""Read""/>
<item value=""ResourceCacheWaiting""/>
<item value=""Waiting""/>
</enum>
</item>
</prop>
<prop type="string" name="feature" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedConditions[].feature"/>
</item>
</prop>
<prop type="array<string>" name="disallowedLegacyOperations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedLegacyOperations">
<item type="string">
<enum>
<item value=""Action""/>
<item value=""AzureAsyncOperationWaiting""/>
<item value=""Create""/>
<item value=""Delete""/>
<item value=""DeploymentCleanup""/>
<item value=""EvaluateDeploymentOutput""/>
<item value=""NotSpecified""/>
<item value=""Read""/>
<item value=""ResourceCacheWaiting""/>
<item value=""Waiting""/>
</enum>
</item>
</prop>
</prop>
<prop type="array<object>" name="linkedAccessChecks" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks">
<item type="object">
<prop type="string" name="actionName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].actionName"/>
<prop type="string" name="linkedAction" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedAction"/>
<prop type="string" name="linkedActionVerb" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedActionVerb"/>
<prop type="string" name="linkedProperty" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedProperty"/>
<prop type="string" name="linkedType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedType"/>
</item>
</prop>
<prop type="array<object>" name="linkedNotificationRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules">
<item type="object">
<prop type="array<string>" name="actions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].actions">
<item type="string"/>
</prop>
<prop type="array<string>" name="actionsOnFailedOperation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].actionsOnFailedOperation">
<item type="string"/>
</prop>
<prop type="array<string>" name="fastPathActions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].fastPathActions">
<item type="string"/>
</prop>
<prop type="array<string>" name="fastPathActionsOnFailedOperation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].fastPathActionsOnFailedOperation">
<item type="string"/>
</prop>
<prop type="duration" name="linkedNotificationTimeout" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].linkedNotificationTimeout"/>
</item>
</prop>
<prop type="array<object>" name="linkedOperationRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules" identifiers="linkedOperation linkedAction">
<item type="object">
<prop type="array<string>" name="dependsOnTypes" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules[].dependsOnTypes">
<item type="string"/>
</prop>
<prop type="string" name="linkedAction" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules[].linkedAction" required="True">
<enum>
<item value=""Blocked""/>
<item value=""Enabled""/>
<item value=""NotSpecified""/>
<item value=""Validate""/>
</enum>
</prop>
<prop type="string" name="linkedOperation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules[].linkedOperation" required="True">
<enum>
<item value=""CrossResourceGroupResourceMove""/>
<item value=""CrossSubscriptionResourceMove""/>
<item value=""None""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<object>" name="loggingRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules">
<item type="object">
<prop type="string" name="action" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].action" required="True"/>
<prop type="string" name="detailLevel" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].detailLevel" required="True">
<enum>
<item value=""Body""/>
<item value=""None""/>
</enum>
</prop>
<prop type="string" name="direction" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].direction" required="True">
<enum>
<item value=""None""/>
<item value=""Request""/>
<item value=""Response""/>
</enum>
</prop>
<prop type="object" name="hiddenPropertyPaths" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].hiddenPropertyPaths">
<prop type="array<string>" name="hiddenPathsOnRequest" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].hiddenPropertyPaths.hiddenPathsOnRequest">
<item type="string"/>
</prop>
<prop type="array<string>" name="hiddenPathsOnResponse" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].hiddenPropertyPaths.hiddenPathsOnResponse">
<item type="string"/>
</prop>
</prop>
</item>
</prop>
<prop type="object" name="managedResourceGroupConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration">
<prop type="array<string>" name="applicationIds" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.applicationIds">
<item type="string"/>
</prop>
<prop type="object" name="denyAssignmentConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.denyAssignmentConfiguration">
<prop type="boolean" name="enabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.denyAssignmentConfiguration.enabled"/>
<prop type="array<string>" name="notActions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.denyAssignmentConfiguration.notActions">
<item type="string"/>
</prop>
</prop>
<prop type="boolean" name="enabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.enabled"/>
<prop type="string" name="resourceGroupLocationOverride" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.resourceGroupLocationOverride"/>
</prop>
<prop type="object" name="management" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management">
<prop type="array<string>" name="authorizationOwners" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.authorizationOwners">
<item type="string"/>
</prop>
<prop type="array<string>" name="canaryManifestOwners" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.canaryManifestOwners">
<item type="string"/>
</prop>
<prop type="object" name="errorResponseMessageOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.errorResponseMessageOptions">
<prop type="string" name="serverFailureResponseMessageType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.errorResponseMessageOptions.serverFailureResponseMessageType">
<enum>
<item value=""NotSpecified""/>
<item value=""OutageReporting""/>
</enum>
</prop>
</prop>
<prop type="object" name="expeditedRolloutMetadata" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutMetadata">
<prop type="boolean" name="enabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutMetadata.enabled"/>
<prop type="string" name="expeditedRolloutIntent" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutMetadata.expeditedRolloutIntent">
<enum>
<item value=""Hotfix""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="expeditedRolloutSubmitters" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutSubmitters">
<item type="string"/>
</prop>
<prop type="string" name="incidentContactEmail" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.incidentContactEmail"/>
<prop type="string" name="incidentRoutingService" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.incidentRoutingService"/>
<prop type="string" name="incidentRoutingTeam" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.incidentRoutingTeam"/>
<prop type="array<string>" name="manifestOwners" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.manifestOwners">
<item type="string"/>
</prop>
<prop type="string" name="pcCode" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.pcCode"/>
<prop type="string" name="profitCenterProgramId" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.profitCenterProgramId"/>
<prop type="string" name="resourceAccessPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.resourceAccessPolicy">
<enum>
<item value=""AcisActionAllowed""/>
<item value=""AcisReadAllowed""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="array<@ResourceAccessRole_create>" name="resourceAccessRoles" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.resourceAccessRoles">
<item type="@ResourceAccessRole_create"/>
</prop>
<prop type="array<string>" name="schemaOwners" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.schemaOwners">
<item type="string"/>
</prop>
<prop type="array<@ServiceTreeInfo_create>" name="serviceTreeInfos" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.serviceTreeInfos">
<item type="@ServiceTreeInfo_create"/>
</prop>
</prop>
<prop type="string" name="manifestLink" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.manifestLink"/>
<prop type="object" name="marketplaceOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.marketplaceOptions">
<prop type="boolean" name="addOnPlanConversionAllowed" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.marketplaceOptions.addOnPlanConversionAllowed"/>
</prop>
<prop type="string" name="marketplaceType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.marketplaceType">
<enum>
<item value=""AddOn""/>
<item value=""Bypass""/>
<item value=""NotSpecified""/>
<item value=""ProviderHub""/>
<item value=""Store""/>
</enum>
</prop>
<prop type="object" name="metadata" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.metadata">
<additionalProp>
<item type="object">
<additionalProp anyType="True"/>
</item>
</additionalProp>
</prop>
<prop type="@Notifications_create" name="notifications" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.notifications"/>
<prop type="object" name="onBehalfOfTokens" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.onBehalfOfTokens">
<prop type="string" name="actionName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.onBehalfOfTokens.actionName"/>
<prop type="string" name="lifeTime" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.onBehalfOfTokens.lifeTime"/>
</prop>
<prop type="object" name="openApiConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.openApiConfiguration">
<prop type="object" name="validation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.openApiConfiguration.validation">
<prop type="boolean" name="allowNoncompliantCollectionResponse" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.openApiConfiguration.validation.allowNoncompliantCollectionResponse"/>
</prop>
</prop>
<prop type="string" name="policyExecutionType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.policyExecutionType">
<enum>
<item value=""BypassPolicies""/>
<item value=""ExecutePolicies""/>
<item value=""ExpectPartialPutRequests""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="privateEndpointConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration">
<prop type="array<object>" name="groupConnectivityInformation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation" required="True">
<item type="object">
<prop type="string" name="groupId" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].groupId" required="True"/>
<prop type="string" name="redirectMapId" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].redirectMapId"/>
<prop type="array<string>" name="requiredMembers" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].requiredMembers" required="True">
<item type="string"/>
</prop>
<prop type="array<string>" name="requiredZoneNames" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].requiredZoneNames" required="True">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="string" name="minApiVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.minApiVersion" required="True"/>
</prop>
<prop type="object" name="quotaRule" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule">
<prop type="array<object>" name="locationRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules">
<item type="object">
<prop type="string" name="location" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules[].location"/>
<prop type="string" name="policy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules[].policy">
<enum>
<item value=""Default""/>
<item value=""None""/>
<item value=""Restricted""/>
</enum>
</prop>
<prop type="string" name="quotaId" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules[].quotaId"/>
</item>
</prop>
<prop type="string" name="quotaPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.quotaPolicy">
<enum>
<item value=""Default""/>
<item value=""None""/>
<item value=""Restricted""/>
</enum>
</prop>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.requiredFeatures">
<item type="string"/>
</prop>
</prop>
<prop type="string" name="regionality" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.regionality">
<enum>
<item value=""Global""/>
<item value=""NotSpecified""/>
<item value=""Regional""/>
</enum>
</prop>
<prop type="object" name="requestHeaderOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.requestHeaderOptions">
<prop type="string" name="optInHeaders" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.requestHeaderOptions.optInHeaders">
<enum>
<item value=""ClientGroupMembership""/>
<item value=""ClientPrincipalNameEncoded""/>
<item value=""MSIResourceIdEncoded""/>
<item value=""ManagementGroupAncestorsEncoded""/>
<item value=""NotSpecified""/>
<item value=""PrivateLinkId""/>
<item value=""PrivateLinkResourceId""/>
<item value=""PrivateLinkVnetTrafficTag""/>
<item value=""ResourceGroupLocation""/>
<item value=""SignedAuxiliaryTokens""/>
<item value=""SignedUserToken""/>
<item value=""UnboundedClientGroupMembership""/>
</enum>
</prop>
<prop type="string" name="optOutHeaders" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.requestHeaderOptions.optOutHeaders">
<enum>
<item value=""NotSpecified""/>
<item value=""SystemDataCreatedByLastModifiedBy""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.requiredFeatures">
<item type="string"/>
</prop>
<prop type="object" name="resourceCache" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceCache">
<prop type="boolean" name="enableResourceCache" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceCache.enableResourceCache"/>
<prop type="string" name="resourceCacheExpirationTimespan" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceCache.resourceCacheExpirationTimespan"/>
</prop>
<prop type="object" name="resourceConcurrencyControlOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceConcurrencyControlOptions">
<additionalProp>
<item type="object">
<prop type="string" name="policy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceConcurrencyControlOptions{}.policy">
<enum>
<item value=""NotSpecified""/>
<item value=""SynchronizeBeginExtension""/>
</enum>
</prop>
</item>
</additionalProp>
</prop>
<prop type="string" name="resourceDeletionPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceDeletionPolicy">
<enum>
<item value=""CascadeDeleteAll""/>
<item value=""CascadeDeleteProxyOnlyChildren""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="resourceGraphConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceGraphConfiguration">
<prop type="string" name="apiVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceGraphConfiguration.apiVersion"/>
<prop type="boolean" name="enabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceGraphConfiguration.enabled"/>
</prop>
<prop type="object" name="resourceManagementOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions">
<prop type="object" name="batchProvisioningSupport" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport">
<prop type="array<object>" name="actionConfigurations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.actionConfigurations">
<item type="object">
<prop type="string" name="authorizationAction" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.actionConfigurations[].authorizationAction"/>
<prop type="integer64" name="maxBatchSize" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.actionConfigurations[].maxBatchSize"/>
</item>
</prop>
<prop type="string" name="batchContractVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.batchContractVersion"/>
<prop type="integer64" name="maxBatchSize" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.maxBatchSize"/>
<prop type="integer64" name="maxNestedBatchSize" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.maxNestedBatchSize"/>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.requiredFeatures">
<item type="string"/>
</prop>
<prop type="string" name="supportedOperations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.supportedOperations">
<enum>
<item value=""Delete""/>
<item value=""Get""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="deleteDependencies" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies" identifiers="requiredFeatures linkedProperty linkedType">
<item type="object">
<prop type="string" name="linkedProperty" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies[].linkedProperty"/>
<prop type="string" name="linkedType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies[].linkedType"/>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies[].requiredFeatures">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="object" name="nestedProvisioningSupport" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.nestedProvisioningSupport">
<prop type="string" name="minimumApiVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.nestedProvisioningSupport.minimumApiVersion"/>
</prop>
</prop>
<prop type="object" name="resourceMovePolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy">
<prop type="boolean" name="crossResourceGroupMoveEnabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy.crossResourceGroupMoveEnabled"/>
<prop type="boolean" name="crossSubscriptionMoveEnabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy.crossSubscriptionMoveEnabled"/>
<prop type="boolean" name="validationRequired" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy.validationRequired"/>
</prop>
<prop type="@ResourceProviderAuthorizationRules_create" name="resourceProviderAuthorizationRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceProviderAuthorizationRules"/>
<prop type="object" name="resourceQueryManagement" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceQueryManagement">
<prop type="string" name="filterOption" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceQueryManagement.filterOption">
<enum>
<item value=""EnableSubscriptionFilterOnTenant""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="string" name="resourceSubType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceSubType">
<enum>
<item value=""AsyncOperation""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="resourceTypeCommonAttributeManagement" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceTypeCommonAttributeManagement">
<prop type="string" name="commonApiVersionsMergeMode" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceTypeCommonAttributeManagement.commonApiVersionsMergeMode">
<enum>
<item value=""Merge""/>
<item value=""Overwrite""/>
</enum>
</prop>
</prop>
<prop type="string" name="resourceValidation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceValidation">
<enum>
<item value=""NotSpecified""/>
<item value=""ProfaneWords""/>
<item value=""ReservedWords""/>
</enum>
</prop>
<prop type="object" name="routingRule" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.routingRule">
<prop type="string" name="hostResourceType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.routingRule.hostResourceType"/>
</prop>
<prop type="string" name="routingType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.routingType">
<enum>
<item value=""CascadeExtension""/>
<item value=""Default""/>
<item value=""Extension""/>
<item value=""Failover""/>
<item value=""Fanout""/>
<item value=""HostBased""/>
<item value=""LocationBased""/>
<item value=""ProxyOnly""/>
<item value=""Tenant""/>
</enum>
</prop>
<prop type="array<@ServiceTreeInfo_create>" name="serviceTreeInfos" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.serviceTreeInfos">
<item type="@ServiceTreeInfo_create"/>
</prop>
<prop type="string" name="skuLink" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.skuLink"/>
<prop type="object" name="subscriptionLifecycleNotificationSpecifications" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionLifecycleNotificationSpecifications">
<prop type="duration" name="softDeleteTTL" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionLifecycleNotificationSpecifications.softDeleteTTL"/>
<prop type="array<@SubscriptionStateOverrideAction_create>" name="subscriptionStateOverrideActions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionLifecycleNotificationSpecifications.subscriptionStateOverrideActions">
<item type="@SubscriptionStateOverrideAction_create"/>
</prop>
</prop>
<prop type="array<object>" name="subscriptionStateRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionStateRules">
<item type="object">
<prop type="array<string>" name="allowedActions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionStateRules[].allowedActions">
<item type="string"/>
</prop>
<prop type="string" name="state" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionStateRules[].state">
<enum>
<item value=""Deleted""/>
<item value=""Disabled""/>
<item value=""Enabled""/>
<item value=""NotDefined""/>
<item value=""PastDue""/>
<item value=""Warned""/>
</enum>
</prop>
</item>
</prop>
<prop type="boolean" name="superScaleEnabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.superScaleEnabled"/>
<prop type="boolean" name="supportsTags" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.supportsTags"/>
<prop type="array<object>" name="swaggerSpecifications" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.swaggerSpecifications" identifiers="swaggerSpecFolderUri">
<item type="object">
<prop type="array<string>" name="apiVersions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.swaggerSpecifications[].apiVersions">
<item type="string"/>
</prop>
<prop type="string" name="swaggerSpecFolderUri" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.swaggerSpecifications[].swaggerSpecFolderUri"/>
</item>
</prop>
<prop type="object" name="templateDeploymentOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentOptions">
<prop type="array<string>" name="preflightOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentOptions.preflightOptions">
<item type="string">
<enum>
<item value=""ContinueDeploymentOnFailure""/>
<item value=""DefaultValidationOnly""/>
<item value=""None""/>
</enum>
</item>
</prop>
<prop type="boolean" name="preflightSupported" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentOptions.preflightSupported"/>
</prop>
<prop type="object" name="templateDeploymentPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy">
<prop type="string" name="capabilities" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy.capabilities" required="True">
<enum>
<item value=""Default""/>
<item value=""Preflight""/>
</enum>
</prop>
<prop type="string" name="preflightNotifications" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy.preflightNotifications">
<enum>
<item value=""None""/>
<item value=""UnregisteredSubscriptions""/>
</enum>
</prop>
<prop type="string" name="preflightOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy.preflightOptions" required="True">
<enum>
<item value=""DeploymentRequests""/>
<item value=""None""/>
<item value=""RegisteredOnly""/>
<item value=""TestOnly""/>
<item value=""ValidationRequests""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="throttlingRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules">
<item type="object">
<prop type="string" name="action" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].action" required="True"/>
<prop type="array<string>" name="applicationId" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].applicationId">
<item type="string"/>
</prop>
<prop type="array<object>" name="metrics" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics" required="True">
<item type="object">
<prop type="string" name="bucketSize" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].bucketSize"/>
<prop type="duration" name="interval" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].interval"/>
<prop type="integer64" name="limit" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].limit" required="True"/>
<prop type="string" name="type" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].type" required="True">
<enum>
<item value=""NotSpecified""/>
<item value=""NumberOfRequests""/>
<item value=""NumberOfResources""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].requiredFeatures">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="@TokenAuthConfiguration_create" name="tokenAuthConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.tokenAuthConfiguration"/>
<prop type="object" name="writeLock" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.writeLock">
<prop type="string" name="state" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.writeLock.state">
<default value=""Disabled""/>
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
</enum>
</prop>
</prop>
</prop>
</item>
</prop>
<prop type="string" name="rolloutId" arg="$properties.properties.specification.rolloutId"/>
<prop type="boolean" name="skipReleaseScopeValidation" arg="$properties.properties.specification.skipReleaseScopeValidation"/>
</prop>
<prop type="object" name="status" arg="$properties.properties.status">
<prop type="array<string>" name="completedRegions" arg="$properties.properties.status.completedRegions">
<item type="string"/>
</prop>
<prop type="object" name="failedOrSkippedRegions" arg="$properties.properties.status.failedOrSkippedRegions">
<additionalProp>
<item type="object" cls="ExtendedErrorInfo_create">
<prop type="array<object>" name="additionalInfo" arg="@ExtendedErrorInfo_create.additionalInfo" identifiers="type">
<item type="object">
<prop type="string" name="type" arg="@ExtendedErrorInfo_create.additionalInfo[].type" required="True"/>
</item>
</prop>
<prop type="string" name="code" arg="@ExtendedErrorInfo_create.code"/>
<prop type="array<@ExtendedErrorInfo_create>" name="details" arg="@ExtendedErrorInfo_create.details" identifiers="code">
<item type="@ExtendedErrorInfo_create"/>
</prop>
<prop type="string" name="message" arg="@ExtendedErrorInfo_create.message"/>
<prop type="string" name="target" arg="@ExtendedErrorInfo_create.target"/>
</item>
</additionalProp>
</prop>
<prop type="object" name="manifestCheckinStatus" arg="$properties.properties.status.manifestCheckinStatus">
<prop type="string" name="commitId" arg="$properties.properties.status.manifestCheckinStatus.commitId"/>
<prop type="boolean" name="isCheckedIn" arg="$properties.properties.status.manifestCheckinStatus.isCheckedIn" required="True"/>
<prop type="string" name="pullRequest" arg="$properties.properties.status.manifestCheckinStatus.pullRequest"/>
<prop type="string" name="statusMessage" arg="$properties.properties.status.manifestCheckinStatus.statusMessage" required="True"/>
</prop>
</prop>
</prop>
</schema>
</json>
</body>
</request>
<response statusCode="200 201">
<body>
<json var="$Instance">
<schema type="object">
<prop readOnly="True" type="ResourceId" name="id">
<format template="/subscriptions/{}/providers/Microsoft.ProviderHub/providerRegistrations/{}/customRollouts/{}"/>
</prop>
<prop readOnly="True" type="string" name="name"/>
<prop type="object" name="properties" required="True">
<prop readOnly="True" type="string" name="provisioningState">
<enum>
<item value=""Accepted""/>
<item value=""Canceled""/>
<item value=""Created""/>
<item value=""Creating""/>
<item value=""Deleted""/>
<item value=""Deleting""/>
<item value=""Failed""/>
<item value=""MovingResources""/>
<item value=""NotSpecified""/>
<item value=""RolloutInProgress""/>
<item value=""Running""/>
<item value=""Succeeded""/>
<item value=""TransientFailure""/>
</enum>
</prop>
<prop type="object" name="specification" required="True">
<prop type="object" name="autoProvisionConfig">
<prop type="boolean" name="resourceGraph"/>
<prop type="boolean" name="storage"/>
</prop>
<prop type="object" name="canary">
<prop type="array<string>" name="regions">
<item type="string"/>
</prop>
</prop>
<prop type="object" name="manifestCheckinSpecification">
<prop type="string" name="manifestCheckinOption">
<default value=""DoNotAttemptAutomaticManifestCheckin""/>
<enum>
<item value=""AttemptAutomaticManifestCheckin""/>
<item value=""DoNotAttemptAutomaticManifestCheckin""/>
</enum>
</prop>
<prop type="object" name="manifestCheckinParams">
<prop type="string" name="baselineArmManifestLocation" required="True"/>
<prop type="string" name="environment" required="True"/>
</prop>
</prop>
<prop type="object" name="providerRegistration">
<prop readOnly="True" type="ResourceId" name="id">
<format template="/subscriptions/{}/providers/Microsoft.ProviderHub/providerRegistrations/{}"/>
</prop>
<prop type="string" name="kind">
<default value=""Managed""/>
<enum>
<item value=""Direct""/>
<item value=""Hybrid""/>
<item value=""Managed""/>
</enum>
</prop>
<prop readOnly="True" type="string" name="name"/>
<prop type="object" name="properties">
<prop type="array<object>" name="capabilities" identifiers="quotaId">
<item type="object">
<prop type="string" name="effect" required="True">
<enum>
<item value=""Allow""/>
<item value=""Disallow""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="string" name="quotaId" required="True"/>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="string" name="crossTenantTokenValidation">
<enum>
<item value=""EnsureSecureValidation""/>
<item value=""PassthroughInsecureToken""/>
</enum>
</prop>
<prop type="string" name="customManifestVersion"/>
<prop type="object" name="dstsConfiguration">
<prop type="string" name="serviceDnsName"/>
<prop type="string" name="serviceName" required="True"/>
</prop>
<prop type="boolean" name="enablePresetResourceTypes"/>
<prop nullable="True" type="boolean" name="enableTenantLinkedNotification"/>
<prop type="object" name="featuresRule">
<prop type="string" name="requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="globalNotificationEndpoints">
<item type="object" cls="ResourceProviderEndpoint_read">
<prop type="array<string>" name="apiVersions">
<item type="string"/>
</prop>
<prop type="boolean" name="enabled"/>
<prop type="string" name="endpointType">
<enum>
<item value=""Canary""/>
<item value=""NotSpecified""/>
<item value=""Production""/>
<item value=""TestInProduction""/>
</enum>
</prop>
<prop type="string" name="endpointUri"/>
<prop type="object" name="featuresRule">
<prop type="string" name="requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="locations">
<item type="string"/>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
<prop type="string" name="skuLink"/>
<prop type="duration" name="timeout"/>
</item>
</prop>
<prop type="string" name="legacyNamespace"/>
<prop type="array<string>" name="legacyRegistrations">
<item type="string"/>
</prop>
<prop type="array<object>" name="linkedNotificationRules">
<item type="object">
<prop type="array<string>" name="actions">
<item type="string"/>
</prop>
<prop type="object" name="dstsConfiguration">
<prop type="string" name="serviceDnsName"/>
<prop type="string" name="serviceName" required="True"/>
</prop>
<prop type="array<@ResourceProviderEndpoint_read>" name="endpoints">
<item type="@ResourceProviderEndpoint_read"/>
</prop>
<prop type="object" name="tokenAuthConfiguration" cls="TokenAuthConfiguration_read">
<prop type="string" name="authenticationScheme">
<enum>
<item value=""Bearer""/>
<item value=""PoP""/>
</enum>
</prop>
<prop type="boolean" name="disableCertificateAuthenticationFallback"/>
<prop type="string" name="signedRequestScope">
<enum>
<item value=""Endpoint""/>
<item value=""ResourceUri""/>
</enum>
</prop>
</prop>
</item>
</prop>
<prop type="object" name="management">
<prop type="array<string>" name="authorizationOwners">
<item type="string"/>
</prop>
<prop type="array<string>" name="canaryManifestOwners">
<item type="string"/>
</prop>
<prop type="object" name="errorResponseMessageOptions">
<prop type="string" name="serverFailureResponseMessageType">
<enum>
<item value=""NotSpecified""/>
<item value=""OutageReporting""/>
</enum>
</prop>
</prop>
<prop type="object" name="expeditedRolloutMetadata">
<prop type="boolean" name="enabled"/>
<prop type="string" name="expeditedRolloutIntent">
<enum>
<item value=""Hotfix""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="expeditedRolloutSubmitters">
<item type="string"/>
</prop>
<prop type="string" name="incidentContactEmail"/>
<prop type="string" name="incidentRoutingService"/>
<prop type="string" name="incidentRoutingTeam"/>
<prop type="array<string>" name="manifestOwners">
<item type="string"/>
</prop>
<prop type="string" name="pcCode"/>
<prop type="string" name="profitCenterProgramId"/>
<prop type="string" name="resourceAccessPolicy">
<enum>
<item value=""AcisActionAllowed""/>
<item value=""AcisReadAllowed""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="array<object>" name="resourceAccessRoles">
<item type="object" cls="ResourceAccessRole_read">
<prop type="array<string>" name="actions">
<item type="string"/>
</prop>
<prop type="array<string>" name="allowedGroupClaims">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="array<string>" name="schemaOwners">
<item type="string"/>
</prop>
<prop type="array<object>" name="serviceTreeInfos">
<item type="object" cls="ServiceTreeInfo_read">
<prop type="string" name="componentId"/>
<prop type="string" name="readiness">
<enum>
<item value=""ClosingDown""/>
<item value=""Deprecated""/>
<item value=""GA""/>
<item value=""InDevelopment""/>
<item value=""InternalOnly""/>
<item value=""PrivatePreview""/>
<item value=""PublicPreview""/>
<item value=""RemovedFromARM""/>
<item value=""Retired""/>
</enum>
</prop>
<prop type="string" name="serviceId"/>
</item>
</prop>
</prop>
<prop type="array<@ResourceProviderEndpoint_read>" name="managementGroupGlobalNotificationEndpoints">
<item type="@ResourceProviderEndpoint_read"/>
</prop>
<prop type="object" name="metadata">
<additionalProp anyType="True"/>
</prop>
<prop type="string" name="namespace"/>
<prop type="string" name="notificationOptions">
<enum>
<item value=""EmitSpendingLimit""/>
<item value=""None""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="notificationSettings">
<prop type="array<object>" name="subscriberSettings">
<item type="object">
<prop type="array<object>" name="filterRules">
<item type="object">
<prop type="array<object>" name="endpointInformation">
<item type="object">
<prop type="string" name="endpoint"/>
<prop type="string" name="endpointType">
<enum>
<item value=""Eventhub""/>
<item value=""Webhook""/>
</enum>
</prop>
<prop type="string" name="schemaVersion"/>
</item>
</prop>
<prop type="string" name="filterQuery"/>
</item>
</prop>
</item>
</prop>
</prop>
<prop type="array<object>" name="notifications" cls="Notifications_read">
<item type="object">
<prop type="string" name="notificationType">
<enum>
<item value=""SubscriptionNotification""/>
<item value=""Unspecified""/>
</enum>
</prop>
<prop type="string" name="skipNotifications">
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
<item value=""Unspecified""/>
</enum>
</prop>
</item>
</prop>
<prop type="string" name="oboSubscriptionId"/>
<prop type="array<string>" name="optionalFeatures">
<item type="string"/>
</prop>
<prop type="object" name="privateResourceProviderConfiguration">
<prop type="array<string>" name="allowedSubscriptions">
<item type="string"/>
</prop>
</prop>
<prop type="object" name="providerAuthentication">
<prop type="array<string>" name="allowedAudiences" required="True">
<item type="string"/>
</prop>
</prop>
<prop type="array<object>" name="providerAuthorizations">
<item type="object" cls="ResourceProviderAuthorization_read">
<prop type="array<object>" name="allowedThirdPartyExtensions" identifiers="name">
<item type="object">
<prop type="string" name="name"/>
</item>
</prop>
<prop type="string" name="applicationId"/>
<prop type="string" name="groupingTag"/>
<prop type="object" name="managedByAuthorization">
<prop type="array<object>" name="additionalAuthorizations" identifiers="roleDefinitionId applicationId">
<item type="object">
<prop type="string" name="applicationId"/>
<prop type="string" name="roleDefinitionId"/>
</item>
</prop>
<prop type="boolean" name="allowManagedByInheritance"/>
<prop type="string" name="managedByResourceRoleDefinitionId"/>
</prop>
<prop type="string" name="managedByRoleDefinitionId"/>
<prop type="string" name="roleDefinitionId"/>
</item>
</prop>
<prop type="object" name="providerHubMetadata">
<prop type="string" name="directRpRoleDefinitionId"/>
<prop type="string" name="globalAsyncOperationResourceTypeName"/>
<prop type="object" name="providerAuthentication">
<prop type="array<string>" name="allowedAudiences" required="True">
<item type="string"/>
</prop>
</prop>
<prop type="array<@ResourceProviderAuthorization_read>" name="providerAuthorizations">
<item type="@ResourceProviderAuthorization_read"/>
</prop>
<prop type="string" name="regionalAsyncOperationResourceTypeName"/>
<prop type="object" name="thirdPartyProviderAuthorization">
<prop type="array<object>" name="authorizations">
<item type="object">
<prop type="string" name="principalId" required="True"/>
<prop type="string" name="roleDefinitionId" required="True"/>
</item>
</prop>
<prop type="string" name="managedByTenantId"/>
</prop>
</prop>
<prop type="string" name="providerType">
<enum>
<item value=""AuthorizationFree""/>
<item value=""Decommissioned""/>
<item value=""External""/>
<item value=""Hidden""/>
<item value=""Internal""/>
<item value=""LegacyRegistrationRequired""/>
<item value=""NotSpecified""/>
<item value=""RegistrationFree""/>
<item value=""TenantOnly""/>
</enum>
</prop>
<prop type="string" name="providerVersion"/>
<prop readOnly="True" type="string" name="provisioningState">
<enum>
<item value=""Accepted""/>
<item value=""Canceled""/>
<item value=""Created""/>
<item value=""Creating""/>
<item value=""Deleted""/>
<item value=""Deleting""/>
<item value=""Failed""/>
<item value=""MovingResources""/>
<item value=""NotSpecified""/>
<item value=""RolloutInProgress""/>
<item value=""Running""/>
<item value=""Succeeded""/>
<item value=""TransientFailure""/>
</enum>
</prop>
<prop type="object" name="requestHeaderOptions">
<prop type="string" name="optInHeaders">
<enum>
<item value=""ClientGroupMembership""/>
<item value=""ClientPrincipalNameEncoded""/>
<item value=""MSIResourceIdEncoded""/>
<item value=""ManagementGroupAncestorsEncoded""/>
<item value=""NotSpecified""/>
<item value=""PrivateLinkId""/>
<item value=""PrivateLinkResourceId""/>
<item value=""PrivateLinkVnetTrafficTag""/>
<item value=""ResourceGroupLocation""/>
<item value=""SignedAuxiliaryTokens""/>
<item value=""SignedUserToken""/>
<item value=""UnboundedClientGroupMembership""/>
</enum>
</prop>
<prop type="string" name="optOutHeaders">
<enum>
<item value=""NotSpecified""/>
<item value=""SystemDataCreatedByLastModifiedBy""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
<prop type="object" name="resourceGroupLockOptionDuringMove">
<prop type="string" name="blockActionVerb">
<enum>
<item value=""Action""/>
<item value=""Delete""/>
<item value=""NotSpecified""/>
<item value=""Read""/>
<item value=""Unrecognized""/>
<item value=""Write""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="resourceHydrationAccounts">
<item type="object">
<prop type="string" name="accountName"/>
<prop type="string" name="encryptedKey"/>
<prop type="integer64" name="maxChildResourceConsistencyJobLimit"/>
<prop type="string" name="subscriptionId"/>
</item>
</prop>
<prop type="object" name="resourceProviderAuthorizationRules" cls="ResourceProviderAuthorizationRules_read">
<prop type="object" name="asyncOperationPollingRules">
<prop type="string" name="additionalOptions">
<enum>
<item value=""ProtectedAsyncOperationPolling""/>
<item value=""ProtectedAsyncOperationPollingAuditOnly""/>
</enum>
</prop>
<prop type="array<string>" name="authorizationActions">
<item type="string"/>
</prop>
</prop>
</prop>
<prop type="object" name="responseOptions">
<prop type="string" name="serviceClientOptionsType">
<enum>
<item value=""DisableAutomaticDecompression""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="string" name="serviceName"/>
<prop type="array<object>" name="services">
<item type="object">
<prop type="string" name="serviceName"/>
<prop type="string" name="status">
<enum>
<item value=""Active""/>
<item value=""Inactive""/>
</enum>
</prop>
</item>
</prop>
<prop type="object" name="subscriptionLifecycleNotificationSpecifications">
<prop type="duration" name="softDeleteTTL"/>
<prop type="array<object>" name="subscriptionStateOverrideActions">
<item type="object" cls="SubscriptionStateOverrideAction_read">
<prop type="string" name="action" required="True">
<enum>
<item value=""BillingCancellation""/>
<item value=""DeleteAllResources""/>
<item value=""NoOp""/>
<item value=""NotDefined""/>
<item value=""SoftDeleteAllResources""/>
<item value=""UndoSoftDelete""/>
</enum>
</prop>
<prop type="string" name="state" required="True">
<enum>
<item value=""Deleted""/>
<item value=""Registered""/>
<item value=""Suspended""/>
<item value=""SuspendedToDeleted""/>
<item value=""SuspendedToRegistered""/>
<item value=""SuspendedToUnregistered""/>
<item value=""SuspendedToWarned""/>
<item value=""Unregistered""/>
<item value=""Warned""/>
<item value=""WarnedToDeleted""/>
<item value=""WarnedToRegistered""/>
<item value=""WarnedToSuspended""/>
<item value=""WarnedToUnregistered""/>
</enum>
</prop>
</item>
</prop>
</prop>
<prop type="object" name="templateDeploymentOptions">
<prop type="array<string>" name="preflightOptions">
<item type="string">
<enum>
<item value=""ContinueDeploymentOnFailure""/>
<item value=""DefaultValidationOnly""/>
<item value=""None""/>
</enum>
</item>
</prop>
<prop type="boolean" name="preflightSupported"/>
</prop>
<prop type="@TokenAuthConfiguration_read" name="tokenAuthConfiguration"/>
</prop>
<prop readOnly="True" type="object" name="systemData" cls="SystemData_read">
<prop type="dateTime" name="createdAt"/>
<prop type="string" name="createdBy"/>
<prop type="string" name="createdByType">
<enum>
<item value=""Application""/>
<item value=""Key""/>
<item value=""ManagedIdentity""/>
<item value=""User""/>
</enum>
</prop>
<prop type="dateTime" name="lastModifiedAt"/>
<prop type="string" name="lastModifiedBy"/>
<prop type="string" name="lastModifiedByType">
<enum>
<item value=""Application""/>
<item value=""Key""/>
<item value=""ManagedIdentity""/>
<item value=""User""/>
</enum>
</prop>
</prop>
<prop readOnly="True" type="string" name="type"/>
</prop>
<prop type="boolean" name="refreshSubscriptionRegistration"/>
<prop type="array<string>" name="releaseScopes">
<item type="string"/>
</prop>
<prop type="array<object>" name="resourceTypeRegistrations">
<item type="object">
<prop readOnly="True" type="ResourceId" name="id">
<format template="/subscriptions/{}/providers/Microsoft.ProviderHub/providerRegistrations/{}/resourcetypeRegistrations/{}"/>
</prop>
<prop type="string" name="kind">
<default value=""Managed""/>
<enum>
<item value=""Direct""/>
<item value=""Hybrid""/>
<item value=""Managed""/>
</enum>
</prop>
<prop readOnly="True" type="string" name="name"/>
<prop type="object" name="properties">
<prop type="boolean" name="addResourceListTargetLocations"/>
<prop type="string" name="additionalOptions">
<enum>
<item value=""ProtectedAsyncOperationPolling""/>
<item value=""ProtectedAsyncOperationPollingAuditOnly""/>
</enum>
</prop>
<prop type="boolean" name="allowEmptyRoleAssignments"/>
<prop type="array<object>" name="allowedResourceNames" identifiers="getActionVerb name">
<item type="object">
<prop type="string" name="getActionVerb"/>
<prop type="string" name="name"/>
</item>
</prop>
<prop type="array<string>" name="allowedTemplateDeploymentReferenceActions">
<item type="string"/>
</prop>
<prop type="array<string>" name="allowedUnauthorizedActions">
<item type="string"/>
</prop>
<prop type="array<object>" name="allowedUnauthorizedActionsExtensions">
<item type="object">
<prop type="string" name="action"/>
<prop type="string" name="intent">
<enum>
<item value=""DEFERRED_ACCESS_CHECK""/>
<item value=""LOW_PRIVILEGE""/>
<item value=""NOT_SPECIFIED""/>
<item value=""RP_CONTRACT""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<object>" name="apiProfiles" identifiers="profileVersion apiVersion">
<item type="object">
<prop type="string" name="apiVersion"/>
<prop type="string" name="profileVersion"/>
</item>
</prop>
<prop type="string" name="asyncOperationResourceTypeName"/>
<prop type="array<object>" name="asyncTimeoutRules">
<item type="object">
<prop type="string" name="actionName"/>
<prop type="string" name="timeout"/>
</item>
</prop>
<prop type="array<object>" name="authorizationActionMappings" identifiers="original">
<item type="object">
<prop type="string" name="desired"/>
<prop type="string" name="original"/>
</item>
</prop>
<prop type="object" name="availabilityZoneRule">
<prop type="string" name="availabilityZonePolicy">
<enum>
<item value=""MultiZoned""/>
<item value=""NotSpecified""/>
<item value=""SingleZoned""/>
</enum>
</prop>
</prop>
<prop type="object" name="capacityRule">
<prop type="string" name="capacityPolicy">
<enum>
<item value=""Default""/>
<item value=""Restricted""/>
</enum>
</prop>
<prop type="string" name="skuAlias"/>
</prop>
<prop type="string" name="category">
<enum>
<item value=""FreeForm""/>
<item value=""Internal""/>
<item value=""None""/>
<item value=""PureProxy""/>
</enum>
</prop>
<prop type="object" name="checkNameAvailabilitySpecifications">
<prop type="boolean" name="enableDefaultValidation"/>
<prop type="array<string>" name="resourceTypesWithCustomValidation">
<item type="string"/>
</prop>
</prop>
<prop type="array<string>" name="commonApiVersions">
<item type="string"/>
</prop>
<prop type="string" name="crossTenantTokenValidation">
<enum>
<item value=""EnsureSecureValidation""/>
<item value=""PassthroughInsecureToken""/>
</enum>
</prop>
<prop type="string" name="defaultApiVersion"/>
<prop type="array<string>" name="disallowedActionVerbs">
<item type="string"/>
</prop>
<prop type="array<string>" name="disallowedEndUserOperations">
<item type="string"/>
</prop>
<prop type="object" name="dstsConfiguration">
<prop type="string" name="serviceDnsName"/>
<prop type="string" name="serviceName" required="True"/>
</prop>
<prop type="boolean" name="enableAsyncOperation"/>
<prop type="boolean" name="enableThirdPartyS2S"/>
<prop type="array<object>" name="endpoints">
<item type="object">
<prop type="string" name="apiVersion"/>
<prop type="array<string>" name="apiVersions">
<item type="string"/>
</prop>
<prop type="string" name="dataBoundary">
<enum>
<item value=""EU""/>
<item value=""Global""/>
<item value=""NotDefined""/>
<item value=""US""/>
</enum>
</prop>
<prop type="object" name="dstsConfiguration">
<prop type="string" name="serviceDnsName"/>
<prop type="string" name="serviceName" required="True"/>
</prop>
<prop type="boolean" name="enabled"/>
<prop type="string" name="endpointType">
<enum>
<item value=""Canary""/>
<item value=""NotSpecified""/>
<item value=""Production""/>
<item value=""TestInProduction""/>
</enum>
</prop>
<prop type="string" name="endpointUri"/>
<prop type="array<object>" name="extensions" identifiers="endpointUri">
<item type="object">
<prop type="string" name="endpointUri"/>
<prop type="array<string>" name="extensionCategories">
<item type="string">
<enum>
<item value=""BestMatchOperationBegin""/>
<item value=""NotSpecified""/>
<item value=""ResourceCreationBegin""/>
<item value=""ResourceCreationCompleted""/>
<item value=""ResourceCreationValidate""/>
<item value=""ResourceDeletionBegin""/>
<item value=""ResourceDeletionCompleted""/>
<item value=""ResourceDeletionValidate""/>
<item value=""ResourceMoveBegin""/>
<item value=""ResourceMoveCompleted""/>
<item value=""ResourcePatchBegin""/>
<item value=""ResourcePatchCompleted""/>
<item value=""ResourcePatchValidate""/>
<item value=""ResourcePostAction""/>
<item value=""ResourceReadBegin""/>
<item value=""ResourceReadValidate""/>
<item value=""SubscriptionLifecycleNotification""/>
<item value=""SubscriptionLifecycleNotificationDeletion""/>
</enum>
</item>
</prop>
<prop type="duration" name="timeout"/>
</item>
</prop>
<prop type="object" name="featuresRule">
<prop type="string" name="requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="string" name="kind">
<default value=""Managed""/>
<enum>
<item value=""Direct""/>
<item value=""Managed""/>
</enum>
</prop>
<prop type="array<string>" name="locations">
<item type="string"/>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
<prop type="string" name="skuLink"/>
<prop type="duration" name="timeout"/>
<prop type="@TokenAuthConfiguration_read" name="tokenAuthConfiguration"/>
<prop type="array<string>" name="zones">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="array<object>" name="extendedLocations">
<item type="object">
<prop type="string" name="supportedPolicy"/>
<prop type="string" name="type"/>
</item>
</prop>
<prop type="object" name="extensionOptions">
<prop type="object" name="resourceCreationBegin">
<prop type="array<string>" name="request">
<item type="string">
<enum>
<item value=""DoNotMergeExistingReadOnlyAndSecretProperties""/>
<item value=""IncludeInternalMetadata""/>
<item value=""NotSpecified""/>
</enum>
</item>
</prop>
<prop type="array<string>" name="response">
<item type="string">
<enum>
<item value=""DoNotMergeExistingReadOnlyAndSecretProperties""/>
<item value=""IncludeInternalMetadata""/>
<item value=""NotSpecified""/>
</enum>
</item>
</prop>
</prop>
</prop>
<prop type="object" name="featuresRule">
<prop type="string" name="requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="string" name="frontdoorRequestMode">
<enum>
<item value=""NotSpecified""/>
<item value=""UseManifest""/>
</enum>
</prop>
<prop type="string" name="groupingTag"/>
<prop type="object" name="identityManagement">
<prop type="string" name="applicationId"/>
<prop type="array<string>" name="applicationIds">
<item type="string"/>
</prop>
<prop type="array<string>" name="delegationAppIds">
<item type="string"/>
</prop>
<prop type="string" name="type">
<enum>
<item value=""Actor""/>
<item value=""DelegatedResourceIdentity""/>
<item value=""NotSpecified""/>
<item value=""SystemAssigned""/>
<item value=""UserAssigned""/>
</enum>
</prop>
</prop>
<prop type="boolean" name="isPureProxy"/>
<prop type="string" name="legacyName"/>
<prop type="array<string>" name="legacyNames">
<item type="string"/>
</prop>
<prop type="object" name="legacyPolicy">
<prop type="array<object>" name="disallowedConditions">
<item type="object">
<prop type="array<string>" name="disallowedLegacyOperations">
<item type="string">
<enum>
<item value=""Action""/>
<item value=""AzureAsyncOperationWaiting""/>
<item value=""Create""/>
<item value=""Delete""/>
<item value=""DeploymentCleanup""/>
<item value=""EvaluateDeploymentOutput""/>
<item value=""NotSpecified""/>
<item value=""Read""/>
<item value=""ResourceCacheWaiting""/>
<item value=""Waiting""/>
</enum>
</item>
</prop>
<prop type="string" name="feature"/>
</item>
</prop>
<prop type="array<string>" name="disallowedLegacyOperations">
<item type="string">
<enum>
<item value=""Action""/>
<item value=""AzureAsyncOperationWaiting""/>
<item value=""Create""/>
<item value=""Delete""/>
<item value=""DeploymentCleanup""/>
<item value=""EvaluateDeploymentOutput""/>
<item value=""NotSpecified""/>
<item value=""Read""/>
<item value=""ResourceCacheWaiting""/>
<item value=""Waiting""/>
</enum>
</item>
</prop>
</prop>
<prop type="array<object>" name="linkedAccessChecks">
<item type="object">
<prop type="string" name="actionName"/>
<prop type="string" name="linkedAction"/>
<prop type="string" name="linkedActionVerb"/>
<prop type="string" name="linkedProperty"/>
<prop type="string" name="linkedType"/>
<prop readOnly="True" type="string" name="options">
<enum>
<item value=""IgnoreEmptyStringLinkedType""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<object>" name="linkedNotificationRules">
<item type="object">
<prop type="array<string>" name="actions">
<item type="string"/>
</prop>
<prop type="array<string>" name="actionsOnFailedOperation">
<item type="string"/>
</prop>
<prop type="array<string>" name="fastPathActions">
<item type="string"/>
</prop>
<prop type="array<string>" name="fastPathActionsOnFailedOperation">
<item type="string"/>
</prop>
<prop type="duration" name="linkedNotificationTimeout"/>
</item>
</prop>
<prop type="array<object>" name="linkedOperationRules" identifiers="linkedOperation linkedAction">
<item type="object">
<prop type="array<string>" name="dependsOnTypes">
<item type="string"/>
</prop>
<prop type="string" name="linkedAction" required="True">
<enum>
<item value=""Blocked""/>
<item value=""Enabled""/>
<item value=""NotSpecified""/>
<item value=""Validate""/>
</enum>
</prop>
<prop type="string" name="linkedOperation" required="True">
<enum>
<item value=""CrossResourceGroupResourceMove""/>
<item value=""CrossSubscriptionResourceMove""/>
<item value=""None""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<object>" name="loggingRules">
<item type="object">
<prop type="string" name="action" required="True"/>
<prop type="string" name="detailLevel" required="True">
<enum>
<item value=""Body""/>
<item value=""None""/>
</enum>
</prop>
<prop type="string" name="direction" required="True">
<enum>
<item value=""None""/>
<item value=""Request""/>
<item value=""Response""/>
</enum>
</prop>
<prop type="object" name="hiddenPropertyPaths">
<prop type="array<string>" name="hiddenPathsOnRequest">
<item type="string"/>
</prop>
<prop type="array<string>" name="hiddenPathsOnResponse">
<item type="string"/>
</prop>
</prop>
</item>
</prop>
<prop type="object" name="managedResourceGroupConfiguration">
<prop type="array<string>" name="applicationIds">
<item type="string"/>
</prop>
<prop type="object" name="denyAssignmentConfiguration">
<prop type="boolean" name="enabled"/>
<prop type="array<string>" name="notActions">
<item type="string"/>
</prop>
</prop>
<prop type="boolean" name="enabled"/>
<prop type="string" name="resourceGroupLocationOverride"/>
</prop>
<prop type="object" name="management">
<prop type="array<string>" name="authorizationOwners">
<item type="string"/>
</prop>
<prop type="array<string>" name="canaryManifestOwners">
<item type="string"/>
</prop>
<prop type="object" name="errorResponseMessageOptions">
<prop type="string" name="serverFailureResponseMessageType">
<enum>
<item value=""NotSpecified""/>
<item value=""OutageReporting""/>
</enum>
</prop>
</prop>
<prop type="object" name="expeditedRolloutMetadata">
<prop type="boolean" name="enabled"/>
<prop type="string" name="expeditedRolloutIntent">
<enum>
<item value=""Hotfix""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="expeditedRolloutSubmitters">
<item type="string"/>
</prop>
<prop type="string" name="incidentContactEmail"/>
<prop type="string" name="incidentRoutingService"/>
<prop type="string" name="incidentRoutingTeam"/>
<prop type="array<string>" name="manifestOwners">
<item type="string"/>
</prop>
<prop type="string" name="pcCode"/>
<prop type="string" name="profitCenterProgramId"/>
<prop type="string" name="resourceAccessPolicy">
<enum>
<item value=""AcisActionAllowed""/>
<item value=""AcisReadAllowed""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="array<@ResourceAccessRole_read>" name="resourceAccessRoles">
<item type="@ResourceAccessRole_read"/>
</prop>
<prop type="array<string>" name="schemaOwners">
<item type="string"/>
</prop>
<prop type="array<@ServiceTreeInfo_read>" name="serviceTreeInfos">
<item type="@ServiceTreeInfo_read"/>
</prop>
</prop>
<prop type="string" name="manifestLink"/>
<prop type="object" name="marketplaceOptions">
<prop type="boolean" name="addOnPlanConversionAllowed"/>
</prop>
<prop type="string" name="marketplaceType">
<enum>
<item value=""AddOn""/>
<item value=""Bypass""/>
<item value=""NotSpecified""/>
<item value=""ProviderHub""/>
<item value=""Store""/>
</enum>
</prop>
<prop type="object" name="metadata">
<additionalProp>
<item type="object">
<additionalProp anyType="True"/>
</item>
</additionalProp>
</prop>
<prop type="@Notifications_read" name="notifications"/>
<prop type="object" name="onBehalfOfTokens">
<prop type="string" name="actionName"/>
<prop type="string" name="lifeTime"/>
</prop>
<prop type="object" name="openApiConfiguration">
<prop type="object" name="validation">
<prop type="boolean" name="allowNoncompliantCollectionResponse"/>
</prop>
</prop>
<prop type="string" name="policyExecutionType">
<enum>
<item value=""BypassPolicies""/>
<item value=""ExecutePolicies""/>
<item value=""ExpectPartialPutRequests""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="privateEndpointConfiguration">
<prop type="array<object>" name="groupConnectivityInformation" required="True">
<item type="object">
<prop type="string" name="groupId" required="True"/>
<prop type="string" name="redirectMapId"/>
<prop type="array<string>" name="requiredMembers" required="True">
<item type="string"/>
</prop>
<prop type="array<string>" name="requiredZoneNames" required="True">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="string" name="minApiVersion" required="True"/>
</prop>
<prop readOnly="True" type="string" name="provisioningState">
<enum>
<item value=""Accepted""/>
<item value=""Canceled""/>
<item value=""Created""/>
<item value=""Creating""/>
<item value=""Deleted""/>
<item value=""Deleting""/>
<item value=""Failed""/>
<item value=""MovingResources""/>
<item value=""NotSpecified""/>
<item value=""RolloutInProgress""/>
<item value=""Running""/>
<item value=""Succeeded""/>
<item value=""TransientFailure""/>
</enum>
</prop>
<prop type="object" name="quotaRule">
<prop type="array<object>" name="locationRules">
<item type="object">
<prop type="string" name="location"/>
<prop type="string" name="policy">
<enum>
<item value=""Default""/>
<item value=""None""/>
<item value=""Restricted""/>
</enum>
</prop>
<prop type="string" name="quotaId"/>
</item>
</prop>
<prop type="string" name="quotaPolicy">
<enum>
<item value=""Default""/>
<item value=""None""/>
<item value=""Restricted""/>
</enum>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
</prop>
<prop type="string" name="regionality">
<enum>
<item value=""Global""/>
<item value=""NotSpecified""/>
<item value=""Regional""/>
</enum>
</prop>
<prop type="object" name="requestHeaderOptions">
<prop type="string" name="optInHeaders">
<enum>
<item value=""ClientGroupMembership""/>
<item value=""ClientPrincipalNameEncoded""/>
<item value=""MSIResourceIdEncoded""/>
<item value=""ManagementGroupAncestorsEncoded""/>
<item value=""NotSpecified""/>
<item value=""PrivateLinkId""/>
<item value=""PrivateLinkResourceId""/>
<item value=""PrivateLinkVnetTrafficTag""/>
<item value=""ResourceGroupLocation""/>
<item value=""SignedAuxiliaryTokens""/>
<item value=""SignedUserToken""/>
<item value=""UnboundedClientGroupMembership""/>
</enum>
</prop>
<prop type="string" name="optOutHeaders">
<enum>
<item value=""NotSpecified""/>
<item value=""SystemDataCreatedByLastModifiedBy""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
<prop type="object" name="resourceCache">
<prop type="boolean" name="enableResourceCache"/>
<prop type="string" name="resourceCacheExpirationTimespan"/>
</prop>
<prop type="object" name="resourceConcurrencyControlOptions">
<additionalProp>
<item type="object">
<prop type="string" name="policy">
<enum>
<item value=""NotSpecified""/>
<item value=""SynchronizeBeginExtension""/>
</enum>
</prop>
</item>
</additionalProp>
</prop>
<prop type="string" name="resourceDeletionPolicy">
<enum>
<item value=""CascadeDeleteAll""/>
<item value=""CascadeDeleteProxyOnlyChildren""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="resourceGraphConfiguration">
<prop type="string" name="apiVersion"/>
<prop type="boolean" name="enabled"/>
</prop>
<prop type="object" name="resourceManagementOptions">
<prop type="object" name="batchProvisioningSupport">
<prop type="array<object>" name="actionConfigurations">
<item type="object">
<prop type="string" name="authorizationAction"/>
<prop type="integer64" name="maxBatchSize"/>
</item>
</prop>
<prop type="string" name="batchContractVersion"/>
<prop type="integer64" name="maxBatchSize"/>
<prop type="integer64" name="maxNestedBatchSize"/>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
<prop type="string" name="supportedOperations">
<enum>
<item value=""Delete""/>
<item value=""Get""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="deleteDependencies" identifiers="requiredFeatures linkedProperty linkedType">
<item type="object">
<prop type="string" name="linkedProperty"/>
<prop type="string" name="linkedType"/>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="object" name="nestedProvisioningSupport">
<prop type="string" name="minimumApiVersion"/>
</prop>
</prop>
<prop type="object" name="resourceMovePolicy">
<prop type="boolean" name="crossResourceGroupMoveEnabled"/>
<prop type="boolean" name="crossSubscriptionMoveEnabled"/>
<prop type="boolean" name="validationRequired"/>
</prop>
<prop type="@ResourceProviderAuthorizationRules_read" name="resourceProviderAuthorizationRules"/>
<prop type="object" name="resourceQueryManagement">
<prop type="string" name="filterOption">
<enum>
<item value=""EnableSubscriptionFilterOnTenant""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="string" name="resourceSubType">
<enum>
<item value=""AsyncOperation""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="resourceTypeCommonAttributeManagement">
<prop type="string" name="commonApiVersionsMergeMode">
<enum>
<item value=""Merge""/>
<item value=""Overwrite""/>
</enum>
</prop>
</prop>
<prop type="string" name="resourceValidation">
<enum>
<item value=""NotSpecified""/>
<item value=""ProfaneWords""/>
<item value=""ReservedWords""/>
</enum>
</prop>
<prop type="object" name="routingRule">
<prop type="string" name="hostResourceType"/>
</prop>
<prop type="string" name="routingType">
<enum>
<item value=""CascadeExtension""/>
<item value=""Default""/>
<item value=""Extension""/>
<item value=""Failover""/>
<item value=""Fanout""/>
<item value=""HostBased""/>
<item value=""LocationBased""/>
<item value=""ProxyOnly""/>
<item value=""Tenant""/>
</enum>
</prop>
<prop type="array<@ServiceTreeInfo_read>" name="serviceTreeInfos">
<item type="@ServiceTreeInfo_read"/>
</prop>
<prop type="string" name="skuLink"/>
<prop type="object" name="subscriptionLifecycleNotificationSpecifications">
<prop type="duration" name="softDeleteTTL"/>
<prop type="array<@SubscriptionStateOverrideAction_read>" name="subscriptionStateOverrideActions">
<item type="@SubscriptionStateOverrideAction_read"/>
</prop>
</prop>
<prop type="array<object>" name="subscriptionStateRules">
<item type="object">
<prop type="array<string>" name="allowedActions">
<item type="string"/>
</prop>
<prop type="string" name="state">
<enum>
<item value=""Deleted""/>
<item value=""Disabled""/>
<item value=""Enabled""/>
<item value=""NotDefined""/>
<item value=""PastDue""/>
<item value=""Warned""/>
</enum>
</prop>
</item>
</prop>
<prop type="boolean" name="superScaleEnabled"/>
<prop type="boolean" name="supportsTags"/>
<prop type="array<object>" name="swaggerSpecifications" identifiers="swaggerSpecFolderUri">
<item type="object">
<prop type="array<string>" name="apiVersions">
<item type="string"/>
</prop>
<prop type="string" name="swaggerSpecFolderUri"/>
</item>
</prop>
<prop type="object" name="templateDeploymentOptions">
<prop type="array<string>" name="preflightOptions">
<item type="string">
<enum>
<item value=""ContinueDeploymentOnFailure""/>
<item value=""DefaultValidationOnly""/>
<item value=""None""/>
</enum>
</item>
</prop>
<prop type="boolean" name="preflightSupported"/>
</prop>
<prop type="object" name="templateDeploymentPolicy">
<prop type="string" name="capabilities" required="True">
<enum>
<item value=""Default""/>
<item value=""Preflight""/>
</enum>
</prop>
<prop type="string" name="preflightNotifications">
<enum>
<item value=""None""/>
<item value=""UnregisteredSubscriptions""/>
</enum>
</prop>
<prop type="string" name="preflightOptions" required="True">
<enum>
<item value=""DeploymentRequests""/>
<item value=""None""/>
<item value=""RegisteredOnly""/>
<item value=""TestOnly""/>
<item value=""ValidationRequests""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="throttlingRules">
<item type="object">
<prop type="string" name="action" required="True"/>
<prop type="array<string>" name="applicationId">
<item type="string"/>
</prop>
<prop type="array<object>" name="metrics" required="True">
<item type="object">
<prop type="string" name="bucketSize"/>
<prop type="duration" name="interval"/>
<prop type="integer64" name="limit" required="True"/>
<prop type="string" name="type" required="True">
<enum>
<item value=""NotSpecified""/>
<item value=""NumberOfRequests""/>
<item value=""NumberOfResources""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="@TokenAuthConfiguration_read" name="tokenAuthConfiguration"/>
<prop type="object" name="writeLock">
<prop type="string" name="state">
<default value=""Disabled""/>
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
</enum>
</prop>
</prop>
</prop>
<prop readOnly="True" type="@SystemData_read" name="systemData"/>
<prop readOnly="True" type="string" name="type"/>
</item>
</prop>
<prop type="string" name="rolloutId"/>
<prop type="boolean" name="skipReleaseScopeValidation"/>
</prop>
<prop type="object" name="status">
<prop type="array<string>" name="completedRegions">
<item type="string"/>
</prop>
<prop type="object" name="failedOrSkippedRegions">
<additionalProp>
<item type="object" cls="ExtendedErrorInfo_read">
<prop type="array<object>" name="additionalInfo" identifiers="type">
<item type="object">
<prop readOnly="True" type="object" name="info">
<additionalProp readOnly="True" anyType="True"/>
</prop>
<prop type="string" name="type" required="True"/>
</item>
</prop>
<prop type="string" name="code"/>
<prop type="array<@ExtendedErrorInfo_read>" name="details" identifiers="code">
<item type="@ExtendedErrorInfo_read"/>
</prop>
<prop type="string" name="message"/>
<prop type="string" name="target"/>
</item>
</additionalProp>
</prop>
<prop type="object" name="manifestCheckinStatus">
<prop type="string" name="commitId"/>
<prop type="boolean" name="isCheckedIn" required="True"/>
<prop type="string" name="pullRequest"/>
<prop type="string" name="statusMessage" required="True"/>
</prop>
</prop>
</prop>
<prop readOnly="True" type="@SystemData_read" name="systemData"/>
<prop readOnly="True" type="string" name="type"/>
</schema>
</json>
</body>
</response>
<response isError="True">
<body>
<json>
<schema type="@MgmtErrorFormat"/>
</json>
</body>
</response>
</http>
</operation>
<output type="object" ref="$Instance" clientFlatten="True"/>
</command>
<command name="update" version="2025-03-01-preview">
<resource id="/subscriptions/{}/providers/microsoft.providerhub/providerregistrations/{}/customrollouts/{}" version="2025-03-01-preview" swagger="mgmt-plane/providerhub/ResourceProviders/Microsoft.ProviderHub/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9wcm92aWRlcnMvTWljcm9zb2Z0LlByb3ZpZGVySHViL3Byb3ZpZGVyUmVnaXN0cmF0aW9ucy97cHJvdmlkZXJOYW1lc3BhY2V9L2N1c3RvbVJvbGxvdXRzL3tyb2xsb3V0TmFtZX0=/V/MjAyNS0wMy0wMS1wcmV2aWV3"/>
<argGroup name="">
<arg type="string" var="$Path.providerNamespace" options="provider-namespace" required="True" idPart="name">
<help short="The name of the resource provider hosted within ProviderHub."/>
</arg>
<arg type="string" var="$Path.rolloutName" options="rollout-name name n" required="True" idPart="child_name_1">
<help short="The rollout name."/>
<format pattern="^[-\w\._\(\)]+$" maxLength="260"/>
</arg>
<arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/>
</argGroup>
<argGroup name="Properties">
<arg type="object" var="$properties.properties.specification" options="specification" group="Properties">
<arg nullable="True" type="object" var="$properties.properties.specification.autoProvisionConfig" options="auto-provision-config">
<arg nullable="True" type="boolean" var="$properties.properties.specification.autoProvisionConfig.resourceGraph" options="resource-graph"/>
<arg nullable="True" type="boolean" var="$properties.properties.specification.autoProvisionConfig.storage" options="storage"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.canary" options="canary">
<arg nullable="True" type="array<string>" var="$properties.properties.specification.canary.regions" options="regions">
<item nullable="True" type="string"/>
</arg>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.manifestCheckinSpecification" options="manifest-checkin-specification">
<arg nullable="True" type="string" var="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinOption" options="manifest-checkin-option">
<enum>
<item name="AttemptAutomaticManifestCheckin" value=""AttemptAutomaticManifestCheckin""/>
<item name="DoNotAttemptAutomaticManifestCheckin" value=""DoNotAttemptAutomaticManifestCheckin""/>
</enum>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinParams" options="manifest-checkin-params">
<arg type="string" var="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinParams.baselineArmManifestLocation" options="baseline-arm-manifest-location">
<help short="The baseline ARM manifest location supplied to the checkin manifest operation."/>
</arg>
<arg type="string" var="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinParams.environment" options="environment">
<help short="The environment supplied to the checkin manifest operation."/>
</arg>
</arg>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration" options="provider-registration">
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.kind" options="kind">
<help short="Provider registration kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type."/>
<enum>
<item name="Direct" value=""Direct""/>
<item name="Hybrid" value=""Hybrid""/>
<item name="Managed" value=""Managed""/>
</enum>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.providerRegistration.properties.capabilities" options="capabilities" group="Properties">
<item nullable="True" type="object">
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.capabilities[].effect" options="effect">
<enum>
<item name="Allow" value=""Allow""/>
<item name="Disallow" value=""Disallow""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.capabilities[].quotaId" options="quota-id"/>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.providerRegistration.properties.capabilities[].requiredFeatures" options="required-features">
<item nullable="True" type="string"/>
</arg>
</item>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.crossTenantTokenValidation" options="cross-tenant-token-validation" group="Properties">
<enum>
<item name="EnsureSecureValidation" value=""EnsureSecureValidation""/>
<item name="PassthroughInsecureToken" value=""PassthroughInsecureToken""/>
</enum>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.customManifestVersion" options="custom-manifest-version" group="Properties">
<help short="Custom manifest version."/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.dstsConfiguration" options="dsts-configuration" group="Properties">
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.dstsConfiguration.serviceDnsName" options="service-dns-name"/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.dstsConfiguration.serviceName" options="service-name"/>
</arg>
<arg nullable="True" type="boolean" var="$properties.properties.specification.providerRegistration.properties.enablePresetResourceTypes" options="enable-preset-resource-types" group="Properties">
<help short="Preset resource types enabled?"/>
</arg>
<arg nullable="True" type="boolean" var="$properties.properties.specification.providerRegistration.properties.enableTenantLinkedNotification" options="enable-tenant-linked-notification" group="Properties"/>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.featuresRule" options="features-rule" group="Properties">
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.featuresRule.requiredFeaturesPolicy" options="required-features-policy">
<enum>
<item name="All" value=""All""/>
<item name="Any" value=""Any""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.providerRegistration.properties.globalNotificationEndpoints" options="global-notification-endpoints" group="Properties">
<item nullable="True" type="object" cls="ResourceProviderEndpoint_update">
<arg nullable="True" type="array<string>" var="@ResourceProviderEndpoint_update.apiVersions" options="api-versions">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="boolean" var="@ResourceProviderEndpoint_update.enabled" options="enabled"/>
<arg nullable="True" type="string" var="@ResourceProviderEndpoint_update.endpointType" options="endpoint-type">
<enum>
<item name="Canary" value=""Canary""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="Production" value=""Production""/>
<item name="TestInProduction" value=""TestInProduction""/>
</enum>
</arg>
<arg nullable="True" type="string" var="@ResourceProviderEndpoint_update.endpointUri" options="endpoint-uri"/>
<arg nullable="True" type="object" var="@ResourceProviderEndpoint_update.featuresRule" options="features-rule">
<arg type="string" var="@ResourceProviderEndpoint_update.featuresRule.requiredFeaturesPolicy" options="required-features-policy">
<enum>
<item name="All" value=""All""/>
<item name="Any" value=""Any""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="array<string>" var="@ResourceProviderEndpoint_update.locations" options="locations">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<string>" var="@ResourceProviderEndpoint_update.requiredFeatures" options="required-features">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="string" var="@ResourceProviderEndpoint_update.skuLink" options="sku-link"/>
<arg nullable="True" type="duration" var="@ResourceProviderEndpoint_update.timeout" options="timeout"/>
</item>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.legacyNamespace" options="legacy-namespace" group="Properties">
<help short="Legacy namespace."/>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.providerRegistration.properties.legacyRegistrations" options="legacy-registrations" group="Properties">
<help short="Legacy registrations."/>
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules" options="linked-notification-rules" group="Properties">
<item nullable="True" type="object">
<arg nullable="True" type="array<string>" var="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].actions" options="actions">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].dstsConfiguration" options="dsts-configuration">
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].dstsConfiguration.serviceDnsName" options="service-dns-name"/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].dstsConfiguration.serviceName" options="service-name"/>
</arg>
<arg nullable="True" type="array<@ResourceProviderEndpoint_update>" var="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].endpoints" options="endpoints">
<item nullable="True" type="@ResourceProviderEndpoint_update"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].tokenAuthConfiguration" options="token-auth-configuration" cls="TokenAuthConfiguration_update">
<arg nullable="True" type="string" var="@TokenAuthConfiguration_update.authenticationScheme" options="authentication-scheme">
<enum>
<item name="Bearer" value=""Bearer""/>
<item name="PoP" value=""PoP""/>
</enum>
</arg>
<arg nullable="True" type="boolean" var="@TokenAuthConfiguration_update.disableCertificateAuthenticationFallback" options="disable-certificate-authentication-fallback"/>
<arg nullable="True" type="string" var="@TokenAuthConfiguration_update.signedRequestScope" options="signed-request-scope">
<enum>
<item name="Endpoint" value=""Endpoint""/>
<item name="ResourceUri" value=""ResourceUri""/>
</enum>
</arg>
</arg>
</item>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.management" options="management" group="Properties">
<arg nullable="True" type="array<string>" var="$properties.properties.specification.providerRegistration.properties.management.authorizationOwners" options="authorization-owners">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.providerRegistration.properties.management.canaryManifestOwners" options="canary-manifest-owners">
<help short="List of manifest owners for canary."/>
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.management.errorResponseMessageOptions" options="error-response-message-options">
<help short="Options for error response messages."/>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.management.errorResponseMessageOptions.serverFailureResponseMessageType" options="server-failure-response-message-type">
<help short="Type of server failure response message."/>
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="OutageReporting" value=""OutageReporting""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutMetadata" options="expedited-rollout-metadata">
<help short="Metadata for expedited rollout."/>
<arg nullable="True" type="boolean" var="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutMetadata.enabled" options="enabled">
<help short="Expedited rollout enabled?"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutMetadata.expeditedRolloutIntent" options="expedited-rollout-intent">
<help short="Expedited rollout intent."/>
<enum>
<item name="Hotfix" value=""Hotfix""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutSubmitters" options="expedited-rollout-submitters">
<help short="List of expedited rollout submitters."/>
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.management.incidentContactEmail" options="incident-contact-email"/>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.management.incidentRoutingService" options="incident-routing-service"/>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.management.incidentRoutingTeam" options="incident-routing-team"/>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.providerRegistration.properties.management.manifestOwners" options="manifest-owners">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.management.pcCode" options="pc-code">
<help short="The profit center code for the subscription."/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.management.profitCenterProgramId" options="profit-center-program-id">
<help short="The profit center program id for the subscription."/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.management.resourceAccessPolicy" options="resource-access-policy">
<enum>
<item name="AcisActionAllowed" value=""AcisActionAllowed""/>
<item name="AcisReadAllowed" value=""AcisReadAllowed""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.providerRegistration.properties.management.resourceAccessRoles" options="resource-access-roles">
<item nullable="True" type="object" cls="ResourceAccessRole_update">
<arg nullable="True" type="array<string>" var="@ResourceAccessRole_update.actions" options="actions">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<string>" var="@ResourceAccessRole_update.allowedGroupClaims" options="allowed-group-claims">
<item nullable="True" type="string"/>
</arg>
</item>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.providerRegistration.properties.management.schemaOwners" options="schema-owners">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.providerRegistration.properties.management.serviceTreeInfos" options="service-tree-infos">
<item nullable="True" type="object" cls="ServiceTreeInfo_update">
<arg nullable="True" type="string" var="@ServiceTreeInfo_update.componentId" options="component-id"/>
<arg nullable="True" type="string" var="@ServiceTreeInfo_update.readiness" options="readiness">
<enum>
<item name="ClosingDown" value=""ClosingDown""/>
<item name="Deprecated" value=""Deprecated""/>
<item name="GA" value=""GA""/>
<item name="InDevelopment" value=""InDevelopment""/>
<item name="InternalOnly" value=""InternalOnly""/>
<item name="PrivatePreview" value=""PrivatePreview""/>
<item name="PublicPreview" value=""PublicPreview""/>
<item name="RemovedFromARM" value=""RemovedFromARM""/>
<item name="Retired" value=""Retired""/>
</enum>
</arg>
<arg nullable="True" type="string" var="@ServiceTreeInfo_update.serviceId" options="service-id"/>
</item>
</arg>
</arg>
<arg nullable="True" type="array<@ResourceProviderEndpoint_update>" var="$properties.properties.specification.providerRegistration.properties.managementGroupGlobalNotificationEndpoints" options="management-group-global-notification-endpoints" group="Properties">
<help short="Management groups global notification endpoints."/>
<item nullable="True" type="@ResourceProviderEndpoint_update"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.metadata" options="metadata" group="Properties">
<additionalProp anyType="True"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.namespace" options="namespace" group="Properties"/>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.notificationOptions" options="notification-options" group="Properties">
<help short="Notification options."/>
<enum>
<item name="EmitSpendingLimit" value=""EmitSpendingLimit""/>
<item name="None" value=""None""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.notificationSettings" options="notification-settings" group="Properties">
<help short="Notification settings."/>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings" options="subscriber-settings">
<item nullable="True" type="object">
<arg nullable="True" type="array<object>" var="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules" options="filter-rules">
<item nullable="True" type="object">
<arg nullable="True" type="array<object>" var="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation" options="endpoint-information">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation[].endpoint" options="endpoint"/>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation[].endpointType" options="endpoint-type">
<enum>
<item name="Eventhub" value=""Eventhub""/>
<item name="Webhook" value=""Webhook""/>
</enum>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation[].schemaVersion" options="schema-version"/>
</item>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].filterQuery" options="filter-query"/>
</item>
</arg>
</item>
</arg>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.providerRegistration.properties.notifications" options="notifications" group="Properties" cls="Notifications_update">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="@Notifications_update[].notificationType" options="notification-type">
<enum>
<item name="SubscriptionNotification" value=""SubscriptionNotification""/>
<item name="Unspecified" value=""Unspecified""/>
</enum>
</arg>
<arg nullable="True" type="string" var="@Notifications_update[].skipNotifications" options="skip-notifications">
<enum>
<item name="Disabled" value=""Disabled""/>
<item name="Enabled" value=""Enabled""/>
<item name="Unspecified" value=""Unspecified""/>
</enum>
</arg>
</item>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.oboSubscriptionId" options="obo-subscription-id" group="Properties">
<help short="The on behalf of subscription id for the resource provider."/>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.providerRegistration.properties.optionalFeatures" options="optional-features" group="Properties">
<help short="Optional features."/>
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.privateResourceProviderConfiguration" options="private-resource-provider-configuration" group="Properties">
<arg nullable="True" type="array<string>" var="$properties.properties.specification.providerRegistration.properties.privateResourceProviderConfiguration.allowedSubscriptions" options="allowed-subscriptions">
<item nullable="True" type="string"/>
</arg>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.providerAuthentication" options="provider-authentication" group="Properties">
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.providerAuthentication.allowedAudiences" options="allowed-audiences">
<item nullable="True" type="string"/>
</arg>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.providerRegistration.properties.providerAuthorizations" options="provider-authorizations" group="Properties">
<item nullable="True" type="object" cls="ResourceProviderAuthorization_update">
<arg nullable="True" type="array<object>" var="@ResourceProviderAuthorization_update.allowedThirdPartyExtensions" options="allowed-third-party-extensions">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="@ResourceProviderAuthorization_update.allowedThirdPartyExtensions[].name" options="name">
<help short="Name of third party extension."/>
</arg>
</item>
</arg>
<arg nullable="True" type="string" var="@ResourceProviderAuthorization_update.applicationId" options="application-id"/>
<arg nullable="True" type="string" var="@ResourceProviderAuthorization_update.groupingTag" options="grouping-tag"/>
<arg nullable="True" type="object" var="@ResourceProviderAuthorization_update.managedByAuthorization" options="managed-by-authorization">
<help short="Managed by authorization."/>
<arg nullable="True" type="array<object>" var="@ResourceProviderAuthorization_update.managedByAuthorization.additionalAuthorizations" options="additional-authorizations">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="@ResourceProviderAuthorization_update.managedByAuthorization.additionalAuthorizations[].applicationId" options="application-id"/>
<arg nullable="True" type="string" var="@ResourceProviderAuthorization_update.managedByAuthorization.additionalAuthorizations[].roleDefinitionId" options="role-definition-id"/>
</item>
</arg>
<arg nullable="True" type="boolean" var="@ResourceProviderAuthorization_update.managedByAuthorization.allowManagedByInheritance" options="allow-managed-by-inheritance">
<help short="Indicates whether the managed by resource role definition ID should be inherited."/>
</arg>
<arg nullable="True" type="string" var="@ResourceProviderAuthorization_update.managedByAuthorization.managedByResourceRoleDefinitionId" options="managed-by-resource-role-definition-id">
<help short="The managed by resource role definition ID for the application."/>
</arg>
</arg>
<arg nullable="True" type="string" var="@ResourceProviderAuthorization_update.managedByRoleDefinitionId" options="managed-by-role-definition-id"/>
<arg nullable="True" type="string" var="@ResourceProviderAuthorization_update.roleDefinitionId" options="role-definition-id"/>
</item>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata" options="provider-hub-metadata" group="Properties">
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.directRpRoleDefinitionId" options="direct-rp-role-definition-id"/>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.globalAsyncOperationResourceTypeName" options="global-async-operation-resource-type-name"/>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.providerAuthentication" options="provider-authentication">
<arg type="array<string>" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.providerAuthentication.allowedAudiences" options="allowed-audiences">
<item nullable="True" type="string"/>
</arg>
</arg>
<arg nullable="True" type="array<@ResourceProviderAuthorization_update>" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.providerAuthorizations" options="provider-authorizations">
<item nullable="True" type="@ResourceProviderAuthorization_update"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.regionalAsyncOperationResourceTypeName" options="regional-async-operation-resource-type-name"/>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization" options="third-party-provider-authorization">
<arg nullable="True" type="array<object>" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.authorizations" options="authorizations">
<item nullable="True" type="object">
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.authorizations[].principalId" options="principal-id"/>
<arg type="string" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.authorizations[].roleDefinitionId" options="role-definition-id"/>
</item>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.managedByTenantId" options="managed-by-tenant-id"/>
</arg>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.providerType" options="provider-type" group="Properties">
<enum>
<item name="AuthorizationFree" value=""AuthorizationFree""/>
<item name="Decommissioned" value=""Decommissioned""/>
<item name="External" value=""External""/>
<item name="Hidden" value=""Hidden""/>
<item name="Internal" value=""Internal""/>
<item name="LegacyRegistrationRequired" value=""LegacyRegistrationRequired""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="RegistrationFree" value=""RegistrationFree""/>
<item name="TenantOnly" value=""TenantOnly""/>
</enum>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.providerVersion" options="provider-version" group="Properties"/>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.requestHeaderOptions" options="request-header-options" group="Properties">
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.requestHeaderOptions.optInHeaders" options="opt-in-headers">
<enum>
<item name="ClientGroupMembership" value=""ClientGroupMembership""/>
<item name="ClientPrincipalNameEncoded" value=""ClientPrincipalNameEncoded""/>
<item name="MSIResourceIdEncoded" value=""MSIResourceIdEncoded""/>
<item name="ManagementGroupAncestorsEncoded" value=""ManagementGroupAncestorsEncoded""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="PrivateLinkId" value=""PrivateLinkId""/>
<item name="PrivateLinkResourceId" value=""PrivateLinkResourceId""/>
<item name="PrivateLinkVnetTrafficTag" value=""PrivateLinkVnetTrafficTag""/>
<item name="ResourceGroupLocation" value=""ResourceGroupLocation""/>
<item name="SignedAuxiliaryTokens" value=""SignedAuxiliaryTokens""/>
<item name="SignedUserToken" value=""SignedUserToken""/>
<item name="UnboundedClientGroupMembership" value=""UnboundedClientGroupMembership""/>
</enum>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.requestHeaderOptions.optOutHeaders" options="opt-out-headers">
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="SystemDataCreatedByLastModifiedBy" value=""SystemDataCreatedByLastModifiedBy""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.providerRegistration.properties.requiredFeatures" options="required-features" group="Properties">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.resourceGroupLockOptionDuringMove" options="resource-group-lock-option-during-move" group="Properties">
<help short="Resource group lock option during move."/>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.resourceGroupLockOptionDuringMove.blockActionVerb" options="block-action-verb">
<help short="The action verb that will be blocked when the resource group is locked during move."/>
<enum>
<item name="Action" value=""Action""/>
<item name="Delete" value=""Delete""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="Read" value=""Read""/>
<item name="Unrecognized" value=""Unrecognized""/>
<item name="Write" value=""Write""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts" options="resource-hydration-accounts" group="Properties">
<help short="resource hydration accounts"/>
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].accountName" options="account-name"/>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].encryptedKey" options="encrypted-key"/>
<arg nullable="True" type="integer64" var="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].maxChildResourceConsistencyJobLimit" options="max-child-resource-consistency-job-limit"/>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].subscriptionId" options="subscription-id"/>
</item>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.resourceProviderAuthorizationRules" options="resource-provider-authorization-rules" group="Properties" cls="ResourceProviderAuthorizationRules_update">
<arg nullable="True" type="object" var="@ResourceProviderAuthorizationRules_update.asyncOperationPollingRules" options="async-operation-polling-rules">
<arg nullable="True" type="string" var="@ResourceProviderAuthorizationRules_update.asyncOperationPollingRules.additionalOptions" options="additional-options">
<enum>
<item name="ProtectedAsyncOperationPolling" value=""ProtectedAsyncOperationPolling""/>
<item name="ProtectedAsyncOperationPollingAuditOnly" value=""ProtectedAsyncOperationPollingAuditOnly""/>
</enum>
</arg>
<arg nullable="True" type="array<string>" var="@ResourceProviderAuthorizationRules_update.asyncOperationPollingRules.authorizationActions" options="authorization-actions">
<item nullable="True" type="string"/>
</arg>
</arg>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.responseOptions" options="response-options" group="Properties">
<help short="Response options."/>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.responseOptions.serviceClientOptionsType" options="service-client-options-type">
<enum>
<item name="DisableAutomaticDecompression" value=""DisableAutomaticDecompression""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.serviceName" options="service-name" group="Properties"/>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.providerRegistration.properties.services" options="services" group="Properties">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.services[].serviceName" options="service-name"/>
<arg nullable="True" type="string" var="$properties.properties.specification.providerRegistration.properties.services[].status" options="status">
<enum>
<item name="Active" value=""Active""/>
<item name="Inactive" value=""Inactive""/>
</enum>
</arg>
</item>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.subscriptionLifecycleNotificationSpecifications" options="subscription-lifecycle-notification-specifications" group="Properties">
<arg nullable="True" type="duration" var="$properties.properties.specification.providerRegistration.properties.subscriptionLifecycleNotificationSpecifications.softDeleteTTL" options="soft-delete-ttl"/>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.providerRegistration.properties.subscriptionLifecycleNotificationSpecifications.subscriptionStateOverrideActions" options="subscription-state-override-actions">
<item nullable="True" type="object" cls="SubscriptionStateOverrideAction_update">
<arg type="string" var="@SubscriptionStateOverrideAction_update.action" options="action">
<enum>
<item name="BillingCancellation" value=""BillingCancellation""/>
<item name="DeleteAllResources" value=""DeleteAllResources""/>
<item name="NoOp" value=""NoOp""/>
<item name="NotDefined" value=""NotDefined""/>
<item name="SoftDeleteAllResources" value=""SoftDeleteAllResources""/>
<item name="UndoSoftDelete" value=""UndoSoftDelete""/>
</enum>
</arg>
<arg type="string" var="@SubscriptionStateOverrideAction_update.state" options="state">
<enum>
<item name="Deleted" value=""Deleted""/>
<item name="Registered" value=""Registered""/>
<item name="Suspended" value=""Suspended""/>
<item name="SuspendedToDeleted" value=""SuspendedToDeleted""/>
<item name="SuspendedToRegistered" value=""SuspendedToRegistered""/>
<item name="SuspendedToUnregistered" value=""SuspendedToUnregistered""/>
<item name="SuspendedToWarned" value=""SuspendedToWarned""/>
<item name="Unregistered" value=""Unregistered""/>
<item name="Warned" value=""Warned""/>
<item name="WarnedToDeleted" value=""WarnedToDeleted""/>
<item name="WarnedToRegistered" value=""WarnedToRegistered""/>
<item name="WarnedToSuspended" value=""WarnedToSuspended""/>
<item name="WarnedToUnregistered" value=""WarnedToUnregistered""/>
</enum>
</arg>
</item>
</arg>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.providerRegistration.properties.templateDeploymentOptions" options="template-deployment-options" group="Properties">
<arg nullable="True" type="array<string>" var="$properties.properties.specification.providerRegistration.properties.templateDeploymentOptions.preflightOptions" options="preflight-options">
<item nullable="True" type="string">
<enum>
<item name="ContinueDeploymentOnFailure" value=""ContinueDeploymentOnFailure""/>
<item name="DefaultValidationOnly" value=""DefaultValidationOnly""/>
<item name="None" value=""None""/>
</enum>
</item>
</arg>
<arg nullable="True" type="boolean" var="$properties.properties.specification.providerRegistration.properties.templateDeploymentOptions.preflightSupported" options="preflight-supported"/>
</arg>
<arg nullable="True" type="@TokenAuthConfiguration_update" var="$properties.properties.specification.providerRegistration.properties.tokenAuthConfiguration" options="token-auth-configuration" group="Properties"/>
</arg>
<arg nullable="True" type="boolean" var="$properties.properties.specification.refreshSubscriptionRegistration" options="refresh-subscription-registration"/>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.releaseScopes" options="release-scopes">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations" options="resource-type-registrations">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].kind" options="kind">
<help short="Resource type registration kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type."/>
<enum>
<item name="Direct" value=""Direct""/>
<item name="Hybrid" value=""Hybrid""/>
<item name="Managed" value=""Managed""/>
</enum>
</arg>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.addResourceListTargetLocations" options="add-resource-list-target-locations" group="Properties">
<help short="Add resource list target locations?"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.additionalOptions" options="additional-options" group="Properties">
<enum>
<item name="ProtectedAsyncOperationPolling" value=""ProtectedAsyncOperationPolling""/>
<item name="ProtectedAsyncOperationPollingAuditOnly" value=""ProtectedAsyncOperationPollingAuditOnly""/>
</enum>
</arg>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowEmptyRoleAssignments" options="allow-empty-role-assignments" group="Properties"/>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedResourceNames" options="allowed-resource-names" group="Properties">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedResourceNames[].getActionVerb" options="get-action-verb">
<help short="Get action verb."/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedResourceNames[].name" options="name">
<help short="Resource name."/>
</arg>
</item>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedTemplateDeploymentReferenceActions" options="allowed-template-deployment-reference-actions" group="Properties">
<help short="Allowed template deployment reference actions."/>
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActions" options="allowed-unauthorized-actions" group="Properties">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActionsExtensions" options="allowed-unauthorized-actions-extensions" group="Properties">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActionsExtensions[].action" options="action"/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActionsExtensions[].intent" options="intent">
<enum>
<item name="DEFERRED_ACCESS_CHECK" value=""DEFERRED_ACCESS_CHECK""/>
<item name="LOW_PRIVILEGE" value=""LOW_PRIVILEGE""/>
<item name="NOT_SPECIFIED" value=""NOT_SPECIFIED""/>
<item name="RP_CONTRACT" value=""RP_CONTRACT""/>
</enum>
</arg>
</item>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.apiProfiles" options="api-profiles" group="Properties">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.apiProfiles[].apiVersion" options="api-version">
<help short="Api version."/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.apiProfiles[].profileVersion" options="profile-version">
<help short="Profile version."/>
</arg>
</item>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncOperationResourceTypeName" options="async-operation-resource-type-name" group="Properties"/>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncTimeoutRules" options="async-timeout-rules" group="Properties">
<help short="Async timeout rules"/>
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncTimeoutRules[].actionName" options="action-name"/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncTimeoutRules[].timeout" options="timeout"/>
</item>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.authorizationActionMappings" options="authorization-action-mappings" group="Properties">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.authorizationActionMappings[].desired" options="desired"/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.authorizationActionMappings[].original" options="original"/>
</item>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.availabilityZoneRule" options="availability-zone-rule" group="Properties">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.availabilityZoneRule.availabilityZonePolicy" options="availability-zone-policy">
<enum>
<item name="MultiZoned" value=""MultiZoned""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="SingleZoned" value=""SingleZoned""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.capacityRule" options="capacity-rule" group="Properties">
<help short="Capacity rule."/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.capacityRule.capacityPolicy" options="capacity-policy">
<help short="Capacity policy."/>
<enum>
<item name="Default" value=""Default""/>
<item name="Restricted" value=""Restricted""/>
</enum>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.capacityRule.skuAlias" options="sku-alias">
<help short="Sku alias"/>
</arg>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.category" options="category" group="Properties">
<enum>
<item name="FreeForm" value=""FreeForm""/>
<item name="Internal" value=""Internal""/>
<item name="None" value=""None""/>
<item name="PureProxy" value=""PureProxy""/>
</enum>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.checkNameAvailabilitySpecifications" options="check-name-availability-specifications" group="Properties">
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.checkNameAvailabilitySpecifications.enableDefaultValidation" options="enable-default-validation"/>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.checkNameAvailabilitySpecifications.resourceTypesWithCustomValidation" options="resource-types-with-custom-validation">
<item nullable="True" type="string"/>
</arg>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.commonApiVersions" options="common-api-versions" group="Properties">
<help short="Common API versions for the resource type."/>
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.crossTenantTokenValidation" options="cross-tenant-token-validation" group="Properties">
<enum>
<item name="EnsureSecureValidation" value=""EnsureSecureValidation""/>
<item name="PassthroughInsecureToken" value=""PassthroughInsecureToken""/>
</enum>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.defaultApiVersion" options="default-api-version" group="Properties"/>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.disallowedActionVerbs" options="disallowed-action-verbs" group="Properties">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.disallowedEndUserOperations" options="disallowed-end-user-operations" group="Properties">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.dstsConfiguration" options="dsts-configuration" group="Properties">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.dstsConfiguration.serviceDnsName" options="service-dns-name"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.dstsConfiguration.serviceName" options="service-name"/>
</arg>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.enableAsyncOperation" options="enable-async-operation" group="Properties"/>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.enableThirdPartyS2S" options="enable-third-party-s2-s" group="Properties"/>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints" options="endpoints" group="Properties">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].apiVersion" options="api-version">
<help short="Api version."/>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].apiVersions" options="api-versions">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dataBoundary" options="data-boundary">
<enum>
<item name="EU" value=""EU""/>
<item name="Global" value=""Global""/>
<item name="NotDefined" value=""NotDefined""/>
<item name="US" value=""US""/>
</enum>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dstsConfiguration" options="dsts-configuration">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dstsConfiguration.serviceDnsName" options="service-dns-name"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dstsConfiguration.serviceName" options="service-name"/>
</arg>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].enabled" options="enabled"/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].endpointType" options="endpoint-type">
<enum>
<item name="Canary" value=""Canary""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="Production" value=""Production""/>
<item name="TestInProduction" value=""TestInProduction""/>
</enum>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].endpointUri" options="endpoint-uri"/>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions" options="extensions">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions[].endpointUri" options="endpoint-uri"/>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions[].extensionCategories" options="extension-categories">
<item nullable="True" type="string">
<enum>
<item name="BestMatchOperationBegin" value=""BestMatchOperationBegin""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="ResourceCreationBegin" value=""ResourceCreationBegin""/>
<item name="ResourceCreationCompleted" value=""ResourceCreationCompleted""/>
<item name="ResourceCreationValidate" value=""ResourceCreationValidate""/>
<item name="ResourceDeletionBegin" value=""ResourceDeletionBegin""/>
<item name="ResourceDeletionCompleted" value=""ResourceDeletionCompleted""/>
<item name="ResourceDeletionValidate" value=""ResourceDeletionValidate""/>
<item name="ResourceMoveBegin" value=""ResourceMoveBegin""/>
<item name="ResourceMoveCompleted" value=""ResourceMoveCompleted""/>
<item name="ResourcePatchBegin" value=""ResourcePatchBegin""/>
<item name="ResourcePatchCompleted" value=""ResourcePatchCompleted""/>
<item name="ResourcePatchValidate" value=""ResourcePatchValidate""/>
<item name="ResourcePostAction" value=""ResourcePostAction""/>
<item name="ResourceReadBegin" value=""ResourceReadBegin""/>
<item name="ResourceReadValidate" value=""ResourceReadValidate""/>
<item name="SubscriptionLifecycleNotification" value=""SubscriptionLifecycleNotification""/>
<item name="SubscriptionLifecycleNotificationDeletion" value=""SubscriptionLifecycleNotificationDeletion""/>
</enum>
</item>
</arg>
<arg nullable="True" type="duration" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions[].timeout" options="timeout"/>
</item>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].featuresRule" options="features-rule">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].featuresRule.requiredFeaturesPolicy" options="required-features-policy">
<enum>
<item name="All" value=""All""/>
<item name="Any" value=""Any""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].kind" options="kind">
<help short="Resource type endpoint kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type."/>
<enum>
<item name="Direct" value=""Direct""/>
<item name="Managed" value=""Managed""/>
</enum>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].locations" options="locations">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].requiredFeatures" options="required-features">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].skuLink" options="sku-link"/>
<arg nullable="True" type="duration" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].timeout" options="timeout"/>
<arg nullable="True" type="@TokenAuthConfiguration_update" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].tokenAuthConfiguration" options="token-auth-configuration"/>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].zones" options="zones">
<help short="List of zones."/>
<item nullable="True" type="string"/>
</arg>
</item>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.extendedLocations" options="extended-locations" group="Properties">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.extendedLocations[].supportedPolicy" options="supported-policy"/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.extendedLocations[].type" options="type"/>
</item>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions" options="extension-options" group="Properties">
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions.resourceCreationBegin" options="resource-creation-begin">
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions.resourceCreationBegin.request" options="request">
<item nullable="True" type="string">
<enum>
<item name="DoNotMergeExistingReadOnlyAndSecretProperties" value=""DoNotMergeExistingReadOnlyAndSecretProperties""/>
<item name="IncludeInternalMetadata" value=""IncludeInternalMetadata""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</item>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions.resourceCreationBegin.response" options="response">
<item nullable="True" type="string">
<enum>
<item name="DoNotMergeExistingReadOnlyAndSecretProperties" value=""DoNotMergeExistingReadOnlyAndSecretProperties""/>
<item name="IncludeInternalMetadata" value=""IncludeInternalMetadata""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</item>
</arg>
</arg>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.featuresRule" options="features-rule" group="Properties">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.featuresRule.requiredFeaturesPolicy" options="required-features-policy">
<enum>
<item name="All" value=""All""/>
<item name="Any" value=""Any""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.frontdoorRequestMode" options="frontdoor-request-mode" group="Properties">
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="UseManifest" value=""UseManifest""/>
</enum>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.groupingTag" options="grouping-tag" group="Properties">
<help short="Grouping tag."/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement" options="identity-management" group="Properties">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.applicationId" options="application-id"/>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.applicationIds" options="application-ids">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.delegationAppIds" options="delegation-app-ids">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.type" options="type">
<enum>
<item name="Actor" value=""Actor""/>
<item name="DelegatedResourceIdentity" value=""DelegatedResourceIdentity""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="SystemAssigned" value=""SystemAssigned""/>
<item name="UserAssigned" value=""UserAssigned""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.isPureProxy" options="is-pure-proxy" group="Properties"/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyName" options="legacy-name" group="Properties"/>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyNames" options="legacy-names" group="Properties">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy" options="legacy-policy" group="Properties">
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedConditions" options="disallowed-conditions">
<item nullable="True" type="object">
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedConditions[].disallowedLegacyOperations" options="disallowed-legacy-operations">
<item nullable="True" type="string">
<enum>
<item name="Action" value=""Action""/>
<item name="AzureAsyncOperationWaiting" value=""AzureAsyncOperationWaiting""/>
<item name="Create" value=""Create""/>
<item name="Delete" value=""Delete""/>
<item name="DeploymentCleanup" value=""DeploymentCleanup""/>
<item name="EvaluateDeploymentOutput" value=""EvaluateDeploymentOutput""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="Read" value=""Read""/>
<item name="ResourceCacheWaiting" value=""ResourceCacheWaiting""/>
<item name="Waiting" value=""Waiting""/>
</enum>
</item>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedConditions[].feature" options="feature">
<help short="Feature string."/>
</arg>
</item>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedLegacyOperations" options="disallowed-legacy-operations">
<item nullable="True" type="string">
<enum>
<item name="Action" value=""Action""/>
<item name="AzureAsyncOperationWaiting" value=""AzureAsyncOperationWaiting""/>
<item name="Create" value=""Create""/>
<item name="Delete" value=""Delete""/>
<item name="DeploymentCleanup" value=""DeploymentCleanup""/>
<item name="EvaluateDeploymentOutput" value=""EvaluateDeploymentOutput""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="Read" value=""Read""/>
<item name="ResourceCacheWaiting" value=""ResourceCacheWaiting""/>
<item name="Waiting" value=""Waiting""/>
</enum>
</item>
</arg>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks" options="linked-access-checks" group="Properties">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].actionName" options="action-name"/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedAction" options="linked-action"/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedActionVerb" options="linked-action-verb"/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedProperty" options="linked-property"/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedType" options="linked-type"/>
</item>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules" options="linked-notification-rules" group="Properties">
<item nullable="True" type="object">
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].actions" options="actions">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].actionsOnFailedOperation" options="actions-on-failed-operation">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].fastPathActions" options="fast-path-actions">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].fastPathActionsOnFailedOperation" options="fast-path-actions-on-failed-operation">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="duration" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].linkedNotificationTimeout" options="linked-notification-timeout"/>
</item>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules" options="linked-operation-rules" group="Properties">
<item nullable="True" type="object">
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules[].dependsOnTypes" options="depends-on-types">
<help short="Depends on types."/>
<item nullable="True" type="string"/>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules[].linkedAction" options="linked-action">
<enum>
<item name="Blocked" value=""Blocked""/>
<item name="Enabled" value=""Enabled""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="Validate" value=""Validate""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules[].linkedOperation" options="linked-operation">
<enum>
<item name="CrossResourceGroupResourceMove" value=""CrossResourceGroupResourceMove""/>
<item name="CrossSubscriptionResourceMove" value=""CrossSubscriptionResourceMove""/>
<item name="None" value=""None""/>
</enum>
</arg>
</item>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules" options="logging-rules" group="Properties">
<item nullable="True" type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].action" options="action"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].detailLevel" options="detail-level">
<enum>
<item name="Body" value=""Body""/>
<item name="None" value=""None""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].direction" options="direction">
<enum>
<item name="None" value=""None""/>
<item name="Request" value=""Request""/>
<item name="Response" value=""Response""/>
</enum>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].hiddenPropertyPaths" options="hidden-property-paths">
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].hiddenPropertyPaths.hiddenPathsOnRequest" options="hidden-paths-on-request">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].hiddenPropertyPaths.hiddenPathsOnResponse" options="hidden-paths-on-response">
<item nullable="True" type="string"/>
</arg>
</arg>
</item>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration" options="managed-resource-group-configuration" group="Properties">
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.applicationIds" options="application-ids">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.denyAssignmentConfiguration" options="deny-assignment-configuration">
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.denyAssignmentConfiguration.enabled" options="enabled"/>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.denyAssignmentConfiguration.notActions" options="not-actions">
<item nullable="True" type="string"/>
</arg>
</arg>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.enabled" options="enabled"/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.resourceGroupLocationOverride" options="resource-group-location-override"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management" options="management" group="Properties">
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.authorizationOwners" options="authorization-owners">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.canaryManifestOwners" options="canary-manifest-owners">
<help short="List of manifest owners for canary."/>
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.errorResponseMessageOptions" options="error-response-message-options">
<help short="Options for error response messages."/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.errorResponseMessageOptions.serverFailureResponseMessageType" options="server-failure-response-message-type">
<help short="Type of server failure response message."/>
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="OutageReporting" value=""OutageReporting""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutMetadata" options="expedited-rollout-metadata">
<help short="Metadata for expedited rollout."/>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutMetadata.enabled" options="enabled">
<help short="Expedited rollout enabled?"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutMetadata.expeditedRolloutIntent" options="expedited-rollout-intent">
<help short="Expedited rollout intent."/>
<enum>
<item name="Hotfix" value=""Hotfix""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutSubmitters" options="expedited-rollout-submitters">
<help short="List of expedited rollout submitters."/>
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.incidentContactEmail" options="incident-contact-email"/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.incidentRoutingService" options="incident-routing-service"/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.incidentRoutingTeam" options="incident-routing-team"/>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.manifestOwners" options="manifest-owners">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.pcCode" options="pc-code">
<help short="The profit center code for the subscription."/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.profitCenterProgramId" options="profit-center-program-id">
<help short="The profit center program id for the subscription."/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.resourceAccessPolicy" options="resource-access-policy">
<enum>
<item name="AcisActionAllowed" value=""AcisActionAllowed""/>
<item name="AcisReadAllowed" value=""AcisReadAllowed""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
<arg nullable="True" type="array<@ResourceAccessRole_update>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.resourceAccessRoles" options="resource-access-roles">
<item nullable="True" type="@ResourceAccessRole_update"/>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.schemaOwners" options="schema-owners">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="array<@ServiceTreeInfo_update>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.management.serviceTreeInfos" options="service-tree-infos">
<item nullable="True" type="@ServiceTreeInfo_update"/>
</arg>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.manifestLink" options="manifest-link" group="Properties">
<help short="Manifest link."/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.marketplaceOptions" options="marketplace-options" group="Properties">
<help short="Marketplace options."/>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.marketplaceOptions.addOnPlanConversionAllowed" options="add-on-plan-conversion-allowed">
<help short="Add-on plan conversion allowed."/>
</arg>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.marketplaceType" options="marketplace-type" group="Properties">
<enum>
<item name="AddOn" value=""AddOn""/>
<item name="Bypass" value=""Bypass""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="ProviderHub" value=""ProviderHub""/>
<item name="Store" value=""Store""/>
</enum>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.metadata" options="metadata" group="Properties">
<additionalProp>
<item nullable="True" type="object">
<additionalProp anyType="True"/>
</item>
</additionalProp>
</arg>
<arg nullable="True" type="@Notifications_update" var="$properties.properties.specification.resourceTypeRegistrations[].properties.notifications" options="notifications" group="Properties"/>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.onBehalfOfTokens" options="on-behalf-of-tokens" group="Properties">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.onBehalfOfTokens.actionName" options="action-name"/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.onBehalfOfTokens.lifeTime" options="life-time"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.openApiConfiguration" options="open-api-configuration" group="Properties">
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.openApiConfiguration.validation" options="validation">
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.openApiConfiguration.validation.allowNoncompliantCollectionResponse" options="allow-noncompliant-collection-response">
<help short="Indicates whether a non compliance response is allowed for a LIST call"/>
</arg>
</arg>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.policyExecutionType" options="policy-execution-type" group="Properties">
<enum>
<item name="BypassPolicies" value=""BypassPolicies""/>
<item name="ExecutePolicies" value=""ExecutePolicies""/>
<item name="ExpectPartialPutRequests" value=""ExpectPartialPutRequests""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration" options="private-endpoint-configuration" group="Properties">
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation" options="group-connectivity-information">
<help short="The list of group connectivity information."/>
<item nullable="True" type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].groupId" options="group-id">
<help short="The group id."/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].redirectMapId" options="redirect-map-id">
<help short="The redirect map id."/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].requiredMembers" options="required-members">
<help short="List of required members for the group id."/>
<item nullable="True" type="string"/>
</arg>
<arg type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].requiredZoneNames" options="required-zone-names">
<help short="List of required zone names for the group id."/>
<item nullable="True" type="string"/>
</arg>
</item>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.minApiVersion" options="min-api-version">
<help short="The first api version that support private endpoint."/>
</arg>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule" options="quota-rule" group="Properties">
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules" options="location-rules">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules[].location" options="location"/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules[].policy" options="policy">
<help short="Quota policy."/>
<enum>
<item name="Default" value=""Default""/>
<item name="None" value=""None""/>
<item name="Restricted" value=""Restricted""/>
</enum>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules[].quotaId" options="quota-id"/>
</item>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.quotaPolicy" options="quota-policy">
<help short="Quota policy."/>
<enum>
<item name="Default" value=""Default""/>
<item name="None" value=""None""/>
<item name="Restricted" value=""Restricted""/>
</enum>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.requiredFeatures" options="required-features">
<item nullable="True" type="string"/>
</arg>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.regionality" options="regionality" group="Properties">
<enum>
<item name="Global" value=""Global""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="Regional" value=""Regional""/>
</enum>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.requestHeaderOptions" options="request-header-options" group="Properties">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.requestHeaderOptions.optInHeaders" options="opt-in-headers">
<enum>
<item name="ClientGroupMembership" value=""ClientGroupMembership""/>
<item name="ClientPrincipalNameEncoded" value=""ClientPrincipalNameEncoded""/>
<item name="MSIResourceIdEncoded" value=""MSIResourceIdEncoded""/>
<item name="ManagementGroupAncestorsEncoded" value=""ManagementGroupAncestorsEncoded""/>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="PrivateLinkId" value=""PrivateLinkId""/>
<item name="PrivateLinkResourceId" value=""PrivateLinkResourceId""/>
<item name="PrivateLinkVnetTrafficTag" value=""PrivateLinkVnetTrafficTag""/>
<item name="ResourceGroupLocation" value=""ResourceGroupLocation""/>
<item name="SignedAuxiliaryTokens" value=""SignedAuxiliaryTokens""/>
<item name="SignedUserToken" value=""SignedUserToken""/>
<item name="UnboundedClientGroupMembership" value=""UnboundedClientGroupMembership""/>
</enum>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.requestHeaderOptions.optOutHeaders" options="opt-out-headers">
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="SystemDataCreatedByLastModifiedBy" value=""SystemDataCreatedByLastModifiedBy""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.requiredFeatures" options="required-features" group="Properties">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceCache" options="resource-cache" group="Properties">
<help short="Resource cache options."/>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceCache.enableResourceCache" options="enable-resource-cache">
<help short="Enable resource cache."/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceCache.resourceCacheExpirationTimespan" options="resource-cache-expiration-timespan">
<help short="Resource cache expiration timespan."/>
</arg>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceConcurrencyControlOptions" options="resource-concurrency-control-options" group="Properties">
<additionalProp>
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceConcurrencyControlOptions{}.policy" options="policy">
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="SynchronizeBeginExtension" value=""SynchronizeBeginExtension""/>
</enum>
</arg>
</item>
</additionalProp>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceDeletionPolicy" options="resource-deletion-policy" group="Properties">
<enum>
<item name="CascadeDeleteAll" value=""CascadeDeleteAll""/>
<item name="CascadeDeleteProxyOnlyChildren" value=""CascadeDeleteProxyOnlyChildren""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceGraphConfiguration" options="resource-graph-configuration" group="Properties">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceGraphConfiguration.apiVersion" options="api-version"/>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceGraphConfiguration.enabled" options="enabled"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions" options="resource-management-options" group="Properties">
<help short="Resource management options."/>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport" options="batch-provisioning-support">
<help short="Batch provisioning support."/>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.actionConfigurations" options="action-configurations">
<help short="Action Configurations."/>
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.actionConfigurations[].authorizationAction" options="authorization-action">
<help short="Authorization action."/>
</arg>
<arg nullable="True" type="integer64" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.actionConfigurations[].maxBatchSize" options="max-batch-size"/>
</item>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.batchContractVersion" options="batch-contract-version">
<help short="Batch contract version."/>
</arg>
<arg nullable="True" type="integer64" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.maxBatchSize" options="max-batch-size"/>
<arg nullable="True" type="integer64" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.maxNestedBatchSize" options="max-nested-batch-size"/>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.requiredFeatures" options="required-features">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.supportedOperations" options="supported-operations">
<help short="Supported operations."/>
<enum>
<item name="Delete" value=""Delete""/>
<item name="Get" value=""Get""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies" options="delete-dependencies">
<help short="Delete dependencies."/>
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies[].linkedProperty" options="linked-property">
<help short="Linked property."/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies[].linkedType" options="linked-type">
<help short="Linked type."/>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies[].requiredFeatures" options="required-features">
<help short="Required features."/>
<item nullable="True" type="string"/>
</arg>
</item>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.nestedProvisioningSupport" options="nested-provisioning-support">
<help short="Nested provisioning support."/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.nestedProvisioningSupport.minimumApiVersion" options="minimum-api-version">
<help short="Minimum API version."/>
</arg>
</arg>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy" options="resource-move-policy" group="Properties">
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy.crossResourceGroupMoveEnabled" options="cross-resource-group-move-enabled"/>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy.crossSubscriptionMoveEnabled" options="cross-subscription-move-enabled"/>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy.validationRequired" options="validation-required"/>
</arg>
<arg nullable="True" type="@ResourceProviderAuthorizationRules_update" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceProviderAuthorizationRules" options="resource-provider-authorization-rules" group="Properties"/>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceQueryManagement" options="resource-query-management" group="Properties">
<help short="Resource query management options."/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceQueryManagement.filterOption" options="filter-option">
<help short="Filter option."/>
<enum>
<item name="EnableSubscriptionFilterOnTenant" value=""EnableSubscriptionFilterOnTenant""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceSubType" options="resource-sub-type" group="Properties">
<enum>
<item name="AsyncOperation" value=""AsyncOperation""/>
<item name="NotSpecified" value=""NotSpecified""/>
</enum>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceTypeCommonAttributeManagement" options="resource-type-common-attribute-management" group="Properties">
<help short="Resource type common attribute management."/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceTypeCommonAttributeManagement.commonApiVersionsMergeMode" options="common-api-versions-merge-mode">
<help short="Common api versions merge mode."/>
<enum>
<item name="Merge" value=""Merge""/>
<item name="Overwrite" value=""Overwrite""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceValidation" options="resource-validation" group="Properties">
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="ProfaneWords" value=""ProfaneWords""/>
<item name="ReservedWords" value=""ReservedWords""/>
</enum>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.routingRule" options="routing-rule" group="Properties">
<help short="Routing rule."/>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.routingRule.hostResourceType" options="host-resource-type">
<help short="Hosted resource type."/>
</arg>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.routingType" options="routing-type" group="Properties">
<enum>
<item name="CascadeExtension" value=""CascadeExtension""/>
<item name="Default" value=""Default""/>
<item name="Extension" value=""Extension""/>
<item name="Failover" value=""Failover""/>
<item name="Fanout" value=""Fanout""/>
<item name="HostBased" value=""HostBased""/>
<item name="LocationBased" value=""LocationBased""/>
<item name="ProxyOnly" value=""ProxyOnly""/>
<item name="Tenant" value=""Tenant""/>
</enum>
</arg>
<arg nullable="True" type="array<@ServiceTreeInfo_update>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.serviceTreeInfos" options="service-tree-infos" group="Properties">
<item nullable="True" type="@ServiceTreeInfo_update"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.skuLink" options="sku-link" group="Properties"/>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionLifecycleNotificationSpecifications" options="subscription-lifecycle-notification-specifications" group="Properties">
<arg nullable="True" type="duration" var="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionLifecycleNotificationSpecifications.softDeleteTTL" options="soft-delete-ttl"/>
<arg nullable="True" type="array<@SubscriptionStateOverrideAction_update>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionLifecycleNotificationSpecifications.subscriptionStateOverrideActions" options="subscription-state-override-actions">
<item nullable="True" type="@SubscriptionStateOverrideAction_update"/>
</arg>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionStateRules" options="subscription-state-rules" group="Properties">
<item nullable="True" type="object">
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionStateRules[].allowedActions" options="allowed-actions">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionStateRules[].state" options="state">
<enum>
<item name="Deleted" value=""Deleted""/>
<item name="Disabled" value=""Disabled""/>
<item name="Enabled" value=""Enabled""/>
<item name="NotDefined" value=""NotDefined""/>
<item name="PastDue" value=""PastDue""/>
<item name="Warned" value=""Warned""/>
</enum>
</arg>
</item>
</arg>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.superScaleEnabled" options="super-scale-enabled" group="Properties"/>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.supportsTags" options="supports-tags" group="Properties"/>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.swaggerSpecifications" options="swagger-specifications" group="Properties">
<item nullable="True" type="object">
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.swaggerSpecifications[].apiVersions" options="api-versions">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.swaggerSpecifications[].swaggerSpecFolderUri" options="swagger-spec-folder-uri"/>
</item>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentOptions" options="template-deployment-options" group="Properties">
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentOptions.preflightOptions" options="preflight-options">
<item nullable="True" type="string">
<enum>
<item name="ContinueDeploymentOnFailure" value=""ContinueDeploymentOnFailure""/>
<item name="DefaultValidationOnly" value=""DefaultValidationOnly""/>
<item name="None" value=""None""/>
</enum>
</item>
</arg>
<arg nullable="True" type="boolean" var="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentOptions.preflightSupported" options="preflight-supported"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy" options="template-deployment-policy" group="Properties">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy.capabilities" options="capabilities">
<enum>
<item name="Default" value=""Default""/>
<item name="Preflight" value=""Preflight""/>
</enum>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy.preflightNotifications" options="preflight-notifications">
<enum>
<item name="None" value=""None""/>
<item name="UnregisteredSubscriptions" value=""UnregisteredSubscriptions""/>
</enum>
</arg>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy.preflightOptions" options="preflight-options">
<enum>
<item name="DeploymentRequests" value=""DeploymentRequests""/>
<item name="None" value=""None""/>
<item name="RegisteredOnly" value=""RegisteredOnly""/>
<item name="TestOnly" value=""TestOnly""/>
<item name="ValidationRequests" value=""ValidationRequests""/>
</enum>
</arg>
</arg>
<arg nullable="True" type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules" options="throttling-rules" group="Properties">
<item nullable="True" type="object">
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].action" options="action"/>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].applicationId" options="application-id">
<item nullable="True" type="string"/>
</arg>
<arg type="array<object>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics" options="metrics">
<item nullable="True" type="object">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].bucketSize" options="bucket-size"/>
<arg nullable="True" type="duration" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].interval" options="interval"/>
<arg type="integer64" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].limit" options="limit"/>
<arg type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].type" options="type">
<enum>
<item name="NotSpecified" value=""NotSpecified""/>
<item name="NumberOfRequests" value=""NumberOfRequests""/>
<item name="NumberOfResources" value=""NumberOfResources""/>
</enum>
</arg>
</item>
</arg>
<arg nullable="True" type="array<string>" var="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].requiredFeatures" options="required-features">
<item nullable="True" type="string"/>
</arg>
</item>
</arg>
<arg nullable="True" type="@TokenAuthConfiguration_update" var="$properties.properties.specification.resourceTypeRegistrations[].properties.tokenAuthConfiguration" options="token-auth-configuration" group="Properties"/>
<arg nullable="True" type="object" var="$properties.properties.specification.resourceTypeRegistrations[].properties.writeLock" options="write-lock" group="Properties">
<arg nullable="True" type="string" var="$properties.properties.specification.resourceTypeRegistrations[].properties.writeLock.state" options="state">
<help short="The state of write lock feature. The feature will ensure a deterministic sequence of write-operation within and across the verbs. Also the feature will ensure that the semantics of synchronous and long-running operations are honored."/>
<enum>
<item name="Disabled" value=""Disabled""/>
<item name="Enabled" value=""Enabled""/>
</enum>
</arg>
</arg>
</item>
</arg>
<arg nullable="True" type="string" var="$properties.properties.specification.rolloutId" options="rollout-id"/>
<arg nullable="True" type="boolean" var="$properties.properties.specification.skipReleaseScopeValidation" options="skip-release-scope-validation"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.status" options="status" group="Properties">
<arg nullable="True" type="array<string>" var="$properties.properties.status.completedRegions" options="completed-regions">
<item nullable="True" type="string"/>
</arg>
<arg nullable="True" type="object" var="$properties.properties.status.failedOrSkippedRegions" options="failed-or-skipped-regions">
<additionalProp>
<item nullable="True" type="object" cls="ExtendedErrorInfo_update">
<arg nullable="True" type="array<object>" var="@ExtendedErrorInfo_update.additionalInfo" options="additional-info">
<help short="The additional error information."/>
<item nullable="True" type="object">
<arg type="string" var="@ExtendedErrorInfo_update.additionalInfo[].type" options="type">
<help short="The type of the error."/>
</arg>
</item>
</arg>
<arg nullable="True" type="string" var="@ExtendedErrorInfo_update.code" options="code">
<help short="The error code."/>
</arg>
<arg nullable="True" type="array<@ExtendedErrorInfo_update>" var="@ExtendedErrorInfo_update.details" options="details">
<help short="The error details."/>
<item nullable="True" type="@ExtendedErrorInfo_update"/>
</arg>
<arg nullable="True" type="string" var="@ExtendedErrorInfo_update.message" options="message">
<help short="The error message."/>
</arg>
<arg nullable="True" type="string" var="@ExtendedErrorInfo_update.target" options="target">
<help short="The target of the error."/>
</arg>
</item>
</additionalProp>
</arg>
<arg nullable="True" type="object" var="$properties.properties.status.manifestCheckinStatus" options="manifest-checkin-status">
<arg nullable="True" type="string" var="$properties.properties.status.manifestCheckinStatus.commitId" options="commit-id"/>
<arg type="boolean" var="$properties.properties.status.manifestCheckinStatus.isCheckedIn" options="is-checked-in"/>
<arg nullable="True" type="string" var="$properties.properties.status.manifestCheckinStatus.pullRequest" options="pull-request"/>
<arg type="string" var="$properties.properties.status.manifestCheckinStatus.statusMessage" options="status-message"/>
</arg>
</arg>
</argGroup>
<operation operationId="CustomRollouts_Get">
<http path="/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/customRollouts/{rolloutName}">
<request method="get">
<path>
<param type="string" name="providerNamespace" arg="$Path.providerNamespace" required="True"/>
<param type="string" name="rolloutName" arg="$Path.rolloutName" required="True">
<format pattern="^[-\w\._\(\)]+$" maxLength="260"/>
</param>
<param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True">
<format minLength="1"/>
</param>
</path>
<query>
<const readOnly="True" const="True" type="string" name="api-version" required="True">
<default value=""2025-03-01-preview""/>
<format minLength="1"/>
</const>
</query>
</request>
<response statusCode="200">
<body>
<json var="$Instance">
<schema type="object" cls="CustomRollout_read">
<prop readOnly="True" type="ResourceId" name="id">
<format template="/subscriptions/{}/providers/Microsoft.ProviderHub/providerRegistrations/{}/customRollouts/{}"/>
</prop>
<prop readOnly="True" type="string" name="name"/>
<prop type="object" name="properties" required="True">
<prop readOnly="True" type="string" name="provisioningState">
<enum>
<item value=""Accepted""/>
<item value=""Canceled""/>
<item value=""Created""/>
<item value=""Creating""/>
<item value=""Deleted""/>
<item value=""Deleting""/>
<item value=""Failed""/>
<item value=""MovingResources""/>
<item value=""NotSpecified""/>
<item value=""RolloutInProgress""/>
<item value=""Running""/>
<item value=""Succeeded""/>
<item value=""TransientFailure""/>
</enum>
</prop>
<prop type="object" name="specification" required="True">
<prop type="object" name="autoProvisionConfig">
<prop type="boolean" name="resourceGraph"/>
<prop type="boolean" name="storage"/>
</prop>
<prop type="object" name="canary">
<prop type="array<string>" name="regions">
<item type="string"/>
</prop>
</prop>
<prop type="object" name="manifestCheckinSpecification">
<prop type="string" name="manifestCheckinOption">
<default value=""DoNotAttemptAutomaticManifestCheckin""/>
<enum>
<item value=""AttemptAutomaticManifestCheckin""/>
<item value=""DoNotAttemptAutomaticManifestCheckin""/>
</enum>
</prop>
<prop type="object" name="manifestCheckinParams">
<prop type="string" name="baselineArmManifestLocation" required="True"/>
<prop type="string" name="environment" required="True"/>
</prop>
</prop>
<prop type="object" name="providerRegistration">
<prop readOnly="True" type="ResourceId" name="id">
<format template="/subscriptions/{}/providers/Microsoft.ProviderHub/providerRegistrations/{}"/>
</prop>
<prop type="string" name="kind">
<default value=""Managed""/>
<enum>
<item value=""Direct""/>
<item value=""Hybrid""/>
<item value=""Managed""/>
</enum>
</prop>
<prop readOnly="True" type="string" name="name"/>
<prop type="object" name="properties">
<prop type="array<object>" name="capabilities" identifiers="quotaId">
<item type="object">
<prop type="string" name="effect" required="True">
<enum>
<item value=""Allow""/>
<item value=""Disallow""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="string" name="quotaId" required="True"/>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="string" name="crossTenantTokenValidation">
<enum>
<item value=""EnsureSecureValidation""/>
<item value=""PassthroughInsecureToken""/>
</enum>
</prop>
<prop type="string" name="customManifestVersion"/>
<prop type="object" name="dstsConfiguration">
<prop type="string" name="serviceDnsName"/>
<prop type="string" name="serviceName" required="True"/>
</prop>
<prop type="boolean" name="enablePresetResourceTypes"/>
<prop nullable="True" type="boolean" name="enableTenantLinkedNotification"/>
<prop type="object" name="featuresRule">
<prop type="string" name="requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="globalNotificationEndpoints">
<item type="object" cls="ResourceProviderEndpoint_read">
<prop type="array<string>" name="apiVersions">
<item type="string"/>
</prop>
<prop type="boolean" name="enabled"/>
<prop type="string" name="endpointType">
<enum>
<item value=""Canary""/>
<item value=""NotSpecified""/>
<item value=""Production""/>
<item value=""TestInProduction""/>
</enum>
</prop>
<prop type="string" name="endpointUri"/>
<prop type="object" name="featuresRule">
<prop type="string" name="requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="locations">
<item type="string"/>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
<prop type="string" name="skuLink"/>
<prop type="duration" name="timeout"/>
</item>
</prop>
<prop type="string" name="legacyNamespace"/>
<prop type="array<string>" name="legacyRegistrations">
<item type="string"/>
</prop>
<prop type="array<object>" name="linkedNotificationRules">
<item type="object">
<prop type="array<string>" name="actions">
<item type="string"/>
</prop>
<prop type="object" name="dstsConfiguration">
<prop type="string" name="serviceDnsName"/>
<prop type="string" name="serviceName" required="True"/>
</prop>
<prop type="array<@ResourceProviderEndpoint_read>" name="endpoints">
<item type="@ResourceProviderEndpoint_read"/>
</prop>
<prop type="object" name="tokenAuthConfiguration" cls="TokenAuthConfiguration_read">
<prop type="string" name="authenticationScheme">
<enum>
<item value=""Bearer""/>
<item value=""PoP""/>
</enum>
</prop>
<prop type="boolean" name="disableCertificateAuthenticationFallback"/>
<prop type="string" name="signedRequestScope">
<enum>
<item value=""Endpoint""/>
<item value=""ResourceUri""/>
</enum>
</prop>
</prop>
</item>
</prop>
<prop type="object" name="management">
<prop type="array<string>" name="authorizationOwners">
<item type="string"/>
</prop>
<prop type="array<string>" name="canaryManifestOwners">
<item type="string"/>
</prop>
<prop type="object" name="errorResponseMessageOptions">
<prop type="string" name="serverFailureResponseMessageType">
<enum>
<item value=""NotSpecified""/>
<item value=""OutageReporting""/>
</enum>
</prop>
</prop>
<prop type="object" name="expeditedRolloutMetadata">
<prop type="boolean" name="enabled"/>
<prop type="string" name="expeditedRolloutIntent">
<enum>
<item value=""Hotfix""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="expeditedRolloutSubmitters">
<item type="string"/>
</prop>
<prop type="string" name="incidentContactEmail"/>
<prop type="string" name="incidentRoutingService"/>
<prop type="string" name="incidentRoutingTeam"/>
<prop type="array<string>" name="manifestOwners">
<item type="string"/>
</prop>
<prop type="string" name="pcCode"/>
<prop type="string" name="profitCenterProgramId"/>
<prop type="string" name="resourceAccessPolicy">
<enum>
<item value=""AcisActionAllowed""/>
<item value=""AcisReadAllowed""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="array<object>" name="resourceAccessRoles">
<item type="object" cls="ResourceAccessRole_read">
<prop type="array<string>" name="actions">
<item type="string"/>
</prop>
<prop type="array<string>" name="allowedGroupClaims">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="array<string>" name="schemaOwners">
<item type="string"/>
</prop>
<prop type="array<object>" name="serviceTreeInfos">
<item type="object" cls="ServiceTreeInfo_read">
<prop type="string" name="componentId"/>
<prop type="string" name="readiness">
<enum>
<item value=""ClosingDown""/>
<item value=""Deprecated""/>
<item value=""GA""/>
<item value=""InDevelopment""/>
<item value=""InternalOnly""/>
<item value=""PrivatePreview""/>
<item value=""PublicPreview""/>
<item value=""RemovedFromARM""/>
<item value=""Retired""/>
</enum>
</prop>
<prop type="string" name="serviceId"/>
</item>
</prop>
</prop>
<prop type="array<@ResourceProviderEndpoint_read>" name="managementGroupGlobalNotificationEndpoints">
<item type="@ResourceProviderEndpoint_read"/>
</prop>
<prop type="object" name="metadata">
<additionalProp anyType="True"/>
</prop>
<prop type="string" name="namespace"/>
<prop type="string" name="notificationOptions">
<enum>
<item value=""EmitSpendingLimit""/>
<item value=""None""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="notificationSettings">
<prop type="array<object>" name="subscriberSettings">
<item type="object">
<prop type="array<object>" name="filterRules">
<item type="object">
<prop type="array<object>" name="endpointInformation">
<item type="object">
<prop type="string" name="endpoint"/>
<prop type="string" name="endpointType">
<enum>
<item value=""Eventhub""/>
<item value=""Webhook""/>
</enum>
</prop>
<prop type="string" name="schemaVersion"/>
</item>
</prop>
<prop type="string" name="filterQuery"/>
</item>
</prop>
</item>
</prop>
</prop>
<prop type="array<object>" name="notifications" cls="Notifications_read">
<item type="object">
<prop type="string" name="notificationType">
<enum>
<item value=""SubscriptionNotification""/>
<item value=""Unspecified""/>
</enum>
</prop>
<prop type="string" name="skipNotifications">
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
<item value=""Unspecified""/>
</enum>
</prop>
</item>
</prop>
<prop type="string" name="oboSubscriptionId"/>
<prop type="array<string>" name="optionalFeatures">
<item type="string"/>
</prop>
<prop type="object" name="privateResourceProviderConfiguration">
<prop type="array<string>" name="allowedSubscriptions">
<item type="string"/>
</prop>
</prop>
<prop type="object" name="providerAuthentication">
<prop type="array<string>" name="allowedAudiences" required="True">
<item type="string"/>
</prop>
</prop>
<prop type="array<object>" name="providerAuthorizations">
<item type="object" cls="ResourceProviderAuthorization_read">
<prop type="array<object>" name="allowedThirdPartyExtensions" identifiers="name">
<item type="object">
<prop type="string" name="name"/>
</item>
</prop>
<prop type="string" name="applicationId"/>
<prop type="string" name="groupingTag"/>
<prop type="object" name="managedByAuthorization">
<prop type="array<object>" name="additionalAuthorizations" identifiers="roleDefinitionId applicationId">
<item type="object">
<prop type="string" name="applicationId"/>
<prop type="string" name="roleDefinitionId"/>
</item>
</prop>
<prop type="boolean" name="allowManagedByInheritance"/>
<prop type="string" name="managedByResourceRoleDefinitionId"/>
</prop>
<prop type="string" name="managedByRoleDefinitionId"/>
<prop type="string" name="roleDefinitionId"/>
</item>
</prop>
<prop type="object" name="providerHubMetadata">
<prop type="string" name="directRpRoleDefinitionId"/>
<prop type="string" name="globalAsyncOperationResourceTypeName"/>
<prop type="object" name="providerAuthentication">
<prop type="array<string>" name="allowedAudiences" required="True">
<item type="string"/>
</prop>
</prop>
<prop type="array<@ResourceProviderAuthorization_read>" name="providerAuthorizations">
<item type="@ResourceProviderAuthorization_read"/>
</prop>
<prop type="string" name="regionalAsyncOperationResourceTypeName"/>
<prop type="object" name="thirdPartyProviderAuthorization">
<prop type="array<object>" name="authorizations">
<item type="object">
<prop type="string" name="principalId" required="True"/>
<prop type="string" name="roleDefinitionId" required="True"/>
</item>
</prop>
<prop type="string" name="managedByTenantId"/>
</prop>
</prop>
<prop type="string" name="providerType">
<enum>
<item value=""AuthorizationFree""/>
<item value=""Decommissioned""/>
<item value=""External""/>
<item value=""Hidden""/>
<item value=""Internal""/>
<item value=""LegacyRegistrationRequired""/>
<item value=""NotSpecified""/>
<item value=""RegistrationFree""/>
<item value=""TenantOnly""/>
</enum>
</prop>
<prop type="string" name="providerVersion"/>
<prop readOnly="True" type="string" name="provisioningState">
<enum>
<item value=""Accepted""/>
<item value=""Canceled""/>
<item value=""Created""/>
<item value=""Creating""/>
<item value=""Deleted""/>
<item value=""Deleting""/>
<item value=""Failed""/>
<item value=""MovingResources""/>
<item value=""NotSpecified""/>
<item value=""RolloutInProgress""/>
<item value=""Running""/>
<item value=""Succeeded""/>
<item value=""TransientFailure""/>
</enum>
</prop>
<prop type="object" name="requestHeaderOptions">
<prop type="string" name="optInHeaders">
<enum>
<item value=""ClientGroupMembership""/>
<item value=""ClientPrincipalNameEncoded""/>
<item value=""MSIResourceIdEncoded""/>
<item value=""ManagementGroupAncestorsEncoded""/>
<item value=""NotSpecified""/>
<item value=""PrivateLinkId""/>
<item value=""PrivateLinkResourceId""/>
<item value=""PrivateLinkVnetTrafficTag""/>
<item value=""ResourceGroupLocation""/>
<item value=""SignedAuxiliaryTokens""/>
<item value=""SignedUserToken""/>
<item value=""UnboundedClientGroupMembership""/>
</enum>
</prop>
<prop type="string" name="optOutHeaders">
<enum>
<item value=""NotSpecified""/>
<item value=""SystemDataCreatedByLastModifiedBy""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
<prop type="object" name="resourceGroupLockOptionDuringMove">
<prop type="string" name="blockActionVerb">
<enum>
<item value=""Action""/>
<item value=""Delete""/>
<item value=""NotSpecified""/>
<item value=""Read""/>
<item value=""Unrecognized""/>
<item value=""Write""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="resourceHydrationAccounts">
<item type="object">
<prop type="string" name="accountName"/>
<prop type="string" name="encryptedKey"/>
<prop type="integer64" name="maxChildResourceConsistencyJobLimit"/>
<prop type="string" name="subscriptionId"/>
</item>
</prop>
<prop type="object" name="resourceProviderAuthorizationRules" cls="ResourceProviderAuthorizationRules_read">
<prop type="object" name="asyncOperationPollingRules">
<prop type="string" name="additionalOptions">
<enum>
<item value=""ProtectedAsyncOperationPolling""/>
<item value=""ProtectedAsyncOperationPollingAuditOnly""/>
</enum>
</prop>
<prop type="array<string>" name="authorizationActions">
<item type="string"/>
</prop>
</prop>
</prop>
<prop type="object" name="responseOptions">
<prop type="string" name="serviceClientOptionsType">
<enum>
<item value=""DisableAutomaticDecompression""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="string" name="serviceName"/>
<prop type="array<object>" name="services">
<item type="object">
<prop type="string" name="serviceName"/>
<prop type="string" name="status">
<enum>
<item value=""Active""/>
<item value=""Inactive""/>
</enum>
</prop>
</item>
</prop>
<prop type="object" name="subscriptionLifecycleNotificationSpecifications">
<prop type="duration" name="softDeleteTTL"/>
<prop type="array<object>" name="subscriptionStateOverrideActions">
<item type="object" cls="SubscriptionStateOverrideAction_read">
<prop type="string" name="action" required="True">
<enum>
<item value=""BillingCancellation""/>
<item value=""DeleteAllResources""/>
<item value=""NoOp""/>
<item value=""NotDefined""/>
<item value=""SoftDeleteAllResources""/>
<item value=""UndoSoftDelete""/>
</enum>
</prop>
<prop type="string" name="state" required="True">
<enum>
<item value=""Deleted""/>
<item value=""Registered""/>
<item value=""Suspended""/>
<item value=""SuspendedToDeleted""/>
<item value=""SuspendedToRegistered""/>
<item value=""SuspendedToUnregistered""/>
<item value=""SuspendedToWarned""/>
<item value=""Unregistered""/>
<item value=""Warned""/>
<item value=""WarnedToDeleted""/>
<item value=""WarnedToRegistered""/>
<item value=""WarnedToSuspended""/>
<item value=""WarnedToUnregistered""/>
</enum>
</prop>
</item>
</prop>
</prop>
<prop type="object" name="templateDeploymentOptions">
<prop type="array<string>" name="preflightOptions">
<item type="string">
<enum>
<item value=""ContinueDeploymentOnFailure""/>
<item value=""DefaultValidationOnly""/>
<item value=""None""/>
</enum>
</item>
</prop>
<prop type="boolean" name="preflightSupported"/>
</prop>
<prop type="@TokenAuthConfiguration_read" name="tokenAuthConfiguration"/>
</prop>
<prop readOnly="True" type="object" name="systemData" cls="SystemData_read">
<prop type="dateTime" name="createdAt"/>
<prop type="string" name="createdBy"/>
<prop type="string" name="createdByType">
<enum>
<item value=""Application""/>
<item value=""Key""/>
<item value=""ManagedIdentity""/>
<item value=""User""/>
</enum>
</prop>
<prop type="dateTime" name="lastModifiedAt"/>
<prop type="string" name="lastModifiedBy"/>
<prop type="string" name="lastModifiedByType">
<enum>
<item value=""Application""/>
<item value=""Key""/>
<item value=""ManagedIdentity""/>
<item value=""User""/>
</enum>
</prop>
</prop>
<prop readOnly="True" type="string" name="type"/>
</prop>
<prop type="boolean" name="refreshSubscriptionRegistration"/>
<prop type="array<string>" name="releaseScopes">
<item type="string"/>
</prop>
<prop type="array<object>" name="resourceTypeRegistrations">
<item type="object">
<prop readOnly="True" type="ResourceId" name="id">
<format template="/subscriptions/{}/providers/Microsoft.ProviderHub/providerRegistrations/{}/resourcetypeRegistrations/{}"/>
</prop>
<prop type="string" name="kind">
<default value=""Managed""/>
<enum>
<item value=""Direct""/>
<item value=""Hybrid""/>
<item value=""Managed""/>
</enum>
</prop>
<prop readOnly="True" type="string" name="name"/>
<prop type="object" name="properties">
<prop type="boolean" name="addResourceListTargetLocations"/>
<prop type="string" name="additionalOptions">
<enum>
<item value=""ProtectedAsyncOperationPolling""/>
<item value=""ProtectedAsyncOperationPollingAuditOnly""/>
</enum>
</prop>
<prop type="boolean" name="allowEmptyRoleAssignments"/>
<prop type="array<object>" name="allowedResourceNames" identifiers="getActionVerb name">
<item type="object">
<prop type="string" name="getActionVerb"/>
<prop type="string" name="name"/>
</item>
</prop>
<prop type="array<string>" name="allowedTemplateDeploymentReferenceActions">
<item type="string"/>
</prop>
<prop type="array<string>" name="allowedUnauthorizedActions">
<item type="string"/>
</prop>
<prop type="array<object>" name="allowedUnauthorizedActionsExtensions">
<item type="object">
<prop type="string" name="action"/>
<prop type="string" name="intent">
<enum>
<item value=""DEFERRED_ACCESS_CHECK""/>
<item value=""LOW_PRIVILEGE""/>
<item value=""NOT_SPECIFIED""/>
<item value=""RP_CONTRACT""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<object>" name="apiProfiles" identifiers="profileVersion apiVersion">
<item type="object">
<prop type="string" name="apiVersion"/>
<prop type="string" name="profileVersion"/>
</item>
</prop>
<prop type="string" name="asyncOperationResourceTypeName"/>
<prop type="array<object>" name="asyncTimeoutRules">
<item type="object">
<prop type="string" name="actionName"/>
<prop type="string" name="timeout"/>
</item>
</prop>
<prop type="array<object>" name="authorizationActionMappings" identifiers="original">
<item type="object">
<prop type="string" name="desired"/>
<prop type="string" name="original"/>
</item>
</prop>
<prop type="object" name="availabilityZoneRule">
<prop type="string" name="availabilityZonePolicy">
<enum>
<item value=""MultiZoned""/>
<item value=""NotSpecified""/>
<item value=""SingleZoned""/>
</enum>
</prop>
</prop>
<prop type="object" name="capacityRule">
<prop type="string" name="capacityPolicy">
<enum>
<item value=""Default""/>
<item value=""Restricted""/>
</enum>
</prop>
<prop type="string" name="skuAlias"/>
</prop>
<prop type="string" name="category">
<enum>
<item value=""FreeForm""/>
<item value=""Internal""/>
<item value=""None""/>
<item value=""PureProxy""/>
</enum>
</prop>
<prop type="object" name="checkNameAvailabilitySpecifications">
<prop type="boolean" name="enableDefaultValidation"/>
<prop type="array<string>" name="resourceTypesWithCustomValidation">
<item type="string"/>
</prop>
</prop>
<prop type="array<string>" name="commonApiVersions">
<item type="string"/>
</prop>
<prop type="string" name="crossTenantTokenValidation">
<enum>
<item value=""EnsureSecureValidation""/>
<item value=""PassthroughInsecureToken""/>
</enum>
</prop>
<prop type="string" name="defaultApiVersion"/>
<prop type="array<string>" name="disallowedActionVerbs">
<item type="string"/>
</prop>
<prop type="array<string>" name="disallowedEndUserOperations">
<item type="string"/>
</prop>
<prop type="object" name="dstsConfiguration">
<prop type="string" name="serviceDnsName"/>
<prop type="string" name="serviceName" required="True"/>
</prop>
<prop type="boolean" name="enableAsyncOperation"/>
<prop type="boolean" name="enableThirdPartyS2S"/>
<prop type="array<object>" name="endpoints">
<item type="object">
<prop type="string" name="apiVersion"/>
<prop type="array<string>" name="apiVersions">
<item type="string"/>
</prop>
<prop type="string" name="dataBoundary">
<enum>
<item value=""EU""/>
<item value=""Global""/>
<item value=""NotDefined""/>
<item value=""US""/>
</enum>
</prop>
<prop type="object" name="dstsConfiguration">
<prop type="string" name="serviceDnsName"/>
<prop type="string" name="serviceName" required="True"/>
</prop>
<prop type="boolean" name="enabled"/>
<prop type="string" name="endpointType">
<enum>
<item value=""Canary""/>
<item value=""NotSpecified""/>
<item value=""Production""/>
<item value=""TestInProduction""/>
</enum>
</prop>
<prop type="string" name="endpointUri"/>
<prop type="array<object>" name="extensions" identifiers="endpointUri">
<item type="object">
<prop type="string" name="endpointUri"/>
<prop type="array<string>" name="extensionCategories">
<item type="string">
<enum>
<item value=""BestMatchOperationBegin""/>
<item value=""NotSpecified""/>
<item value=""ResourceCreationBegin""/>
<item value=""ResourceCreationCompleted""/>
<item value=""ResourceCreationValidate""/>
<item value=""ResourceDeletionBegin""/>
<item value=""ResourceDeletionCompleted""/>
<item value=""ResourceDeletionValidate""/>
<item value=""ResourceMoveBegin""/>
<item value=""ResourceMoveCompleted""/>
<item value=""ResourcePatchBegin""/>
<item value=""ResourcePatchCompleted""/>
<item value=""ResourcePatchValidate""/>
<item value=""ResourcePostAction""/>
<item value=""ResourceReadBegin""/>
<item value=""ResourceReadValidate""/>
<item value=""SubscriptionLifecycleNotification""/>
<item value=""SubscriptionLifecycleNotificationDeletion""/>
</enum>
</item>
</prop>
<prop type="duration" name="timeout"/>
</item>
</prop>
<prop type="object" name="featuresRule">
<prop type="string" name="requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="string" name="kind">
<default value=""Managed""/>
<enum>
<item value=""Direct""/>
<item value=""Managed""/>
</enum>
</prop>
<prop type="array<string>" name="locations">
<item type="string"/>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
<prop type="string" name="skuLink"/>
<prop type="duration" name="timeout"/>
<prop type="@TokenAuthConfiguration_read" name="tokenAuthConfiguration"/>
<prop type="array<string>" name="zones">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="array<object>" name="extendedLocations">
<item type="object">
<prop type="string" name="supportedPolicy"/>
<prop type="string" name="type"/>
</item>
</prop>
<prop type="object" name="extensionOptions">
<prop type="object" name="resourceCreationBegin">
<prop type="array<string>" name="request">
<item type="string">
<enum>
<item value=""DoNotMergeExistingReadOnlyAndSecretProperties""/>
<item value=""IncludeInternalMetadata""/>
<item value=""NotSpecified""/>
</enum>
</item>
</prop>
<prop type="array<string>" name="response">
<item type="string">
<enum>
<item value=""DoNotMergeExistingReadOnlyAndSecretProperties""/>
<item value=""IncludeInternalMetadata""/>
<item value=""NotSpecified""/>
</enum>
</item>
</prop>
</prop>
</prop>
<prop type="object" name="featuresRule">
<prop type="string" name="requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="string" name="frontdoorRequestMode">
<enum>
<item value=""NotSpecified""/>
<item value=""UseManifest""/>
</enum>
</prop>
<prop type="string" name="groupingTag"/>
<prop type="object" name="identityManagement">
<prop type="string" name="applicationId"/>
<prop type="array<string>" name="applicationIds">
<item type="string"/>
</prop>
<prop type="array<string>" name="delegationAppIds">
<item type="string"/>
</prop>
<prop type="string" name="type">
<enum>
<item value=""Actor""/>
<item value=""DelegatedResourceIdentity""/>
<item value=""NotSpecified""/>
<item value=""SystemAssigned""/>
<item value=""UserAssigned""/>
</enum>
</prop>
</prop>
<prop type="boolean" name="isPureProxy"/>
<prop type="string" name="legacyName"/>
<prop type="array<string>" name="legacyNames">
<item type="string"/>
</prop>
<prop type="object" name="legacyPolicy">
<prop type="array<object>" name="disallowedConditions">
<item type="object">
<prop type="array<string>" name="disallowedLegacyOperations">
<item type="string">
<enum>
<item value=""Action""/>
<item value=""AzureAsyncOperationWaiting""/>
<item value=""Create""/>
<item value=""Delete""/>
<item value=""DeploymentCleanup""/>
<item value=""EvaluateDeploymentOutput""/>
<item value=""NotSpecified""/>
<item value=""Read""/>
<item value=""ResourceCacheWaiting""/>
<item value=""Waiting""/>
</enum>
</item>
</prop>
<prop type="string" name="feature"/>
</item>
</prop>
<prop type="array<string>" name="disallowedLegacyOperations">
<item type="string">
<enum>
<item value=""Action""/>
<item value=""AzureAsyncOperationWaiting""/>
<item value=""Create""/>
<item value=""Delete""/>
<item value=""DeploymentCleanup""/>
<item value=""EvaluateDeploymentOutput""/>
<item value=""NotSpecified""/>
<item value=""Read""/>
<item value=""ResourceCacheWaiting""/>
<item value=""Waiting""/>
</enum>
</item>
</prop>
</prop>
<prop type="array<object>" name="linkedAccessChecks">
<item type="object">
<prop type="string" name="actionName"/>
<prop type="string" name="linkedAction"/>
<prop type="string" name="linkedActionVerb"/>
<prop type="string" name="linkedProperty"/>
<prop type="string" name="linkedType"/>
<prop readOnly="True" type="string" name="options">
<enum>
<item value=""IgnoreEmptyStringLinkedType""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<object>" name="linkedNotificationRules">
<item type="object">
<prop type="array<string>" name="actions">
<item type="string"/>
</prop>
<prop type="array<string>" name="actionsOnFailedOperation">
<item type="string"/>
</prop>
<prop type="array<string>" name="fastPathActions">
<item type="string"/>
</prop>
<prop type="array<string>" name="fastPathActionsOnFailedOperation">
<item type="string"/>
</prop>
<prop type="duration" name="linkedNotificationTimeout"/>
</item>
</prop>
<prop type="array<object>" name="linkedOperationRules" identifiers="linkedOperation linkedAction">
<item type="object">
<prop type="array<string>" name="dependsOnTypes">
<item type="string"/>
</prop>
<prop type="string" name="linkedAction" required="True">
<enum>
<item value=""Blocked""/>
<item value=""Enabled""/>
<item value=""NotSpecified""/>
<item value=""Validate""/>
</enum>
</prop>
<prop type="string" name="linkedOperation" required="True">
<enum>
<item value=""CrossResourceGroupResourceMove""/>
<item value=""CrossSubscriptionResourceMove""/>
<item value=""None""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<object>" name="loggingRules">
<item type="object">
<prop type="string" name="action" required="True"/>
<prop type="string" name="detailLevel" required="True">
<enum>
<item value=""Body""/>
<item value=""None""/>
</enum>
</prop>
<prop type="string" name="direction" required="True">
<enum>
<item value=""None""/>
<item value=""Request""/>
<item value=""Response""/>
</enum>
</prop>
<prop type="object" name="hiddenPropertyPaths">
<prop type="array<string>" name="hiddenPathsOnRequest">
<item type="string"/>
</prop>
<prop type="array<string>" name="hiddenPathsOnResponse">
<item type="string"/>
</prop>
</prop>
</item>
</prop>
<prop type="object" name="managedResourceGroupConfiguration">
<prop type="array<string>" name="applicationIds">
<item type="string"/>
</prop>
<prop type="object" name="denyAssignmentConfiguration">
<prop type="boolean" name="enabled"/>
<prop type="array<string>" name="notActions">
<item type="string"/>
</prop>
</prop>
<prop type="boolean" name="enabled"/>
<prop type="string" name="resourceGroupLocationOverride"/>
</prop>
<prop type="object" name="management">
<prop type="array<string>" name="authorizationOwners">
<item type="string"/>
</prop>
<prop type="array<string>" name="canaryManifestOwners">
<item type="string"/>
</prop>
<prop type="object" name="errorResponseMessageOptions">
<prop type="string" name="serverFailureResponseMessageType">
<enum>
<item value=""NotSpecified""/>
<item value=""OutageReporting""/>
</enum>
</prop>
</prop>
<prop type="object" name="expeditedRolloutMetadata">
<prop type="boolean" name="enabled"/>
<prop type="string" name="expeditedRolloutIntent">
<enum>
<item value=""Hotfix""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="expeditedRolloutSubmitters">
<item type="string"/>
</prop>
<prop type="string" name="incidentContactEmail"/>
<prop type="string" name="incidentRoutingService"/>
<prop type="string" name="incidentRoutingTeam"/>
<prop type="array<string>" name="manifestOwners">
<item type="string"/>
</prop>
<prop type="string" name="pcCode"/>
<prop type="string" name="profitCenterProgramId"/>
<prop type="string" name="resourceAccessPolicy">
<enum>
<item value=""AcisActionAllowed""/>
<item value=""AcisReadAllowed""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="array<@ResourceAccessRole_read>" name="resourceAccessRoles">
<item type="@ResourceAccessRole_read"/>
</prop>
<prop type="array<string>" name="schemaOwners">
<item type="string"/>
</prop>
<prop type="array<@ServiceTreeInfo_read>" name="serviceTreeInfos">
<item type="@ServiceTreeInfo_read"/>
</prop>
</prop>
<prop type="string" name="manifestLink"/>
<prop type="object" name="marketplaceOptions">
<prop type="boolean" name="addOnPlanConversionAllowed"/>
</prop>
<prop type="string" name="marketplaceType">
<enum>
<item value=""AddOn""/>
<item value=""Bypass""/>
<item value=""NotSpecified""/>
<item value=""ProviderHub""/>
<item value=""Store""/>
</enum>
</prop>
<prop type="object" name="metadata">
<additionalProp>
<item type="object">
<additionalProp anyType="True"/>
</item>
</additionalProp>
</prop>
<prop type="@Notifications_read" name="notifications"/>
<prop type="object" name="onBehalfOfTokens">
<prop type="string" name="actionName"/>
<prop type="string" name="lifeTime"/>
</prop>
<prop type="object" name="openApiConfiguration">
<prop type="object" name="validation">
<prop type="boolean" name="allowNoncompliantCollectionResponse"/>
</prop>
</prop>
<prop type="string" name="policyExecutionType">
<enum>
<item value=""BypassPolicies""/>
<item value=""ExecutePolicies""/>
<item value=""ExpectPartialPutRequests""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="privateEndpointConfiguration">
<prop type="array<object>" name="groupConnectivityInformation" required="True">
<item type="object">
<prop type="string" name="groupId" required="True"/>
<prop type="string" name="redirectMapId"/>
<prop type="array<string>" name="requiredMembers" required="True">
<item type="string"/>
</prop>
<prop type="array<string>" name="requiredZoneNames" required="True">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="string" name="minApiVersion" required="True"/>
</prop>
<prop readOnly="True" type="string" name="provisioningState">
<enum>
<item value=""Accepted""/>
<item value=""Canceled""/>
<item value=""Created""/>
<item value=""Creating""/>
<item value=""Deleted""/>
<item value=""Deleting""/>
<item value=""Failed""/>
<item value=""MovingResources""/>
<item value=""NotSpecified""/>
<item value=""RolloutInProgress""/>
<item value=""Running""/>
<item value=""Succeeded""/>
<item value=""TransientFailure""/>
</enum>
</prop>
<prop type="object" name="quotaRule">
<prop type="array<object>" name="locationRules">
<item type="object">
<prop type="string" name="location"/>
<prop type="string" name="policy">
<enum>
<item value=""Default""/>
<item value=""None""/>
<item value=""Restricted""/>
</enum>
</prop>
<prop type="string" name="quotaId"/>
</item>
</prop>
<prop type="string" name="quotaPolicy">
<enum>
<item value=""Default""/>
<item value=""None""/>
<item value=""Restricted""/>
</enum>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
</prop>
<prop type="string" name="regionality">
<enum>
<item value=""Global""/>
<item value=""NotSpecified""/>
<item value=""Regional""/>
</enum>
</prop>
<prop type="object" name="requestHeaderOptions">
<prop type="string" name="optInHeaders">
<enum>
<item value=""ClientGroupMembership""/>
<item value=""ClientPrincipalNameEncoded""/>
<item value=""MSIResourceIdEncoded""/>
<item value=""ManagementGroupAncestorsEncoded""/>
<item value=""NotSpecified""/>
<item value=""PrivateLinkId""/>
<item value=""PrivateLinkResourceId""/>
<item value=""PrivateLinkVnetTrafficTag""/>
<item value=""ResourceGroupLocation""/>
<item value=""SignedAuxiliaryTokens""/>
<item value=""SignedUserToken""/>
<item value=""UnboundedClientGroupMembership""/>
</enum>
</prop>
<prop type="string" name="optOutHeaders">
<enum>
<item value=""NotSpecified""/>
<item value=""SystemDataCreatedByLastModifiedBy""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
<prop type="object" name="resourceCache">
<prop type="boolean" name="enableResourceCache"/>
<prop type="string" name="resourceCacheExpirationTimespan"/>
</prop>
<prop type="object" name="resourceConcurrencyControlOptions">
<additionalProp>
<item type="object">
<prop type="string" name="policy">
<enum>
<item value=""NotSpecified""/>
<item value=""SynchronizeBeginExtension""/>
</enum>
</prop>
</item>
</additionalProp>
</prop>
<prop type="string" name="resourceDeletionPolicy">
<enum>
<item value=""CascadeDeleteAll""/>
<item value=""CascadeDeleteProxyOnlyChildren""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="resourceGraphConfiguration">
<prop type="string" name="apiVersion"/>
<prop type="boolean" name="enabled"/>
</prop>
<prop type="object" name="resourceManagementOptions">
<prop type="object" name="batchProvisioningSupport">
<prop type="array<object>" name="actionConfigurations">
<item type="object">
<prop type="string" name="authorizationAction"/>
<prop type="integer64" name="maxBatchSize"/>
</item>
</prop>
<prop type="string" name="batchContractVersion"/>
<prop type="integer64" name="maxBatchSize"/>
<prop type="integer64" name="maxNestedBatchSize"/>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
<prop type="string" name="supportedOperations">
<enum>
<item value=""Delete""/>
<item value=""Get""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="deleteDependencies" identifiers="requiredFeatures linkedProperty linkedType">
<item type="object">
<prop type="string" name="linkedProperty"/>
<prop type="string" name="linkedType"/>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="object" name="nestedProvisioningSupport">
<prop type="string" name="minimumApiVersion"/>
</prop>
</prop>
<prop type="object" name="resourceMovePolicy">
<prop type="boolean" name="crossResourceGroupMoveEnabled"/>
<prop type="boolean" name="crossSubscriptionMoveEnabled"/>
<prop type="boolean" name="validationRequired"/>
</prop>
<prop type="@ResourceProviderAuthorizationRules_read" name="resourceProviderAuthorizationRules"/>
<prop type="object" name="resourceQueryManagement">
<prop type="string" name="filterOption">
<enum>
<item value=""EnableSubscriptionFilterOnTenant""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="string" name="resourceSubType">
<enum>
<item value=""AsyncOperation""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="resourceTypeCommonAttributeManagement">
<prop type="string" name="commonApiVersionsMergeMode">
<enum>
<item value=""Merge""/>
<item value=""Overwrite""/>
</enum>
</prop>
</prop>
<prop type="string" name="resourceValidation">
<enum>
<item value=""NotSpecified""/>
<item value=""ProfaneWords""/>
<item value=""ReservedWords""/>
</enum>
</prop>
<prop type="object" name="routingRule">
<prop type="string" name="hostResourceType"/>
</prop>
<prop type="string" name="routingType">
<enum>
<item value=""CascadeExtension""/>
<item value=""Default""/>
<item value=""Extension""/>
<item value=""Failover""/>
<item value=""Fanout""/>
<item value=""HostBased""/>
<item value=""LocationBased""/>
<item value=""ProxyOnly""/>
<item value=""Tenant""/>
</enum>
</prop>
<prop type="array<@ServiceTreeInfo_read>" name="serviceTreeInfos">
<item type="@ServiceTreeInfo_read"/>
</prop>
<prop type="string" name="skuLink"/>
<prop type="object" name="subscriptionLifecycleNotificationSpecifications">
<prop type="duration" name="softDeleteTTL"/>
<prop type="array<@SubscriptionStateOverrideAction_read>" name="subscriptionStateOverrideActions">
<item type="@SubscriptionStateOverrideAction_read"/>
</prop>
</prop>
<prop type="array<object>" name="subscriptionStateRules">
<item type="object">
<prop type="array<string>" name="allowedActions">
<item type="string"/>
</prop>
<prop type="string" name="state">
<enum>
<item value=""Deleted""/>
<item value=""Disabled""/>
<item value=""Enabled""/>
<item value=""NotDefined""/>
<item value=""PastDue""/>
<item value=""Warned""/>
</enum>
</prop>
</item>
</prop>
<prop type="boolean" name="superScaleEnabled"/>
<prop type="boolean" name="supportsTags"/>
<prop type="array<object>" name="swaggerSpecifications" identifiers="swaggerSpecFolderUri">
<item type="object">
<prop type="array<string>" name="apiVersions">
<item type="string"/>
</prop>
<prop type="string" name="swaggerSpecFolderUri"/>
</item>
</prop>
<prop type="object" name="templateDeploymentOptions">
<prop type="array<string>" name="preflightOptions">
<item type="string">
<enum>
<item value=""ContinueDeploymentOnFailure""/>
<item value=""DefaultValidationOnly""/>
<item value=""None""/>
</enum>
</item>
</prop>
<prop type="boolean" name="preflightSupported"/>
</prop>
<prop type="object" name="templateDeploymentPolicy">
<prop type="string" name="capabilities" required="True">
<enum>
<item value=""Default""/>
<item value=""Preflight""/>
</enum>
</prop>
<prop type="string" name="preflightNotifications">
<enum>
<item value=""None""/>
<item value=""UnregisteredSubscriptions""/>
</enum>
</prop>
<prop type="string" name="preflightOptions" required="True">
<enum>
<item value=""DeploymentRequests""/>
<item value=""None""/>
<item value=""RegisteredOnly""/>
<item value=""TestOnly""/>
<item value=""ValidationRequests""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="throttlingRules">
<item type="object">
<prop type="string" name="action" required="True"/>
<prop type="array<string>" name="applicationId">
<item type="string"/>
</prop>
<prop type="array<object>" name="metrics" required="True">
<item type="object">
<prop type="string" name="bucketSize"/>
<prop type="duration" name="interval"/>
<prop type="integer64" name="limit" required="True"/>
<prop type="string" name="type" required="True">
<enum>
<item value=""NotSpecified""/>
<item value=""NumberOfRequests""/>
<item value=""NumberOfResources""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<string>" name="requiredFeatures">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="@TokenAuthConfiguration_read" name="tokenAuthConfiguration"/>
<prop type="object" name="writeLock">
<prop type="string" name="state">
<default value=""Disabled""/>
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
</enum>
</prop>
</prop>
</prop>
<prop readOnly="True" type="@SystemData_read" name="systemData"/>
<prop readOnly="True" type="string" name="type"/>
</item>
</prop>
<prop type="string" name="rolloutId"/>
<prop type="boolean" name="skipReleaseScopeValidation"/>
</prop>
<prop type="object" name="status">
<prop type="array<string>" name="completedRegions">
<item type="string"/>
</prop>
<prop type="object" name="failedOrSkippedRegions">
<additionalProp>
<item type="object" cls="ExtendedErrorInfo_read">
<prop type="array<object>" name="additionalInfo" identifiers="type">
<item type="object">
<prop readOnly="True" type="object" name="info">
<additionalProp readOnly="True" anyType="True"/>
</prop>
<prop type="string" name="type" required="True"/>
</item>
</prop>
<prop type="string" name="code"/>
<prop type="array<@ExtendedErrorInfo_read>" name="details" identifiers="code">
<item type="@ExtendedErrorInfo_read"/>
</prop>
<prop type="string" name="message"/>
<prop type="string" name="target"/>
</item>
</additionalProp>
</prop>
<prop type="object" name="manifestCheckinStatus">
<prop type="string" name="commitId"/>
<prop type="boolean" name="isCheckedIn" required="True"/>
<prop type="string" name="pullRequest"/>
<prop type="string" name="statusMessage" required="True"/>
</prop>
</prop>
</prop>
<prop readOnly="True" type="@SystemData_read" name="systemData"/>
<prop readOnly="True" type="string" name="type"/>
</schema>
</json>
</body>
</response>
<response isError="True">
<body>
<json>
<schema type="@MgmtErrorFormat"/>
</json>
</body>
</response>
</http>
</operation>
<operation>
<instanceUpdate ref="$Instance">
<json>
<schema type="object" name="properties" required="True" clientFlatten="True">
<prop type="object" name="properties" required="True">
<prop type="object" name="specification" arg="$properties.properties.specification" required="True">
<prop type="object" name="autoProvisionConfig" arg="$properties.properties.specification.autoProvisionConfig">
<prop type="boolean" name="resourceGraph" arg="$properties.properties.specification.autoProvisionConfig.resourceGraph"/>
<prop type="boolean" name="storage" arg="$properties.properties.specification.autoProvisionConfig.storage"/>
</prop>
<prop type="object" name="canary" arg="$properties.properties.specification.canary">
<prop type="array<string>" name="regions" arg="$properties.properties.specification.canary.regions">
<item type="string"/>
</prop>
</prop>
<prop type="object" name="manifestCheckinSpecification" arg="$properties.properties.specification.manifestCheckinSpecification">
<prop type="string" name="manifestCheckinOption" arg="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinOption">
<default value=""DoNotAttemptAutomaticManifestCheckin""/>
<enum>
<item value=""AttemptAutomaticManifestCheckin""/>
<item value=""DoNotAttemptAutomaticManifestCheckin""/>
</enum>
</prop>
<prop type="object" name="manifestCheckinParams" arg="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinParams">
<prop type="string" name="baselineArmManifestLocation" arg="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinParams.baselineArmManifestLocation" required="True"/>
<prop type="string" name="environment" arg="$properties.properties.specification.manifestCheckinSpecification.manifestCheckinParams.environment" required="True"/>
</prop>
</prop>
<prop type="object" name="providerRegistration" arg="$properties.properties.specification.providerRegistration">
<prop type="string" name="kind" arg="$properties.properties.specification.providerRegistration.kind">
<default value=""Managed""/>
<enum>
<item value=""Direct""/>
<item value=""Hybrid""/>
<item value=""Managed""/>
</enum>
</prop>
<prop type="object" name="properties">
<prop type="array<object>" name="capabilities" arg="$properties.properties.specification.providerRegistration.properties.capabilities" identifiers="quotaId">
<item type="object">
<prop type="string" name="effect" arg="$properties.properties.specification.providerRegistration.properties.capabilities[].effect" required="True">
<enum>
<item value=""Allow""/>
<item value=""Disallow""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="string" name="quotaId" arg="$properties.properties.specification.providerRegistration.properties.capabilities[].quotaId" required="True"/>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.providerRegistration.properties.capabilities[].requiredFeatures">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="string" name="crossTenantTokenValidation" arg="$properties.properties.specification.providerRegistration.properties.crossTenantTokenValidation">
<enum>
<item value=""EnsureSecureValidation""/>
<item value=""PassthroughInsecureToken""/>
</enum>
</prop>
<prop type="string" name="customManifestVersion" arg="$properties.properties.specification.providerRegistration.properties.customManifestVersion"/>
<prop type="object" name="dstsConfiguration" arg="$properties.properties.specification.providerRegistration.properties.dstsConfiguration">
<prop type="string" name="serviceDnsName" arg="$properties.properties.specification.providerRegistration.properties.dstsConfiguration.serviceDnsName"/>
<prop type="string" name="serviceName" arg="$properties.properties.specification.providerRegistration.properties.dstsConfiguration.serviceName" required="True"/>
</prop>
<prop type="boolean" name="enablePresetResourceTypes" arg="$properties.properties.specification.providerRegistration.properties.enablePresetResourceTypes"/>
<prop nullable="True" type="boolean" name="enableTenantLinkedNotification" arg="$properties.properties.specification.providerRegistration.properties.enableTenantLinkedNotification"/>
<prop type="object" name="featuresRule" arg="$properties.properties.specification.providerRegistration.properties.featuresRule">
<prop type="string" name="requiredFeaturesPolicy" arg="$properties.properties.specification.providerRegistration.properties.featuresRule.requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="globalNotificationEndpoints" arg="$properties.properties.specification.providerRegistration.properties.globalNotificationEndpoints">
<item type="object" cls="ResourceProviderEndpoint_update">
<prop type="array<string>" name="apiVersions" arg="@ResourceProviderEndpoint_update.apiVersions">
<item type="string"/>
</prop>
<prop type="boolean" name="enabled" arg="@ResourceProviderEndpoint_update.enabled"/>
<prop type="string" name="endpointType" arg="@ResourceProviderEndpoint_update.endpointType">
<enum>
<item value=""Canary""/>
<item value=""NotSpecified""/>
<item value=""Production""/>
<item value=""TestInProduction""/>
</enum>
</prop>
<prop type="string" name="endpointUri" arg="@ResourceProviderEndpoint_update.endpointUri"/>
<prop type="object" name="featuresRule" arg="@ResourceProviderEndpoint_update.featuresRule">
<prop type="string" name="requiredFeaturesPolicy" arg="@ResourceProviderEndpoint_update.featuresRule.requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="locations" arg="@ResourceProviderEndpoint_update.locations">
<item type="string"/>
</prop>
<prop type="array<string>" name="requiredFeatures" arg="@ResourceProviderEndpoint_update.requiredFeatures">
<item type="string"/>
</prop>
<prop type="string" name="skuLink" arg="@ResourceProviderEndpoint_update.skuLink"/>
<prop type="duration" name="timeout" arg="@ResourceProviderEndpoint_update.timeout"/>
</item>
</prop>
<prop type="string" name="legacyNamespace" arg="$properties.properties.specification.providerRegistration.properties.legacyNamespace"/>
<prop type="array<string>" name="legacyRegistrations" arg="$properties.properties.specification.providerRegistration.properties.legacyRegistrations">
<item type="string"/>
</prop>
<prop type="array<object>" name="linkedNotificationRules" arg="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules">
<item type="object">
<prop type="array<string>" name="actions" arg="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].actions">
<item type="string"/>
</prop>
<prop type="object" name="dstsConfiguration" arg="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].dstsConfiguration">
<prop type="string" name="serviceDnsName" arg="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].dstsConfiguration.serviceDnsName"/>
<prop type="string" name="serviceName" arg="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].dstsConfiguration.serviceName" required="True"/>
</prop>
<prop type="array<@ResourceProviderEndpoint_update>" name="endpoints" arg="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].endpoints">
<item type="@ResourceProviderEndpoint_update"/>
</prop>
<prop type="object" name="tokenAuthConfiguration" arg="$properties.properties.specification.providerRegistration.properties.linkedNotificationRules[].tokenAuthConfiguration" cls="TokenAuthConfiguration_update">
<prop type="string" name="authenticationScheme" arg="@TokenAuthConfiguration_update.authenticationScheme">
<enum>
<item value=""Bearer""/>
<item value=""PoP""/>
</enum>
</prop>
<prop type="boolean" name="disableCertificateAuthenticationFallback" arg="@TokenAuthConfiguration_update.disableCertificateAuthenticationFallback"/>
<prop type="string" name="signedRequestScope" arg="@TokenAuthConfiguration_update.signedRequestScope">
<enum>
<item value=""Endpoint""/>
<item value=""ResourceUri""/>
</enum>
</prop>
</prop>
</item>
</prop>
<prop type="object" name="management" arg="$properties.properties.specification.providerRegistration.properties.management">
<prop type="array<string>" name="authorizationOwners" arg="$properties.properties.specification.providerRegistration.properties.management.authorizationOwners">
<item type="string"/>
</prop>
<prop type="array<string>" name="canaryManifestOwners" arg="$properties.properties.specification.providerRegistration.properties.management.canaryManifestOwners">
<item type="string"/>
</prop>
<prop type="object" name="errorResponseMessageOptions" arg="$properties.properties.specification.providerRegistration.properties.management.errorResponseMessageOptions">
<prop type="string" name="serverFailureResponseMessageType" arg="$properties.properties.specification.providerRegistration.properties.management.errorResponseMessageOptions.serverFailureResponseMessageType">
<enum>
<item value=""NotSpecified""/>
<item value=""OutageReporting""/>
</enum>
</prop>
</prop>
<prop type="object" name="expeditedRolloutMetadata" arg="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutMetadata">
<prop type="boolean" name="enabled" arg="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutMetadata.enabled"/>
<prop type="string" name="expeditedRolloutIntent" arg="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutMetadata.expeditedRolloutIntent">
<enum>
<item value=""Hotfix""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="expeditedRolloutSubmitters" arg="$properties.properties.specification.providerRegistration.properties.management.expeditedRolloutSubmitters">
<item type="string"/>
</prop>
<prop type="string" name="incidentContactEmail" arg="$properties.properties.specification.providerRegistration.properties.management.incidentContactEmail"/>
<prop type="string" name="incidentRoutingService" arg="$properties.properties.specification.providerRegistration.properties.management.incidentRoutingService"/>
<prop type="string" name="incidentRoutingTeam" arg="$properties.properties.specification.providerRegistration.properties.management.incidentRoutingTeam"/>
<prop type="array<string>" name="manifestOwners" arg="$properties.properties.specification.providerRegistration.properties.management.manifestOwners">
<item type="string"/>
</prop>
<prop type="string" name="pcCode" arg="$properties.properties.specification.providerRegistration.properties.management.pcCode"/>
<prop type="string" name="profitCenterProgramId" arg="$properties.properties.specification.providerRegistration.properties.management.profitCenterProgramId"/>
<prop type="string" name="resourceAccessPolicy" arg="$properties.properties.specification.providerRegistration.properties.management.resourceAccessPolicy">
<enum>
<item value=""AcisActionAllowed""/>
<item value=""AcisReadAllowed""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="array<object>" name="resourceAccessRoles" arg="$properties.properties.specification.providerRegistration.properties.management.resourceAccessRoles">
<item type="object" cls="ResourceAccessRole_update">
<prop type="array<string>" name="actions" arg="@ResourceAccessRole_update.actions">
<item type="string"/>
</prop>
<prop type="array<string>" name="allowedGroupClaims" arg="@ResourceAccessRole_update.allowedGroupClaims">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="array<string>" name="schemaOwners" arg="$properties.properties.specification.providerRegistration.properties.management.schemaOwners">
<item type="string"/>
</prop>
<prop type="array<object>" name="serviceTreeInfos" arg="$properties.properties.specification.providerRegistration.properties.management.serviceTreeInfos">
<item type="object" cls="ServiceTreeInfo_update">
<prop type="string" name="componentId" arg="@ServiceTreeInfo_update.componentId"/>
<prop type="string" name="readiness" arg="@ServiceTreeInfo_update.readiness">
<enum>
<item value=""ClosingDown""/>
<item value=""Deprecated""/>
<item value=""GA""/>
<item value=""InDevelopment""/>
<item value=""InternalOnly""/>
<item value=""PrivatePreview""/>
<item value=""PublicPreview""/>
<item value=""RemovedFromARM""/>
<item value=""Retired""/>
</enum>
</prop>
<prop type="string" name="serviceId" arg="@ServiceTreeInfo_update.serviceId"/>
</item>
</prop>
</prop>
<prop type="array<@ResourceProviderEndpoint_update>" name="managementGroupGlobalNotificationEndpoints" arg="$properties.properties.specification.providerRegistration.properties.managementGroupGlobalNotificationEndpoints">
<item type="@ResourceProviderEndpoint_update"/>
</prop>
<prop type="object" name="metadata" arg="$properties.properties.specification.providerRegistration.properties.metadata">
<additionalProp anyType="True"/>
</prop>
<prop type="string" name="namespace" arg="$properties.properties.specification.providerRegistration.properties.namespace"/>
<prop type="string" name="notificationOptions" arg="$properties.properties.specification.providerRegistration.properties.notificationOptions">
<enum>
<item value=""EmitSpendingLimit""/>
<item value=""None""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="notificationSettings" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings">
<prop type="array<object>" name="subscriberSettings" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings">
<item type="object">
<prop type="array<object>" name="filterRules" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules">
<item type="object">
<prop type="array<object>" name="endpointInformation" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation">
<item type="object">
<prop type="string" name="endpoint" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation[].endpoint"/>
<prop type="string" name="endpointType" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation[].endpointType">
<enum>
<item value=""Eventhub""/>
<item value=""Webhook""/>
</enum>
</prop>
<prop type="string" name="schemaVersion" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].endpointInformation[].schemaVersion"/>
</item>
</prop>
<prop type="string" name="filterQuery" arg="$properties.properties.specification.providerRegistration.properties.notificationSettings.subscriberSettings[].filterRules[].filterQuery"/>
</item>
</prop>
</item>
</prop>
</prop>
<prop type="array<object>" name="notifications" arg="$properties.properties.specification.providerRegistration.properties.notifications" cls="Notifications_update">
<item type="object">
<prop type="string" name="notificationType" arg="@Notifications_update[].notificationType">
<enum>
<item value=""SubscriptionNotification""/>
<item value=""Unspecified""/>
</enum>
</prop>
<prop type="string" name="skipNotifications" arg="@Notifications_update[].skipNotifications">
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
<item value=""Unspecified""/>
</enum>
</prop>
</item>
</prop>
<prop type="string" name="oboSubscriptionId" arg="$properties.properties.specification.providerRegistration.properties.oboSubscriptionId"/>
<prop type="array<string>" name="optionalFeatures" arg="$properties.properties.specification.providerRegistration.properties.optionalFeatures">
<item type="string"/>
</prop>
<prop type="object" name="privateResourceProviderConfiguration" arg="$properties.properties.specification.providerRegistration.properties.privateResourceProviderConfiguration">
<prop type="array<string>" name="allowedSubscriptions" arg="$properties.properties.specification.providerRegistration.properties.privateResourceProviderConfiguration.allowedSubscriptions">
<item type="string"/>
</prop>
</prop>
<prop type="object" name="providerAuthentication" arg="$properties.properties.specification.providerRegistration.properties.providerAuthentication">
<prop type="array<string>" name="allowedAudiences" arg="$properties.properties.specification.providerRegistration.properties.providerAuthentication.allowedAudiences" required="True">
<item type="string"/>
</prop>
</prop>
<prop type="array<object>" name="providerAuthorizations" arg="$properties.properties.specification.providerRegistration.properties.providerAuthorizations">
<item type="object" cls="ResourceProviderAuthorization_update">
<prop type="array<object>" name="allowedThirdPartyExtensions" arg="@ResourceProviderAuthorization_update.allowedThirdPartyExtensions" identifiers="name">
<item type="object">
<prop type="string" name="name" arg="@ResourceProviderAuthorization_update.allowedThirdPartyExtensions[].name"/>
</item>
</prop>
<prop type="string" name="applicationId" arg="@ResourceProviderAuthorization_update.applicationId"/>
<prop type="string" name="groupingTag" arg="@ResourceProviderAuthorization_update.groupingTag"/>
<prop type="object" name="managedByAuthorization" arg="@ResourceProviderAuthorization_update.managedByAuthorization">
<prop type="array<object>" name="additionalAuthorizations" arg="@ResourceProviderAuthorization_update.managedByAuthorization.additionalAuthorizations" identifiers="roleDefinitionId applicationId">
<item type="object">
<prop type="string" name="applicationId" arg="@ResourceProviderAuthorization_update.managedByAuthorization.additionalAuthorizations[].applicationId"/>
<prop type="string" name="roleDefinitionId" arg="@ResourceProviderAuthorization_update.managedByAuthorization.additionalAuthorizations[].roleDefinitionId"/>
</item>
</prop>
<prop type="boolean" name="allowManagedByInheritance" arg="@ResourceProviderAuthorization_update.managedByAuthorization.allowManagedByInheritance"/>
<prop type="string" name="managedByResourceRoleDefinitionId" arg="@ResourceProviderAuthorization_update.managedByAuthorization.managedByResourceRoleDefinitionId"/>
</prop>
<prop type="string" name="managedByRoleDefinitionId" arg="@ResourceProviderAuthorization_update.managedByRoleDefinitionId"/>
<prop type="string" name="roleDefinitionId" arg="@ResourceProviderAuthorization_update.roleDefinitionId"/>
</item>
</prop>
<prop type="object" name="providerHubMetadata" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata">
<prop type="string" name="directRpRoleDefinitionId" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.directRpRoleDefinitionId"/>
<prop type="string" name="globalAsyncOperationResourceTypeName" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.globalAsyncOperationResourceTypeName"/>
<prop type="object" name="providerAuthentication" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.providerAuthentication">
<prop type="array<string>" name="allowedAudiences" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.providerAuthentication.allowedAudiences" required="True">
<item type="string"/>
</prop>
</prop>
<prop type="array<@ResourceProviderAuthorization_update>" name="providerAuthorizations" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.providerAuthorizations">
<item type="@ResourceProviderAuthorization_update"/>
</prop>
<prop type="string" name="regionalAsyncOperationResourceTypeName" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.regionalAsyncOperationResourceTypeName"/>
<prop type="object" name="thirdPartyProviderAuthorization" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization">
<prop type="array<object>" name="authorizations" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.authorizations">
<item type="object">
<prop type="string" name="principalId" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.authorizations[].principalId" required="True"/>
<prop type="string" name="roleDefinitionId" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.authorizations[].roleDefinitionId" required="True"/>
</item>
</prop>
<prop type="string" name="managedByTenantId" arg="$properties.properties.specification.providerRegistration.properties.providerHubMetadata.thirdPartyProviderAuthorization.managedByTenantId"/>
</prop>
</prop>
<prop type="string" name="providerType" arg="$properties.properties.specification.providerRegistration.properties.providerType">
<enum>
<item value=""AuthorizationFree""/>
<item value=""Decommissioned""/>
<item value=""External""/>
<item value=""Hidden""/>
<item value=""Internal""/>
<item value=""LegacyRegistrationRequired""/>
<item value=""NotSpecified""/>
<item value=""RegistrationFree""/>
<item value=""TenantOnly""/>
</enum>
</prop>
<prop type="string" name="providerVersion" arg="$properties.properties.specification.providerRegistration.properties.providerVersion"/>
<prop type="object" name="requestHeaderOptions" arg="$properties.properties.specification.providerRegistration.properties.requestHeaderOptions">
<prop type="string" name="optInHeaders" arg="$properties.properties.specification.providerRegistration.properties.requestHeaderOptions.optInHeaders">
<enum>
<item value=""ClientGroupMembership""/>
<item value=""ClientPrincipalNameEncoded""/>
<item value=""MSIResourceIdEncoded""/>
<item value=""ManagementGroupAncestorsEncoded""/>
<item value=""NotSpecified""/>
<item value=""PrivateLinkId""/>
<item value=""PrivateLinkResourceId""/>
<item value=""PrivateLinkVnetTrafficTag""/>
<item value=""ResourceGroupLocation""/>
<item value=""SignedAuxiliaryTokens""/>
<item value=""SignedUserToken""/>
<item value=""UnboundedClientGroupMembership""/>
</enum>
</prop>
<prop type="string" name="optOutHeaders" arg="$properties.properties.specification.providerRegistration.properties.requestHeaderOptions.optOutHeaders">
<enum>
<item value=""NotSpecified""/>
<item value=""SystemDataCreatedByLastModifiedBy""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.providerRegistration.properties.requiredFeatures">
<item type="string"/>
</prop>
<prop type="object" name="resourceGroupLockOptionDuringMove" arg="$properties.properties.specification.providerRegistration.properties.resourceGroupLockOptionDuringMove">
<prop type="string" name="blockActionVerb" arg="$properties.properties.specification.providerRegistration.properties.resourceGroupLockOptionDuringMove.blockActionVerb">
<enum>
<item value=""Action""/>
<item value=""Delete""/>
<item value=""NotSpecified""/>
<item value=""Read""/>
<item value=""Unrecognized""/>
<item value=""Write""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="resourceHydrationAccounts" arg="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts">
<item type="object">
<prop type="string" name="accountName" arg="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].accountName"/>
<prop type="string" name="encryptedKey" arg="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].encryptedKey"/>
<prop type="integer64" name="maxChildResourceConsistencyJobLimit" arg="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].maxChildResourceConsistencyJobLimit"/>
<prop type="string" name="subscriptionId" arg="$properties.properties.specification.providerRegistration.properties.resourceHydrationAccounts[].subscriptionId"/>
</item>
</prop>
<prop type="object" name="resourceProviderAuthorizationRules" arg="$properties.properties.specification.providerRegistration.properties.resourceProviderAuthorizationRules" cls="ResourceProviderAuthorizationRules_update">
<prop type="object" name="asyncOperationPollingRules" arg="@ResourceProviderAuthorizationRules_update.asyncOperationPollingRules">
<prop type="string" name="additionalOptions" arg="@ResourceProviderAuthorizationRules_update.asyncOperationPollingRules.additionalOptions">
<enum>
<item value=""ProtectedAsyncOperationPolling""/>
<item value=""ProtectedAsyncOperationPollingAuditOnly""/>
</enum>
</prop>
<prop type="array<string>" name="authorizationActions" arg="@ResourceProviderAuthorizationRules_update.asyncOperationPollingRules.authorizationActions">
<item type="string"/>
</prop>
</prop>
</prop>
<prop type="object" name="responseOptions" arg="$properties.properties.specification.providerRegistration.properties.responseOptions">
<prop type="string" name="serviceClientOptionsType" arg="$properties.properties.specification.providerRegistration.properties.responseOptions.serviceClientOptionsType">
<enum>
<item value=""DisableAutomaticDecompression""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="string" name="serviceName" arg="$properties.properties.specification.providerRegistration.properties.serviceName"/>
<prop type="array<object>" name="services" arg="$properties.properties.specification.providerRegistration.properties.services">
<item type="object">
<prop type="string" name="serviceName" arg="$properties.properties.specification.providerRegistration.properties.services[].serviceName"/>
<prop type="string" name="status" arg="$properties.properties.specification.providerRegistration.properties.services[].status">
<enum>
<item value=""Active""/>
<item value=""Inactive""/>
</enum>
</prop>
</item>
</prop>
<prop type="object" name="subscriptionLifecycleNotificationSpecifications" arg="$properties.properties.specification.providerRegistration.properties.subscriptionLifecycleNotificationSpecifications">
<prop type="duration" name="softDeleteTTL" arg="$properties.properties.specification.providerRegistration.properties.subscriptionLifecycleNotificationSpecifications.softDeleteTTL"/>
<prop type="array<object>" name="subscriptionStateOverrideActions" arg="$properties.properties.specification.providerRegistration.properties.subscriptionLifecycleNotificationSpecifications.subscriptionStateOverrideActions">
<item type="object" cls="SubscriptionStateOverrideAction_update">
<prop type="string" name="action" arg="@SubscriptionStateOverrideAction_update.action" required="True">
<enum>
<item value=""BillingCancellation""/>
<item value=""DeleteAllResources""/>
<item value=""NoOp""/>
<item value=""NotDefined""/>
<item value=""SoftDeleteAllResources""/>
<item value=""UndoSoftDelete""/>
</enum>
</prop>
<prop type="string" name="state" arg="@SubscriptionStateOverrideAction_update.state" required="True">
<enum>
<item value=""Deleted""/>
<item value=""Registered""/>
<item value=""Suspended""/>
<item value=""SuspendedToDeleted""/>
<item value=""SuspendedToRegistered""/>
<item value=""SuspendedToUnregistered""/>
<item value=""SuspendedToWarned""/>
<item value=""Unregistered""/>
<item value=""Warned""/>
<item value=""WarnedToDeleted""/>
<item value=""WarnedToRegistered""/>
<item value=""WarnedToSuspended""/>
<item value=""WarnedToUnregistered""/>
</enum>
</prop>
</item>
</prop>
</prop>
<prop type="object" name="templateDeploymentOptions" arg="$properties.properties.specification.providerRegistration.properties.templateDeploymentOptions">
<prop type="array<string>" name="preflightOptions" arg="$properties.properties.specification.providerRegistration.properties.templateDeploymentOptions.preflightOptions">
<item type="string">
<enum>
<item value=""ContinueDeploymentOnFailure""/>
<item value=""DefaultValidationOnly""/>
<item value=""None""/>
</enum>
</item>
</prop>
<prop type="boolean" name="preflightSupported" arg="$properties.properties.specification.providerRegistration.properties.templateDeploymentOptions.preflightSupported"/>
</prop>
<prop type="@TokenAuthConfiguration_update" name="tokenAuthConfiguration" arg="$properties.properties.specification.providerRegistration.properties.tokenAuthConfiguration"/>
</prop>
</prop>
<prop type="boolean" name="refreshSubscriptionRegistration" arg="$properties.properties.specification.refreshSubscriptionRegistration"/>
<prop type="array<string>" name="releaseScopes" arg="$properties.properties.specification.releaseScopes">
<item type="string"/>
</prop>
<prop type="array<object>" name="resourceTypeRegistrations" arg="$properties.properties.specification.resourceTypeRegistrations">
<item type="object">
<prop type="string" name="kind" arg="$properties.properties.specification.resourceTypeRegistrations[].kind">
<default value=""Managed""/>
<enum>
<item value=""Direct""/>
<item value=""Hybrid""/>
<item value=""Managed""/>
</enum>
</prop>
<prop type="object" name="properties">
<prop type="boolean" name="addResourceListTargetLocations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.addResourceListTargetLocations"/>
<prop type="string" name="additionalOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.additionalOptions">
<enum>
<item value=""ProtectedAsyncOperationPolling""/>
<item value=""ProtectedAsyncOperationPollingAuditOnly""/>
</enum>
</prop>
<prop type="boolean" name="allowEmptyRoleAssignments" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowEmptyRoleAssignments"/>
<prop type="array<object>" name="allowedResourceNames" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedResourceNames" identifiers="getActionVerb name">
<item type="object">
<prop type="string" name="getActionVerb" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedResourceNames[].getActionVerb"/>
<prop type="string" name="name" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedResourceNames[].name"/>
</item>
</prop>
<prop type="array<string>" name="allowedTemplateDeploymentReferenceActions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedTemplateDeploymentReferenceActions">
<item type="string"/>
</prop>
<prop type="array<string>" name="allowedUnauthorizedActions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActions">
<item type="string"/>
</prop>
<prop type="array<object>" name="allowedUnauthorizedActionsExtensions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActionsExtensions">
<item type="object">
<prop type="string" name="action" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActionsExtensions[].action"/>
<prop type="string" name="intent" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.allowedUnauthorizedActionsExtensions[].intent">
<enum>
<item value=""DEFERRED_ACCESS_CHECK""/>
<item value=""LOW_PRIVILEGE""/>
<item value=""NOT_SPECIFIED""/>
<item value=""RP_CONTRACT""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<object>" name="apiProfiles" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.apiProfiles" identifiers="profileVersion apiVersion">
<item type="object">
<prop type="string" name="apiVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.apiProfiles[].apiVersion"/>
<prop type="string" name="profileVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.apiProfiles[].profileVersion"/>
</item>
</prop>
<prop type="string" name="asyncOperationResourceTypeName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncOperationResourceTypeName"/>
<prop type="array<object>" name="asyncTimeoutRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncTimeoutRules">
<item type="object">
<prop type="string" name="actionName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncTimeoutRules[].actionName"/>
<prop type="string" name="timeout" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.asyncTimeoutRules[].timeout"/>
</item>
</prop>
<prop type="array<object>" name="authorizationActionMappings" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.authorizationActionMappings" identifiers="original">
<item type="object">
<prop type="string" name="desired" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.authorizationActionMappings[].desired"/>
<prop type="string" name="original" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.authorizationActionMappings[].original"/>
</item>
</prop>
<prop type="object" name="availabilityZoneRule" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.availabilityZoneRule">
<prop type="string" name="availabilityZonePolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.availabilityZoneRule.availabilityZonePolicy">
<enum>
<item value=""MultiZoned""/>
<item value=""NotSpecified""/>
<item value=""SingleZoned""/>
</enum>
</prop>
</prop>
<prop type="object" name="capacityRule" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.capacityRule">
<prop type="string" name="capacityPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.capacityRule.capacityPolicy">
<enum>
<item value=""Default""/>
<item value=""Restricted""/>
</enum>
</prop>
<prop type="string" name="skuAlias" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.capacityRule.skuAlias"/>
</prop>
<prop type="string" name="category" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.category">
<enum>
<item value=""FreeForm""/>
<item value=""Internal""/>
<item value=""None""/>
<item value=""PureProxy""/>
</enum>
</prop>
<prop type="object" name="checkNameAvailabilitySpecifications" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.checkNameAvailabilitySpecifications">
<prop type="boolean" name="enableDefaultValidation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.checkNameAvailabilitySpecifications.enableDefaultValidation"/>
<prop type="array<string>" name="resourceTypesWithCustomValidation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.checkNameAvailabilitySpecifications.resourceTypesWithCustomValidation">
<item type="string"/>
</prop>
</prop>
<prop type="array<string>" name="commonApiVersions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.commonApiVersions">
<item type="string"/>
</prop>
<prop type="string" name="crossTenantTokenValidation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.crossTenantTokenValidation">
<enum>
<item value=""EnsureSecureValidation""/>
<item value=""PassthroughInsecureToken""/>
</enum>
</prop>
<prop type="string" name="defaultApiVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.defaultApiVersion"/>
<prop type="array<string>" name="disallowedActionVerbs" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.disallowedActionVerbs">
<item type="string"/>
</prop>
<prop type="array<string>" name="disallowedEndUserOperations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.disallowedEndUserOperations">
<item type="string"/>
</prop>
<prop type="object" name="dstsConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.dstsConfiguration">
<prop type="string" name="serviceDnsName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.dstsConfiguration.serviceDnsName"/>
<prop type="string" name="serviceName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.dstsConfiguration.serviceName" required="True"/>
</prop>
<prop type="boolean" name="enableAsyncOperation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.enableAsyncOperation"/>
<prop type="boolean" name="enableThirdPartyS2S" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.enableThirdPartyS2S"/>
<prop type="array<object>" name="endpoints" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints">
<item type="object">
<prop type="string" name="apiVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].apiVersion"/>
<prop type="array<string>" name="apiVersions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].apiVersions">
<item type="string"/>
</prop>
<prop type="string" name="dataBoundary" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dataBoundary">
<enum>
<item value=""EU""/>
<item value=""Global""/>
<item value=""NotDefined""/>
<item value=""US""/>
</enum>
</prop>
<prop type="object" name="dstsConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dstsConfiguration">
<prop type="string" name="serviceDnsName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dstsConfiguration.serviceDnsName"/>
<prop type="string" name="serviceName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].dstsConfiguration.serviceName" required="True"/>
</prop>
<prop type="boolean" name="enabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].enabled"/>
<prop type="string" name="endpointType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].endpointType">
<enum>
<item value=""Canary""/>
<item value=""NotSpecified""/>
<item value=""Production""/>
<item value=""TestInProduction""/>
</enum>
</prop>
<prop type="string" name="endpointUri" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].endpointUri"/>
<prop type="array<object>" name="extensions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions" identifiers="endpointUri">
<item type="object">
<prop type="string" name="endpointUri" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions[].endpointUri"/>
<prop type="array<string>" name="extensionCategories" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions[].extensionCategories">
<item type="string">
<enum>
<item value=""BestMatchOperationBegin""/>
<item value=""NotSpecified""/>
<item value=""ResourceCreationBegin""/>
<item value=""ResourceCreationCompleted""/>
<item value=""ResourceCreationValidate""/>
<item value=""ResourceDeletionBegin""/>
<item value=""ResourceDeletionCompleted""/>
<item value=""ResourceDeletionValidate""/>
<item value=""ResourceMoveBegin""/>
<item value=""ResourceMoveCompleted""/>
<item value=""ResourcePatchBegin""/>
<item value=""ResourcePatchCompleted""/>
<item value=""ResourcePatchValidate""/>
<item value=""ResourcePostAction""/>
<item value=""ResourceReadBegin""/>
<item value=""ResourceReadValidate""/>
<item value=""SubscriptionLifecycleNotification""/>
<item value=""SubscriptionLifecycleNotificationDeletion""/>
</enum>
</item>
</prop>
<prop type="duration" name="timeout" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].extensions[].timeout"/>
</item>
</prop>
<prop type="object" name="featuresRule" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].featuresRule">
<prop type="string" name="requiredFeaturesPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].featuresRule.requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="string" name="kind" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].kind">
<default value=""Managed""/>
<enum>
<item value=""Direct""/>
<item value=""Managed""/>
</enum>
</prop>
<prop type="array<string>" name="locations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].locations">
<item type="string"/>
</prop>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].requiredFeatures">
<item type="string"/>
</prop>
<prop type="string" name="skuLink" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].skuLink"/>
<prop type="duration" name="timeout" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].timeout"/>
<prop type="@TokenAuthConfiguration_update" name="tokenAuthConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].tokenAuthConfiguration"/>
<prop type="array<string>" name="zones" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.endpoints[].zones">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="array<object>" name="extendedLocations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.extendedLocations">
<item type="object">
<prop type="string" name="supportedPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.extendedLocations[].supportedPolicy"/>
<prop type="string" name="type" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.extendedLocations[].type"/>
</item>
</prop>
<prop type="object" name="extensionOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions">
<prop type="object" name="resourceCreationBegin" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions.resourceCreationBegin">
<prop type="array<string>" name="request" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions.resourceCreationBegin.request">
<item type="string">
<enum>
<item value=""DoNotMergeExistingReadOnlyAndSecretProperties""/>
<item value=""IncludeInternalMetadata""/>
<item value=""NotSpecified""/>
</enum>
</item>
</prop>
<prop type="array<string>" name="response" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.extensionOptions.resourceCreationBegin.response">
<item type="string">
<enum>
<item value=""DoNotMergeExistingReadOnlyAndSecretProperties""/>
<item value=""IncludeInternalMetadata""/>
<item value=""NotSpecified""/>
</enum>
</item>
</prop>
</prop>
</prop>
<prop type="object" name="featuresRule" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.featuresRule">
<prop type="string" name="requiredFeaturesPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.featuresRule.requiredFeaturesPolicy" required="True">
<enum>
<item value=""All""/>
<item value=""Any""/>
</enum>
</prop>
</prop>
<prop type="string" name="frontdoorRequestMode" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.frontdoorRequestMode">
<enum>
<item value=""NotSpecified""/>
<item value=""UseManifest""/>
</enum>
</prop>
<prop type="string" name="groupingTag" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.groupingTag"/>
<prop type="object" name="identityManagement" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement">
<prop type="string" name="applicationId" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.applicationId"/>
<prop type="array<string>" name="applicationIds" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.applicationIds">
<item type="string"/>
</prop>
<prop type="array<string>" name="delegationAppIds" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.delegationAppIds">
<item type="string"/>
</prop>
<prop type="string" name="type" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.identityManagement.type">
<enum>
<item value=""Actor""/>
<item value=""DelegatedResourceIdentity""/>
<item value=""NotSpecified""/>
<item value=""SystemAssigned""/>
<item value=""UserAssigned""/>
</enum>
</prop>
</prop>
<prop type="boolean" name="isPureProxy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.isPureProxy"/>
<prop type="string" name="legacyName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyName"/>
<prop type="array<string>" name="legacyNames" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyNames">
<item type="string"/>
</prop>
<prop type="object" name="legacyPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy">
<prop type="array<object>" name="disallowedConditions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedConditions">
<item type="object">
<prop type="array<string>" name="disallowedLegacyOperations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedConditions[].disallowedLegacyOperations">
<item type="string">
<enum>
<item value=""Action""/>
<item value=""AzureAsyncOperationWaiting""/>
<item value=""Create""/>
<item value=""Delete""/>
<item value=""DeploymentCleanup""/>
<item value=""EvaluateDeploymentOutput""/>
<item value=""NotSpecified""/>
<item value=""Read""/>
<item value=""ResourceCacheWaiting""/>
<item value=""Waiting""/>
</enum>
</item>
</prop>
<prop type="string" name="feature" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedConditions[].feature"/>
</item>
</prop>
<prop type="array<string>" name="disallowedLegacyOperations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.legacyPolicy.disallowedLegacyOperations">
<item type="string">
<enum>
<item value=""Action""/>
<item value=""AzureAsyncOperationWaiting""/>
<item value=""Create""/>
<item value=""Delete""/>
<item value=""DeploymentCleanup""/>
<item value=""EvaluateDeploymentOutput""/>
<item value=""NotSpecified""/>
<item value=""Read""/>
<item value=""ResourceCacheWaiting""/>
<item value=""Waiting""/>
</enum>
</item>
</prop>
</prop>
<prop type="array<object>" name="linkedAccessChecks" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks">
<item type="object">
<prop type="string" name="actionName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].actionName"/>
<prop type="string" name="linkedAction" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedAction"/>
<prop type="string" name="linkedActionVerb" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedActionVerb"/>
<prop type="string" name="linkedProperty" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedProperty"/>
<prop type="string" name="linkedType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedAccessChecks[].linkedType"/>
</item>
</prop>
<prop type="array<object>" name="linkedNotificationRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules">
<item type="object">
<prop type="array<string>" name="actions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].actions">
<item type="string"/>
</prop>
<prop type="array<string>" name="actionsOnFailedOperation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].actionsOnFailedOperation">
<item type="string"/>
</prop>
<prop type="array<string>" name="fastPathActions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].fastPathActions">
<item type="string"/>
</prop>
<prop type="array<string>" name="fastPathActionsOnFailedOperation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].fastPathActionsOnFailedOperation">
<item type="string"/>
</prop>
<prop type="duration" name="linkedNotificationTimeout" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedNotificationRules[].linkedNotificationTimeout"/>
</item>
</prop>
<prop type="array<object>" name="linkedOperationRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules" identifiers="linkedOperation linkedAction">
<item type="object">
<prop type="array<string>" name="dependsOnTypes" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules[].dependsOnTypes">
<item type="string"/>
</prop>
<prop type="string" name="linkedAction" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules[].linkedAction" required="True">
<enum>
<item value=""Blocked""/>
<item value=""Enabled""/>
<item value=""NotSpecified""/>
<item value=""Validate""/>
</enum>
</prop>
<prop type="string" name="linkedOperation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.linkedOperationRules[].linkedOperation" required="True">
<enum>
<item value=""CrossResourceGroupResourceMove""/>
<item value=""CrossSubscriptionResourceMove""/>
<item value=""None""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<object>" name="loggingRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules">
<item type="object">
<prop type="string" name="action" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].action" required="True"/>
<prop type="string" name="detailLevel" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].detailLevel" required="True">
<enum>
<item value=""Body""/>
<item value=""None""/>
</enum>
</prop>
<prop type="string" name="direction" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].direction" required="True">
<enum>
<item value=""None""/>
<item value=""Request""/>
<item value=""Response""/>
</enum>
</prop>
<prop type="object" name="hiddenPropertyPaths" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].hiddenPropertyPaths">
<prop type="array<string>" name="hiddenPathsOnRequest" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].hiddenPropertyPaths.hiddenPathsOnRequest">
<item type="string"/>
</prop>
<prop type="array<string>" name="hiddenPathsOnResponse" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.loggingRules[].hiddenPropertyPaths.hiddenPathsOnResponse">
<item type="string"/>
</prop>
</prop>
</item>
</prop>
<prop type="object" name="managedResourceGroupConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration">
<prop type="array<string>" name="applicationIds" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.applicationIds">
<item type="string"/>
</prop>
<prop type="object" name="denyAssignmentConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.denyAssignmentConfiguration">
<prop type="boolean" name="enabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.denyAssignmentConfiguration.enabled"/>
<prop type="array<string>" name="notActions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.denyAssignmentConfiguration.notActions">
<item type="string"/>
</prop>
</prop>
<prop type="boolean" name="enabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.enabled"/>
<prop type="string" name="resourceGroupLocationOverride" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.managedResourceGroupConfiguration.resourceGroupLocationOverride"/>
</prop>
<prop type="object" name="management" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management">
<prop type="array<string>" name="authorizationOwners" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.authorizationOwners">
<item type="string"/>
</prop>
<prop type="array<string>" name="canaryManifestOwners" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.canaryManifestOwners">
<item type="string"/>
</prop>
<prop type="object" name="errorResponseMessageOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.errorResponseMessageOptions">
<prop type="string" name="serverFailureResponseMessageType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.errorResponseMessageOptions.serverFailureResponseMessageType">
<enum>
<item value=""NotSpecified""/>
<item value=""OutageReporting""/>
</enum>
</prop>
</prop>
<prop type="object" name="expeditedRolloutMetadata" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutMetadata">
<prop type="boolean" name="enabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutMetadata.enabled"/>
<prop type="string" name="expeditedRolloutIntent" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutMetadata.expeditedRolloutIntent">
<enum>
<item value=""Hotfix""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="expeditedRolloutSubmitters" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.expeditedRolloutSubmitters">
<item type="string"/>
</prop>
<prop type="string" name="incidentContactEmail" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.incidentContactEmail"/>
<prop type="string" name="incidentRoutingService" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.incidentRoutingService"/>
<prop type="string" name="incidentRoutingTeam" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.incidentRoutingTeam"/>
<prop type="array<string>" name="manifestOwners" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.manifestOwners">
<item type="string"/>
</prop>
<prop type="string" name="pcCode" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.pcCode"/>
<prop type="string" name="profitCenterProgramId" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.profitCenterProgramId"/>
<prop type="string" name="resourceAccessPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.resourceAccessPolicy">
<enum>
<item value=""AcisActionAllowed""/>
<item value=""AcisReadAllowed""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="array<@ResourceAccessRole_update>" name="resourceAccessRoles" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.resourceAccessRoles">
<item type="@ResourceAccessRole_update"/>
</prop>
<prop type="array<string>" name="schemaOwners" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.schemaOwners">
<item type="string"/>
</prop>
<prop type="array<@ServiceTreeInfo_update>" name="serviceTreeInfos" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.management.serviceTreeInfos">
<item type="@ServiceTreeInfo_update"/>
</prop>
</prop>
<prop type="string" name="manifestLink" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.manifestLink"/>
<prop type="object" name="marketplaceOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.marketplaceOptions">
<prop type="boolean" name="addOnPlanConversionAllowed" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.marketplaceOptions.addOnPlanConversionAllowed"/>
</prop>
<prop type="string" name="marketplaceType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.marketplaceType">
<enum>
<item value=""AddOn""/>
<item value=""Bypass""/>
<item value=""NotSpecified""/>
<item value=""ProviderHub""/>
<item value=""Store""/>
</enum>
</prop>
<prop type="object" name="metadata" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.metadata">
<additionalProp>
<item type="object">
<additionalProp anyType="True"/>
</item>
</additionalProp>
</prop>
<prop type="@Notifications_update" name="notifications" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.notifications"/>
<prop type="object" name="onBehalfOfTokens" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.onBehalfOfTokens">
<prop type="string" name="actionName" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.onBehalfOfTokens.actionName"/>
<prop type="string" name="lifeTime" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.onBehalfOfTokens.lifeTime"/>
</prop>
<prop type="object" name="openApiConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.openApiConfiguration">
<prop type="object" name="validation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.openApiConfiguration.validation">
<prop type="boolean" name="allowNoncompliantCollectionResponse" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.openApiConfiguration.validation.allowNoncompliantCollectionResponse"/>
</prop>
</prop>
<prop type="string" name="policyExecutionType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.policyExecutionType">
<enum>
<item value=""BypassPolicies""/>
<item value=""ExecutePolicies""/>
<item value=""ExpectPartialPutRequests""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="privateEndpointConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration">
<prop type="array<object>" name="groupConnectivityInformation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation" required="True">
<item type="object">
<prop type="string" name="groupId" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].groupId" required="True"/>
<prop type="string" name="redirectMapId" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].redirectMapId"/>
<prop type="array<string>" name="requiredMembers" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].requiredMembers" required="True">
<item type="string"/>
</prop>
<prop type="array<string>" name="requiredZoneNames" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.groupConnectivityInformation[].requiredZoneNames" required="True">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="string" name="minApiVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.privateEndpointConfiguration.minApiVersion" required="True"/>
</prop>
<prop type="object" name="quotaRule" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule">
<prop type="array<object>" name="locationRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules">
<item type="object">
<prop type="string" name="location" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules[].location"/>
<prop type="string" name="policy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules[].policy">
<enum>
<item value=""Default""/>
<item value=""None""/>
<item value=""Restricted""/>
</enum>
</prop>
<prop type="string" name="quotaId" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.locationRules[].quotaId"/>
</item>
</prop>
<prop type="string" name="quotaPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.quotaPolicy">
<enum>
<item value=""Default""/>
<item value=""None""/>
<item value=""Restricted""/>
</enum>
</prop>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.quotaRule.requiredFeatures">
<item type="string"/>
</prop>
</prop>
<prop type="string" name="regionality" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.regionality">
<enum>
<item value=""Global""/>
<item value=""NotSpecified""/>
<item value=""Regional""/>
</enum>
</prop>
<prop type="object" name="requestHeaderOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.requestHeaderOptions">
<prop type="string" name="optInHeaders" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.requestHeaderOptions.optInHeaders">
<enum>
<item value=""ClientGroupMembership""/>
<item value=""ClientPrincipalNameEncoded""/>
<item value=""MSIResourceIdEncoded""/>
<item value=""ManagementGroupAncestorsEncoded""/>
<item value=""NotSpecified""/>
<item value=""PrivateLinkId""/>
<item value=""PrivateLinkResourceId""/>
<item value=""PrivateLinkVnetTrafficTag""/>
<item value=""ResourceGroupLocation""/>
<item value=""SignedAuxiliaryTokens""/>
<item value=""SignedUserToken""/>
<item value=""UnboundedClientGroupMembership""/>
</enum>
</prop>
<prop type="string" name="optOutHeaders" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.requestHeaderOptions.optOutHeaders">
<enum>
<item value=""NotSpecified""/>
<item value=""SystemDataCreatedByLastModifiedBy""/>
</enum>
</prop>
</prop>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.requiredFeatures">
<item type="string"/>
</prop>
<prop type="object" name="resourceCache" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceCache">
<prop type="boolean" name="enableResourceCache" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceCache.enableResourceCache"/>
<prop type="string" name="resourceCacheExpirationTimespan" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceCache.resourceCacheExpirationTimespan"/>
</prop>
<prop type="object" name="resourceConcurrencyControlOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceConcurrencyControlOptions">
<additionalProp>
<item type="object">
<prop type="string" name="policy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceConcurrencyControlOptions{}.policy">
<enum>
<item value=""NotSpecified""/>
<item value=""SynchronizeBeginExtension""/>
</enum>
</prop>
</item>
</additionalProp>
</prop>
<prop type="string" name="resourceDeletionPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceDeletionPolicy">
<enum>
<item value=""CascadeDeleteAll""/>
<item value=""CascadeDeleteProxyOnlyChildren""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="resourceGraphConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceGraphConfiguration">
<prop type="string" name="apiVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceGraphConfiguration.apiVersion"/>
<prop type="boolean" name="enabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceGraphConfiguration.enabled"/>
</prop>
<prop type="object" name="resourceManagementOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions">
<prop type="object" name="batchProvisioningSupport" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport">
<prop type="array<object>" name="actionConfigurations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.actionConfigurations">
<item type="object">
<prop type="string" name="authorizationAction" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.actionConfigurations[].authorizationAction"/>
<prop type="integer64" name="maxBatchSize" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.actionConfigurations[].maxBatchSize"/>
</item>
</prop>
<prop type="string" name="batchContractVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.batchContractVersion"/>
<prop type="integer64" name="maxBatchSize" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.maxBatchSize"/>
<prop type="integer64" name="maxNestedBatchSize" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.maxNestedBatchSize"/>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.requiredFeatures">
<item type="string"/>
</prop>
<prop type="string" name="supportedOperations" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.batchProvisioningSupport.supportedOperations">
<enum>
<item value=""Delete""/>
<item value=""Get""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="deleteDependencies" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies" identifiers="requiredFeatures linkedProperty linkedType">
<item type="object">
<prop type="string" name="linkedProperty" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies[].linkedProperty"/>
<prop type="string" name="linkedType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies[].linkedType"/>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.deleteDependencies[].requiredFeatures">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="object" name="nestedProvisioningSupport" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.nestedProvisioningSupport">
<prop type="string" name="minimumApiVersion" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceManagementOptions.nestedProvisioningSupport.minimumApiVersion"/>
</prop>
</prop>
<prop type="object" name="resourceMovePolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy">
<prop type="boolean" name="crossResourceGroupMoveEnabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy.crossResourceGroupMoveEnabled"/>
<prop type="boolean" name="crossSubscriptionMoveEnabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy.crossSubscriptionMoveEnabled"/>
<prop type="boolean" name="validationRequired" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceMovePolicy.validationRequired"/>
</prop>
<prop type="@ResourceProviderAuthorizationRules_update" name="resourceProviderAuthorizationRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceProviderAuthorizationRules"/>
<prop type="object" name="resourceQueryManagement" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceQueryManagement">
<prop type="string" name="filterOption" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceQueryManagement.filterOption">
<enum>
<item value=""EnableSubscriptionFilterOnTenant""/>
<item value=""NotSpecified""/>
</enum>
</prop>
</prop>
<prop type="string" name="resourceSubType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceSubType">
<enum>
<item value=""AsyncOperation""/>
<item value=""NotSpecified""/>
</enum>
</prop>
<prop type="object" name="resourceTypeCommonAttributeManagement" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceTypeCommonAttributeManagement">
<prop type="string" name="commonApiVersionsMergeMode" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceTypeCommonAttributeManagement.commonApiVersionsMergeMode">
<enum>
<item value=""Merge""/>
<item value=""Overwrite""/>
</enum>
</prop>
</prop>
<prop type="string" name="resourceValidation" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.resourceValidation">
<enum>
<item value=""NotSpecified""/>
<item value=""ProfaneWords""/>
<item value=""ReservedWords""/>
</enum>
</prop>
<prop type="object" name="routingRule" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.routingRule">
<prop type="string" name="hostResourceType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.routingRule.hostResourceType"/>
</prop>
<prop type="string" name="routingType" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.routingType">
<enum>
<item value=""CascadeExtension""/>
<item value=""Default""/>
<item value=""Extension""/>
<item value=""Failover""/>
<item value=""Fanout""/>
<item value=""HostBased""/>
<item value=""LocationBased""/>
<item value=""ProxyOnly""/>
<item value=""Tenant""/>
</enum>
</prop>
<prop type="array<@ServiceTreeInfo_update>" name="serviceTreeInfos" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.serviceTreeInfos">
<item type="@ServiceTreeInfo_update"/>
</prop>
<prop type="string" name="skuLink" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.skuLink"/>
<prop type="object" name="subscriptionLifecycleNotificationSpecifications" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionLifecycleNotificationSpecifications">
<prop type="duration" name="softDeleteTTL" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionLifecycleNotificationSpecifications.softDeleteTTL"/>
<prop type="array<@SubscriptionStateOverrideAction_update>" name="subscriptionStateOverrideActions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionLifecycleNotificationSpecifications.subscriptionStateOverrideActions">
<item type="@SubscriptionStateOverrideAction_update"/>
</prop>
</prop>
<prop type="array<object>" name="subscriptionStateRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionStateRules">
<item type="object">
<prop type="array<string>" name="allowedActions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionStateRules[].allowedActions">
<item type="string"/>
</prop>
<prop type="string" name="state" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.subscriptionStateRules[].state">
<enum>
<item value=""Deleted""/>
<item value=""Disabled""/>
<item value=""Enabled""/>
<item value=""NotDefined""/>
<item value=""PastDue""/>
<item value=""Warned""/>
</enum>
</prop>
</item>
</prop>
<prop type="boolean" name="superScaleEnabled" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.superScaleEnabled"/>
<prop type="boolean" name="supportsTags" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.supportsTags"/>
<prop type="array<object>" name="swaggerSpecifications" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.swaggerSpecifications" identifiers="swaggerSpecFolderUri">
<item type="object">
<prop type="array<string>" name="apiVersions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.swaggerSpecifications[].apiVersions">
<item type="string"/>
</prop>
<prop type="string" name="swaggerSpecFolderUri" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.swaggerSpecifications[].swaggerSpecFolderUri"/>
</item>
</prop>
<prop type="object" name="templateDeploymentOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentOptions">
<prop type="array<string>" name="preflightOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentOptions.preflightOptions">
<item type="string">
<enum>
<item value=""ContinueDeploymentOnFailure""/>
<item value=""DefaultValidationOnly""/>
<item value=""None""/>
</enum>
</item>
</prop>
<prop type="boolean" name="preflightSupported" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentOptions.preflightSupported"/>
</prop>
<prop type="object" name="templateDeploymentPolicy" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy">
<prop type="string" name="capabilities" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy.capabilities" required="True">
<enum>
<item value=""Default""/>
<item value=""Preflight""/>
</enum>
</prop>
<prop type="string" name="preflightNotifications" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy.preflightNotifications">
<enum>
<item value=""None""/>
<item value=""UnregisteredSubscriptions""/>
</enum>
</prop>
<prop type="string" name="preflightOptions" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.templateDeploymentPolicy.preflightOptions" required="True">
<enum>
<item value=""DeploymentRequests""/>
<item value=""None""/>
<item value=""RegisteredOnly""/>
<item value=""TestOnly""/>
<item value=""ValidationRequests""/>
</enum>
</prop>
</prop>
<prop type="array<object>" name="throttlingRules" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules">
<item type="object">
<prop type="string" name="action" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].action" required="True"/>
<prop type="array<string>" name="applicationId" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].applicationId">
<item type="string"/>
</prop>
<prop type="array<object>" name="metrics" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics" required="True">
<item type="object">
<prop type="string" name="bucketSize" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].bucketSize"/>
<prop type="duration" name="interval" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].interval"/>
<prop type="integer64" name="limit" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].limit" required="True"/>
<prop type="string" name="type" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].metrics[].type" required="True">
<enum>
<item value=""NotSpecified""/>
<item value=""NumberOfRequests""/>
<item value=""NumberOfResources""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<string>" name="requiredFeatures" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.throttlingRules[].requiredFeatures">
<item type="string"/>
</prop>
</item>
</prop>
<prop type="@TokenAuthConfiguration_update" name="tokenAuthConfiguration" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.tokenAuthConfiguration"/>
<prop type="object" name="writeLock" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.writeLock">
<prop type="string" name="state" arg="$properties.properties.specification.resourceTypeRegistrations[].properties.writeLock.state">
<default value=""Disabled""/>
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
</enum>
</prop>
</prop>
</prop>
</item>
</prop>
<prop type="string" name="rolloutId" arg="$properties.properties.specification.rolloutId"/>
<prop type="boolean" name="skipReleaseScopeValidation" arg="$properties.properties.specification.skipReleaseScopeValidation"/>
</prop>
<prop type="object" name="status" arg="$properties.properties.status">
<prop type="array<string>" name="completedRegions" arg="$properties.properties.status.completedRegions">
<item type="string"/>
</prop>
<prop type="object" name="failedOrSkippedRegions" arg="$properties.properties.status.failedOrSkippedRegions">
<additionalProp>
<item type="object" cls="ExtendedErrorInfo_update">
<prop type="array<object>" name="additionalInfo" arg="@ExtendedErrorInfo_update.additionalInfo" identifiers="type">
<item type="object">
<prop type="string" name="type" arg="@ExtendedErrorInfo_update.additionalInfo[].type" required="True"/>
</item>
</prop>
<prop type="string" name="code" arg="@ExtendedErrorInfo_update.code"/>
<prop type="array<@ExtendedErrorInfo_update>" name="details" arg="@ExtendedErrorInfo_update.details" identifiers="code">
<item type="@ExtendedErrorInfo_update"/>
</prop>
<prop type="string" name="message" arg="@ExtendedErrorInfo_update.message"/>
<prop type="string" name="target" arg="@ExtendedErrorInfo_update.target"/>
</item>
</additionalProp>
</prop>
<prop type="object" name="manifestCheckinStatus" arg="$properties.properties.status.manifestCheckinStatus">
<prop type="string" name="commitId" arg="$properties.properties.status.manifestCheckinStatus.commitId"/>
<prop type="boolean" name="isCheckedIn" arg="$properties.properties.status.manifestCheckinStatus.isCheckedIn" required="True"/>
<prop type="string" name="pullRequest" arg="$properties.properties.status.manifestCheckinStatus.pullRequest"/>
<prop type="string" name="statusMessage" arg="$properties.properties.status.manifestCheckinStatus.statusMessage" required="True"/>
</prop>
</prop>
</prop>
</schema>
</json>
</instanceUpdate>
</operation>
<operation operationId="CustomRollouts_CreateOrUpdate">
<longRunning finalStateVia="azure-async-operation"/>
<http path="/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/customRollouts/{rolloutName}">
<request method="put">
<path>
<param type="string" name="providerNamespace" arg="$Path.providerNamespace" required="True"/>
<param type="string" name="rolloutName" arg="$Path.rolloutName" required="True">
<format pattern="^[-\w\._\(\)]+$" maxLength="260"/>
</param>
<param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True">
<format minLength="1"/>
</param>
</path>
<query>
<const readOnly="True" const="True" type="string" name="api-version" required="True">
<default value=""2025-03-01-preview""/>
<format minLength="1"/>
</const>
</query>
<body>
<json ref="$Instance"/>
</body>
</request>
<response statusCode="200 201">
<body>
<json var="$Instance">
<schema type="@CustomRollout_read"/>
</json>
</body>
</response>
<response isError="True">
<body>
<json>
<schema type="@MgmtErrorFormat"/>
</json>
</body>
</response>
</http>
</operation>
<output type="object" ref="$Instance" clientFlatten="True"/>
</command>
</commandGroup>
</CodeGen>