diff --git a/specification/providerhub/ProviderHub.Management/AuthorizedApplication.tsp b/specification/providerhub/ProviderHub.Management/AuthorizedApplication.tsp new file mode 100644 index 000000000000..216bd0a04926 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/AuthorizedApplication.tsp @@ -0,0 +1,58 @@ +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "@typespec/rest"; +import "./models.tsp"; +import "./ProviderRegistration.tsp"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using TypeSpec.Http; +using TypeSpec.OpenAPI; + +namespace Microsoft.ProviderHub; + +@parentResource(ProviderRegistration) +model AuthorizedApplication + is Azure.ResourceManager.ProxyResource { + ...ResourceNameParameter< + Resource = AuthorizedApplication, + KeyName = "applicationId", + SegmentName = "authorizedApplications", + NamePattern = "" + >; +} + +@armResourceOperations +interface AuthorizedApplications { + /** + * Gets the authorized application details. + */ + get is ArmResourceRead; + + /** + * Creates or updates the authorized application. + */ + createOrUpdate is ArmResourceCreateOrReplaceAsync; + + /** + * Deletes an authorized application. + */ + delete is ArmResourceDeleteSync; + + /** + * Gets the list of the authorized applications in the provider namespace. + */ + list is ArmResourceListByParent< + AuthorizedApplication, + Response = ArmResponse + >; +} + +#suppress "@azure-tools/typespec-azure-core/no-format" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +@@format(AuthorizedApplication.name, "uuid"); +@@doc(AuthorizedApplication.name, "The application ID."); +@@doc(AuthorizedApplication.properties, ""); +@@doc(AuthorizedApplications.createOrUpdate::parameters.resource, + "The authorized application properties supplied to the CreateOrUpdate operation." +); diff --git a/specification/providerhub/ProviderHub.Management/CustomRollout.tsp b/specification/providerhub/ProviderHub.Management/CustomRollout.tsp new file mode 100644 index 000000000000..47a9afa1259f --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/CustomRollout.tsp @@ -0,0 +1,62 @@ +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "@typespec/rest"; +import "./models.tsp"; +import "./ProviderRegistration.tsp"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using TypeSpec.Http; +using TypeSpec.OpenAPI; + +namespace Microsoft.ProviderHub; + +@parentResource(ProviderRegistration) +model CustomRollout + is Azure.ResourceManager.ProxyResource { + ...ResourceNameParameter< + Resource = CustomRollout, + KeyName = "rolloutName", + SegmentName = "customRollouts", + NamePattern = "^[-\\w\\._\\(\\)]+$" + >; +} + +@armResourceOperations +interface CustomRollouts { + /** + * Gets the custom rollout details. + */ + get is ArmResourceRead; + + /** + * Creates or updates the rollout details. + */ + createOrUpdate is ArmResourceCreateOrReplaceAsync; + + /** + * Deletes the custom rollout resource. Custom rollout must be in terminal state. + */ + delete is ArmResourceDeleteSync; + + /** + * Gets the list of the custom rollouts for the given provider. + */ + listByProviderRegistration is ArmResourceListByParent< + CustomRollout, + Response = ArmResponse + >; + + /** + * Stops or cancels the custom rollout, if in progress. + */ + stop is ArmResourceActionSync; +} + +@@maxLength(CustomRollout.name, 260); +@@doc(CustomRollout.name, "The rollout name."); +@@doc(CustomRollout.properties, "Properties of the rollout."); +@@doc(CustomRollouts.createOrUpdate::parameters.resource, + "The custom rollout properties supplied to the CreateOrUpdate operation." +); diff --git a/specification/providerhub/ProviderHub.Management/DefaultRollout.tsp b/specification/providerhub/ProviderHub.Management/DefaultRollout.tsp new file mode 100644 index 000000000000..6635827a5183 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/DefaultRollout.tsp @@ -0,0 +1,142 @@ +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "@typespec/rest"; +import "./models.tsp"; +import "./ProviderRegistration.tsp"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using TypeSpec.Http; +using TypeSpec.OpenAPI; + +namespace Microsoft.ProviderHub; + +@parentResource(ProviderRegistration) +model DefaultRollout + is Azure.ResourceManager.ProxyResource { + ...ResourceNameParameter< + Resource = DefaultRollout, + KeyName = "rolloutName", + SegmentName = "defaultRollouts", + NamePattern = "^[-\\w\\._\\(\\)]+$" + >; +} + +@armResourceOperations +interface DefaultRolloutOps + extends Azure.ResourceManager.Legacy.ExtensionOperations< + { + ...ApiVersionParameter, + ...SubscriptionIdParameter, + ...Azure.ResourceManager.Legacy.Provider, + + /** The name of the resource provider hosted within ProviderHub. */ + @path + @segment("providerRegistrations") + @key + providerNamespace: string, + }, + {}, + { + /** The rollout name. */ + @path + @segment("defaultRollouts") + @key + @maxLength(260) + @pattern("^[-\\w\\._\\(\\)]+$") + rolloutName: string, + } + > {} + +@armResourceOperations +interface DefaultRollouts { + /** + * Gets the default rollout details. + */ + get is DefaultRolloutOps.Read; + + /** + * Creates or updates the rollout details. + */ + createOrUpdate is DefaultRolloutOps.CreateOrUpdateAsync; + + /** + * Deletes the rollout resource. Rollout must be in terminal state. + */ + delete is DefaultRolloutOps.DeleteSync; + + /** + * Gets the list of the rollouts for the given provider. + */ + listByProviderRegistration is DefaultRolloutOps.List< + DefaultRollout, + Response = ArmResponse + >; + + /** + * Stops or cancels the rollout, if in progress. + */ + stop is DefaultRolloutOps.ActionSync< + DefaultRollout, + Request = void, + Response = OkResponse + >; +} +@armResourceOperations +interface NewRegionFrontloadReleaseOps + extends Azure.ResourceManager.Legacy.ExtensionOperations< + { + ...ApiVersionParameter, + ...SubscriptionIdParameter, + ...Azure.ResourceManager.Legacy.Provider, + + /** The name of the resource provider hosted within ProviderHub. */ + @path + @segment("providerRegistrations") + @key + providerNamespace: string, + }, + {}, + { + /** The name of the release. */ + @path + @segment("newRegionFrontloadRelease") + @key + @pattern("^[a-zA-Z0-9][a-zA-Z0-9_.-]*$") + releaseName: string, + } + > {} + +@armResourceOperations +interface NewRegionFrontloadRelease { + /** + * Gets a new region frontload release. + */ + get is NewRegionFrontloadReleaseOps.Read; + + /** + * Creates or updates a new region frontload release. + */ + createOrUpdate is NewRegionFrontloadReleaseOps.CreateOrUpdateSync< + FrontloadPayload, + Response = DefaultRollout | ArmCreatedResponse + >; + + /** + * Stops a new region frontload release. + */ + stop is NewRegionFrontloadReleaseOps.ActionSync< + DefaultRollout, + void, + OkResponse + >; +} + +@@maxLength(DefaultRollout.name, 260); +@@doc(DefaultRollout.name, "The rollout name."); +@@doc(DefaultRollout.properties, "Properties of the rollout."); +@@doc(DefaultRollouts.createOrUpdate::parameters.resource, + "The Default rollout properties supplied to the CreateOrUpdate operation." +); +@@doc(NewRegionFrontloadRelease.createOrUpdate::parameters.resource, ""); diff --git a/specification/providerhub/ProviderHub.Management/NotificationRegistration.tsp b/specification/providerhub/ProviderHub.Management/NotificationRegistration.tsp new file mode 100644 index 000000000000..5161908d1f70 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/NotificationRegistration.tsp @@ -0,0 +1,60 @@ +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "@typespec/rest"; +import "./models.tsp"; +import "./ProviderRegistration.tsp"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using TypeSpec.Http; +using TypeSpec.OpenAPI; + +namespace Microsoft.ProviderHub; + +@parentResource(ProviderRegistration) +model NotificationRegistration + is Azure.ResourceManager.ProxyResource { + ...ResourceNameParameter< + Resource = NotificationRegistration, + KeyName = "notificationRegistrationName", + SegmentName = "notificationRegistrations", + NamePattern = "" + >; +} + +@armResourceOperations +interface NotificationRegistrations { + /** + * Gets the notification registration details. + */ + get is ArmResourceRead; + + /** + * Creates or updates a notification registration. + */ + #suppress "@azure-tools/typespec-azure-resource-manager/arm-put-operation-response-codes" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + createOrUpdate is ArmResourceCreateOrReplaceSync< + NotificationRegistration, + Response = ArmResourceUpdatedResponse + >; + + /** + * Deletes a notification registration. + */ + delete is ArmResourceDeleteSync; + + /** + * Gets the list of the notification registrations for the given provider. + */ + listByProviderRegistration is ArmResourceListByParent< + NotificationRegistration, + Response = ArmResponse + >; +} + +@@doc(NotificationRegistration.name, "The notification registration."); +@@doc(NotificationRegistration.properties, ""); +@@doc(NotificationRegistrations.createOrUpdate::parameters.resource, + "The required body parameters supplied to the notification registration operation." +); diff --git a/specification/providerhub/ProviderHub.Management/OperationsPutContent.tsp b/specification/providerhub/ProviderHub.Management/OperationsPutContent.tsp new file mode 100644 index 000000000000..24b59b92c473 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/OperationsPutContent.tsp @@ -0,0 +1,56 @@ +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "@typespec/rest"; +import "./models.tsp"; +import "./ProviderRegistration.tsp"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using TypeSpec.Http; +using TypeSpec.OpenAPI; + +namespace Microsoft.ProviderHub; + +@singleton("default") +@parentResource(ProviderRegistration) +model OperationsPutContent + is Azure.ResourceManager.ProxyResource { + ...ResourceNameParameter< + Resource = OperationsPutContent, + KeyName = "operation", + SegmentName = "operations", + NamePattern = "" + >; +} + +@armResourceOperations +interface OperationsPutContents { + /** + * Gets the operations supported by the given provider. + */ + listByProviderRegistration is ArmResourceRead< + OperationsPutContent, + Response = ArmResponse + >; + + /** + * Creates or updates the operation supported by the given provider. + */ + #suppress "@azure-tools/typespec-azure-resource-manager/arm-put-operation-response-codes" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + createOrUpdate is ArmResourceCreateOrReplaceSync< + OperationsPutContent, + Response = ArmResourceUpdatedResponse + >; + + /** + * Deletes an operation. + */ + delete is ArmResourceDeleteSync; +} + +@@doc(OperationsPutContent.name, ""); +@@doc(OperationsPutContent.properties, ""); +@@doc(OperationsPutContents.createOrUpdate::parameters.resource, + "The operations content properties supplied to the CreateOrUpdate operation." +); diff --git a/specification/providerhub/ProviderHub.Management/ProviderMonitorSetting.tsp b/specification/providerhub/ProviderHub.Management/ProviderMonitorSetting.tsp new file mode 100644 index 000000000000..d03bab37a339 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/ProviderMonitorSetting.tsp @@ -0,0 +1,73 @@ +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "@typespec/rest"; +import "./models.tsp"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using TypeSpec.Http; +using TypeSpec.OpenAPI; + +namespace Microsoft.ProviderHub; + +model ProviderMonitorSetting + is Azure.ResourceManager.TrackedResource { + ...ResourceNameParameter< + Resource = ProviderMonitorSetting, + KeyName = "providerMonitorSettingName", + SegmentName = "providerMonitorSettings", + NamePattern = "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$" + >; +} + +@armResourceOperations +interface ProviderMonitorSettings { + /** + * Gets the provider monitor setting details. + */ + get is ArmResourceRead; + + /** + * Creates the provider monitor setting. + */ + create is ArmResourceCreateOrReplaceAsync; + + // FIXME: (ArmResourcePatch): ArmResourcePatchSync/ArmResourcePatchAsync should have a body parameter with either properties property or tag property + /** + * Updates the provider monitor setting properties as specified in the request body. Update fails if the specified provider monitor setting does not already exist. + */ + #suppress "@azure-tools/typespec-azure-resource-manager/patch-envelope" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + @patch(#{ implicitOptionality: false }) + update is Azure.ResourceManager.Legacy.CustomPatchSync< + ProviderMonitorSetting, + PatchModel = void + >; + + /** + * Deletes a provider monitor setting. + */ + delete is ArmResourceDeleteSync; + + /** + * Gets the list of the provider monitor settings in the resource group. + */ + listByResourceGroup is ArmResourceListByParent< + ProviderMonitorSetting, + Response = ArmResponse + >; + + /** + * Gets the list of the provider monitor settings in the subscription. + */ + listBySubscription is ArmListBySubscription< + ProviderMonitorSetting, + Response = ArmResponse + >; +} + +@@doc(ProviderMonitorSetting.name, "The name of the provider monitor setting."); +@@doc(ProviderMonitorSetting.properties, ""); +@@doc(ProviderMonitorSettings.create::parameters.resource, + "The provider monitor setting properties supplied to the create operation." +); diff --git a/specification/providerhub/ProviderHub.Management/ProviderRegistration.tsp b/specification/providerhub/ProviderHub.Management/ProviderRegistration.tsp new file mode 100644 index 000000000000..8eb03e41b285 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/ProviderRegistration.tsp @@ -0,0 +1,148 @@ +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "@typespec/rest"; +import "./models.tsp"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using TypeSpec.Http; +using TypeSpec.OpenAPI; + +namespace Microsoft.ProviderHub; + +@subscriptionResource +model ProviderRegistration + is Azure.ResourceManager.ProxyResource { + ...ResourceNameParameter< + Resource = ProviderRegistration, + KeyName = "providerNamespace", + SegmentName = "providerRegistrations", + NamePattern = "" + >; + + /** + * Provider registration kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type. + */ + #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + kind?: ProviderRegistrationKind = ProviderRegistrationKind.Managed; +} + +@armResourceOperations +interface ProviderRegistrations { + /** + * Gets the provider registration details. + */ + get is ArmResourceRead< + ProviderRegistration, + BaseParameters = Azure.ResourceManager.Foundations.SubscriptionBaseParameters + >; + + /** + * Creates or updates the provider registration. + */ + createOrUpdate is ArmResourceCreateOrReplaceAsync< + ProviderRegistration, + BaseParameters = Azure.ResourceManager.Foundations.SubscriptionBaseParameters + >; + + /** + * Deletes a provider registration. + */ + delete is ArmResourceDeleteSync< + ProviderRegistration, + BaseParameters = Azure.ResourceManager.Foundations.SubscriptionBaseParameters + >; + + /** + * Gets the list of the provider registrations in the subscription. + */ + list is ArmResourceListByParent< + ProviderRegistration, + BaseParameters = Azure.ResourceManager.Foundations.SubscriptionBaseParameters, + Response = ArmResponse + >; + + /** + * Generates the manifest for the given provider. + */ + #suppress "@azure-tools/typespec-azure-core/no-openapi" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + @operationId("GenerateManifest") + generateManifest is ArmResourceActionSync< + ProviderRegistration, + void, + ArmResponse, + BaseParameters = Azure.ResourceManager.Foundations.SubscriptionBaseParameters + >; + + /** + * Checkin the manifest. + */ + #suppress "@azure-tools/typespec-azure-core/no-openapi" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + @operationId("CheckinManifest") + checkinManifest is ArmResourceActionSync< + ProviderRegistration, + CheckinManifestParams, + ArmResponse, + BaseParameters = Azure.ResourceManager.Foundations.SubscriptionBaseParameters + >; + + /** + * Generates the operations api for the given provider. + */ + generateOperations is ArmResourceActionSync< + ProviderRegistration, + void, + ArmResponse, + BaseParameters = Azure.ResourceManager.Foundations.SubscriptionBaseParameters + >; + + /** + * Deletes resources. + */ + deleteResources is ArmResourceActionAsyncBase< + ProviderRegistration, + ResourceManagementAction, + ArmAcceptedLroResponse, + BaseParameters = Azure.ResourceManager.Foundations.SubscriptionBaseParameters, + Parameters = { + /** + * The resource action name. + */ + @maxLength(63) + @minLength(3) + @pattern("^[a-z][a-z0-9]*$") + @path + @segment("resourceActions") + resourceActionName: string; + } + >; + + /** + * Generates the new region frontload manifest. + */ + @action("generateNewRegionFrontloadManifest") + newRegionFrontloadReleaseGenerateManifest is ArmResourceActionSync< + ProviderRegistration, + FrontloadPayload, + ArmResponse, + BaseParameters = Azure.ResourceManager.Foundations.SubscriptionBaseParameters + >; +} + +@@doc(ProviderRegistration.name, + "The name of the resource provider hosted within ProviderHub." +); +@@doc(ProviderRegistration.properties, ""); +@@doc(ProviderRegistrations.createOrUpdate::parameters.resource, + "The provider registration properties supplied to the CreateOrUpdate operation." +); +@@doc(ProviderRegistrations.checkinManifest::parameters.body, + "The required body parameters supplied to the checkin manifest operation." +); +@@doc(ProviderRegistrations.deleteResources::parameters.body, + "The properties supplied to the DeleteResources operation." +); +@@doc(ProviderRegistrations.newRegionFrontloadReleaseGenerateManifest::parameters.body, + "" +); diff --git a/specification/providerhub/ProviderHub.Management/ResourceTypeRegistration.tsp b/specification/providerhub/ProviderHub.Management/ResourceTypeRegistration.tsp new file mode 100644 index 000000000000..8a873c84f75c --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/ResourceTypeRegistration.tsp @@ -0,0 +1,62 @@ +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "@typespec/rest"; +import "./models.tsp"; +import "./ProviderRegistration.tsp"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using TypeSpec.Http; +using TypeSpec.OpenAPI; + +namespace Microsoft.ProviderHub; + +@parentResource(ProviderRegistration) +model ResourceTypeRegistration + is Azure.ResourceManager.ProxyResource { + ...ResourceNameParameter< + Resource = ResourceTypeRegistration, + KeyName = "resourceType", + SegmentName = "resourcetypeRegistrations", + NamePattern = "" + >; + + /** + * Resource type registration kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type. + */ + #suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + kind?: ResourceTypeRegistrationKind = ResourceTypeRegistrationKind.Managed; +} + +@armResourceOperations +interface ResourceTypeRegistrations { + /** + * Gets a resource type details in the given subscription and provider. + */ + get is ArmResourceRead; + + /** + * Creates or updates a resource type. + */ + createOrUpdate is ArmResourceCreateOrReplaceAsync; + + /** + * Deletes a resource type + */ + delete is ArmResourceDeleteWithoutOkAsync; + + /** + * Gets the list of the resource types for the given provider. + */ + listByProviderRegistration is ArmResourceListByParent< + ResourceTypeRegistration, + Response = ArmResponse + >; +} + +@@doc(ResourceTypeRegistration.name, "The resource type."); +@@doc(ResourceTypeRegistration.properties, ""); +@@doc(ResourceTypeRegistrations.createOrUpdate::parameters.resource, + "The required request body parameters supplied to the resource type registration CreateOrUpdate operation." +); diff --git a/specification/providerhub/ProviderHub.Management/SkuResource.tsp b/specification/providerhub/ProviderHub.Management/SkuResource.tsp new file mode 100644 index 000000000000..0a062625862c --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/SkuResource.tsp @@ -0,0 +1,312 @@ +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "@typespec/openapi"; +import "@typespec/rest"; +import "./models.tsp"; +import "./ResourceTypeRegistration.tsp"; + +using TypeSpec.Rest; +using Azure.ResourceManager; +using TypeSpec.Http; +using TypeSpec.OpenAPI; + +namespace Microsoft.ProviderHub; + +@parentResource(ResourceTypeRegistration) +model SkuResource + is Azure.ResourceManager.ProxyResource { + ...ResourceNameParameter< + Resource = SkuResource, + KeyName = "sku", + SegmentName = "skus", + NamePattern = "" + >; +} + +@armResourceOperations +interface SkuResourceOps + extends Azure.ResourceManager.Legacy.ExtensionOperations< + { + ...ApiVersionParameter, + ...SubscriptionIdParameter, + ...Azure.ResourceManager.Legacy.Provider, + + /** The name of the resource provider hosted within ProviderHub. */ + @path + @segment("providerRegistrations") + @key + providerNamespace: string, + + /** The resource type. */ + @path + @segment("resourcetypeRegistrations") + @key + resourceType: string, + }, + {}, + { + /** The SKU. */ + @path + @segment("skus") + @key + sku: string, + } + > {} + +@armResourceOperations +interface SkuResources { + /** + * Gets the sku details for the given resource type and sku name. + */ + get is SkuResourceOps.Read; + + /** + * Creates or updates the resource type skus in the given resource type. + */ + #suppress "@azure-tools/typespec-azure-resource-manager/arm-put-operation-response-codes" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + createOrUpdate is SkuResourceOps.CreateOrUpdateSync< + SkuResource, + Response = ArmResourceUpdatedResponse + >; + + /** + * Deletes a resource type sku. + */ + delete is SkuResourceOps.DeleteSync; + + /** + * Gets the list of skus for the given resource type. + */ + listByResourceTypeRegistrations is SkuResourceOps.List< + SkuResource, + Response = ArmResponse + >; +} +@armResourceOperations +interface SkusOps + extends Azure.ResourceManager.Legacy.ExtensionOperations< + { + ...ApiVersionParameter, + ...SubscriptionIdParameter, + ...Azure.ResourceManager.Legacy.Provider, + + /** The name of the resource provider hosted within ProviderHub. */ + @path + @segment("providerRegistrations") + @key + providerNamespace: string, + + /** The resource type. */ + @path + @segment("resourcetypeRegistrations") + @key + resourceType: string, + + /** The first child resource type. */ + @path + @segment("resourcetypeRegistrations") + @key + nestedResourceTypeFirst: string, + }, + {}, + { + /** The SKU. */ + @path + @segment("skus") + @key + sku: string, + } + > {} + +@armResourceOperations +interface Skus { + /** + * Gets the sku details for the given resource type and sku name. + */ + getNestedResourceTypeFirst is SkusOps.Read; + + /** + * Creates or updates the resource type skus in the given resource type. + */ + #suppress "@azure-tools/typespec-azure-resource-manager/arm-put-operation-response-codes" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + createOrUpdateNestedResourceTypeFirst is SkusOps.CreateOrUpdateSync< + SkuResource, + Response = ArmResourceUpdatedResponse + >; + + /** + * Deletes a resource type sku. + */ + deleteNestedResourceTypeFirst is SkusOps.DeleteSync; + + /** + * Gets the list of skus for the given resource type. + */ + listByResourceTypeRegistrationsNestedResourceTypeFirst is SkusOps.List< + SkuResource, + Response = ArmResponse + >; +} +@armResourceOperations +interface SkuResourceOperationOps + extends Azure.ResourceManager.Legacy.ExtensionOperations< + { + ...ApiVersionParameter, + ...SubscriptionIdParameter, + ...Azure.ResourceManager.Legacy.Provider, + + /** The name of the resource provider hosted within ProviderHub. */ + @path + @segment("providerRegistrations") + @key + providerNamespace: string, + + /** The resource type. */ + @path + @segment("resourcetypeRegistrations") + @key + resourceType: string, + + /** The first child resource type. */ + @path + @segment("resourcetypeRegistrations") + @key + nestedResourceTypeFirst: string, + + /** The second child resource type. */ + @path + @segment("resourcetypeRegistrations") + @key + nestedResourceTypeSecond: string, + }, + {}, + { + /** The SKU. */ + @path + @segment("skus") + @key + sku: string, + } + > {} + +@armResourceOperations +interface SkuResourceOperations { + /** + * Gets the sku details for the given resource type and sku name. + */ + getNestedResourceTypeSecond is SkuResourceOperationOps.Read; + + /** + * Creates or updates the resource type skus in the given resource type. + */ + #suppress "@azure-tools/typespec-azure-resource-manager/arm-put-operation-response-codes" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + createOrUpdateNestedResourceTypeSecond is SkuResourceOperationOps.CreateOrUpdateSync< + SkuResource, + Response = ArmResourceUpdatedResponse + >; + + /** + * Deletes a resource type sku. + */ + deleteNestedResourceTypeSecond is SkuResourceOperationOps.DeleteSync; + + /** + * Gets the list of skus for the given resource type. + */ + listByResourceTypeRegistrationsNestedResourceTypeSecond is SkuResourceOperationOps.List< + SkuResource, + Response = ArmResponse + >; +} +@armResourceOperations +interface SkuResourceOperationGroupOps + extends Azure.ResourceManager.Legacy.ExtensionOperations< + { + ...ApiVersionParameter, + ...SubscriptionIdParameter, + ...Azure.ResourceManager.Legacy.Provider, + + /** The name of the resource provider hosted within ProviderHub. */ + @path + @segment("providerRegistrations") + @key + providerNamespace: string, + + /** The resource type. */ + @path + @segment("resourcetypeRegistrations") + @key + resourceType: string, + + /** The first child resource type. */ + @path + @segment("resourcetypeRegistrations") + @key + nestedResourceTypeFirst: string, + + /** The second child resource type. */ + @path + @segment("resourcetypeRegistrations") + @key + nestedResourceTypeSecond: string, + + /** The third child resource type. */ + @path + @segment("resourcetypeRegistrations") + @key + nestedResourceTypeThird: string, + }, + {}, + { + /** The SKU. */ + @path + @segment("skus") + @key + sku: string, + } + > {} + +@armResourceOperations +interface SkuResourceOperationGroup { + /** + * Gets the sku details for the given resource type and sku name. + */ + getNestedResourceTypeThird is SkuResourceOperationGroupOps.Read; + + /** + * Creates or updates the resource type skus in the given resource type. + */ + #suppress "@azure-tools/typespec-azure-resource-manager/arm-put-operation-response-codes" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + createOrUpdateNestedResourceTypeThird is SkuResourceOperationGroupOps.CreateOrUpdateSync< + SkuResource, + Response = ArmResourceUpdatedResponse + >; + + /** + * Deletes a resource type sku. + */ + deleteNestedResourceTypeThird is SkuResourceOperationGroupOps.DeleteSync; + + /** + * Gets the list of skus for the given resource type. + */ + listByResourceTypeRegistrationsNestedResourceTypeThird is SkuResourceOperationGroupOps.List< + SkuResource, + Response = ArmResponse + >; +} + +@@doc(SkuResource.name, "The SKU."); +@@doc(SkuResource.properties, ""); +@@doc(SkuResources.createOrUpdate::parameters.resource, + "The required body parameters supplied to the resource sku operation." +); +@@doc(Skus.createOrUpdateNestedResourceTypeFirst::parameters.resource, + "The required body parameters supplied to the resource sku operation." +); +@@doc(SkuResourceOperations.createOrUpdateNestedResourceTypeSecond::parameters.resource, + "The required body parameters supplied to the resource sku operation." +); +@@doc(SkuResourceOperationGroup.createOrUpdateNestedResourceTypeThird::parameters.resource, + "The required body parameters supplied to the resource sku operation." +); diff --git a/specification/providerhub/ProviderHub.Management/back-compatible.tsp b/specification/providerhub/ProviderHub.Management/back-compatible.tsp new file mode 100644 index 000000000000..7f8924e28315 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/back-compatible.tsp @@ -0,0 +1,97 @@ +import "@azure-tools/typespec-client-generator-core"; + +using Azure.ClientGenerator.Core; +using Microsoft.ProviderHub; + +#suppress "@azure-tools/typespec-azure-core/no-legacy-usage" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +@@Azure.ClientGenerator.Core.Legacy.flattenProperty(OperationsContentProperties.contents +); +#suppress "@azure-tools/typespec-azure-core/no-legacy-usage" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +@@Azure.ClientGenerator.Core.Legacy.flattenProperty(ResourceManagementAction.resources +); +#suppress "@azure-tools/typespec-azure-core/no-legacy-usage" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +@@Azure.ClientGenerator.Core.Legacy.flattenProperty(OperationsContent.properties +); + +@@clientName(CustomRollouts.createOrUpdate::parameters.resource, "properties"); + +@@clientName(ProviderRegistrations.createOrUpdate::parameters.resource, + "properties" +); +@@clientLocation(ProviderRegistrations.generateManifest, ""); +@@clientLocation(ProviderRegistrations.checkinManifest, ""); +@@clientName(ProviderRegistrations.checkinManifest::parameters.body, + "checkinManifestParams" +); +@@clientLocation(ProviderRegistrations.deleteResources, "ResourceActions"); +@@clientName(ProviderRegistrations.deleteResources::parameters.body, + "properties" +); +@@clientLocation(ProviderRegistrations.newRegionFrontloadReleaseGenerateManifest, + NewRegionFrontloadRelease +); +@@clientName(ProviderRegistrations.newRegionFrontloadReleaseGenerateManifest, + "GenerateManifest" +); +@@clientName(ProviderRegistrations.newRegionFrontloadReleaseGenerateManifest::parameters.body, + "properties" +); + +@@clientName(ResourceTypeRegistrations.createOrUpdate::parameters.resource, + "properties" +); + +@@clientName(DefaultRollouts.createOrUpdate::parameters.resource, "properties"); +@@clientName(NewRegionFrontloadRelease.createOrUpdate::parameters.resource, + "properties" +); + +@@clientName(NotificationRegistrations.createOrUpdate::parameters.resource, + "properties" +); + +@@clientLocation(OperationsPutContents.listByProviderRegistration, + "Operations" +); +@@clientLocation(OperationsPutContents.createOrUpdate, "Operations"); +@@clientName(OperationsPutContents.createOrUpdate::parameters.resource, + "OperationsPutContent" +); +@@clientLocation(OperationsPutContents.delete, "Operations"); + +@@clientLocation(SkuResources.get, Skus); +@@clientLocation(SkuResources.createOrUpdate, Skus); +@@clientName(SkuResources.createOrUpdate::parameters.resource, "properties"); +@@clientLocation(SkuResources.delete, Skus); +@@clientLocation(SkuResources.listByResourceTypeRegistrations, Skus); +@@clientName(Skus.createOrUpdateNestedResourceTypeFirst::parameters.resource, + "properties" +); +@@clientLocation(SkuResourceOperations.getNestedResourceTypeSecond, Skus); +@@clientLocation(SkuResourceOperations.createOrUpdateNestedResourceTypeSecond, + Skus +); +@@clientName(SkuResourceOperations.createOrUpdateNestedResourceTypeSecond::parameters.resource, + "properties" +); +@@clientLocation(SkuResourceOperations.deleteNestedResourceTypeSecond, Skus); +@@clientLocation(SkuResourceOperations.listByResourceTypeRegistrationsNestedResourceTypeSecond, + Skus +); +@@clientLocation(SkuResourceOperationGroup.getNestedResourceTypeThird, Skus); +@@clientLocation(SkuResourceOperationGroup.createOrUpdateNestedResourceTypeThird, + Skus +); +@@clientName(SkuResourceOperationGroup.createOrUpdateNestedResourceTypeThird::parameters.resource, + "properties" +); +@@clientLocation(SkuResourceOperationGroup.deleteNestedResourceTypeThird, Skus); +@@clientLocation(SkuResourceOperationGroup.listByResourceTypeRegistrationsNestedResourceTypeThird, + Skus +); + +@@clientName(AuthorizedApplications.createOrUpdate::parameters.resource, + "properties" +); + +@@clientName(ProviderMonitorSettings.create::parameters.resource, "properties"); diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/AuthorizedApplications_CreateOrUpdate.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/AuthorizedApplications_CreateOrUpdate.json new file mode 100644 index 000000000000..ee2373adc3cb --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/AuthorizedApplications_CreateOrUpdate.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "applicationId": "760505bf-dcfa-4311-b890-18da392a00b2", + "properties": { + "properties": { + "dataAuthorizations": [ + { + "resourceTypes": [ + "*" + ], + "role": "ServiceOwner" + } + ], + "providerAuthorization": { + "managedByRoleDefinitionId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + } + }, + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Successfully created the authorized application.", + "body": { + "name": "Microsoft.Contoso/760505bf-dcfa-4311-b890-18da392a00b2", + "type": "Microsoft.ProviderHub/providerRegistrations/authorizedApplications", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/authorizedApplications/760505bf-dcfa-4311-b890-18da392a00b2", + "properties": { + "dataAuthorizations": [ + { + "resourceTypes": [ + "*" + ], + "role": "ServiceOwner" + } + ], + "providerAuthorization": { + "managedByRoleDefinitionId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "description": "Successfully created the authorized application.", + "body": { + "name": "Microsoft.Contoso/760505bf-dcfa-4311-b890-18da392a00b2", + "type": "Microsoft.ProviderHub/providerRegistrations/authorizedApplications", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/authorizedApplications/760505bf-dcfa-4311-b890-18da392a00b2", + "properties": { + "dataAuthorizations": [ + { + "resourceTypes": [ + "*" + ], + "role": "ServiceOwner" + } + ], + "providerAuthorization": { + "managedByRoleDefinitionId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "AuthorizedApplications_CreateOrUpdate", + "title": "AuthorizedApplications_CreateOrUpdate" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/AuthorizedApplications_Delete.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/AuthorizedApplications_Delete.json new file mode 100644 index 000000000000..2d27fe3b913c --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/AuthorizedApplications_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "applicationId": "760505bf-dcfa-4311-b890-18da392a00b2", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Successfully deleted the authorized application." + }, + "204": { + "description": "Resource does not exist." + } + }, + "operationId": "AuthorizedApplications_Delete", + "title": "AuthorizedApplications_Delete" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/AuthorizedApplications_Get.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/AuthorizedApplications_Get.json new file mode 100644 index 000000000000..bb4e86411226 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/AuthorizedApplications_Get.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "applicationId": "760505bf-dcfa-4311-b890-18da392a00b2", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "", + "body": { + "name": "Microsoft.Contoso/760505bf-dcfa-4311-b890-18da392a00b2", + "type": "Microsoft.ProviderHub/providerRegistrations/authorizedApplications", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/authorizedApplications/760505bf-dcfa-4311-b890-18da392a00b2", + "properties": { + "dataAuthorizations": [ + { + "resourceTypes": [ + "*" + ], + "role": "ServiceOwner" + } + ], + "providerAuthorization": { + "managedByRoleDefinitionId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "AuthorizedApplications_Get", + "title": "AuthorizedApplications_Get" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/AuthorizedApplications_List.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/AuthorizedApplications_List.json new file mode 100644 index 000000000000..d1a64b7ecd0d --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/AuthorizedApplications_List.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "applicationId": "760505bf-dcfa-4311-b890-18da392a00b2", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Contoso/760505bf-dcfa-4311-b890-18da392a00b2", + "type": "Microsoft.ProviderHub/providerRegistrations/authorizedApplications", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/authorizedApplications/760505bf-dcfa-4311-b890-18da392a00b2", + "properties": { + "dataAuthorizations": [ + { + "resourceTypes": [ + "*" + ], + "role": "ServiceOwner" + } + ], + "providerAuthorization": { + "managedByRoleDefinitionId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + }, + "provisioningState": "Succeeded" + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "AuthorizedApplications_List", + "title": "AuthorizedApplications_List" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CheckinManifest.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CheckinManifest.json new file mode 100644 index 000000000000..03c6ca73c7c6 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CheckinManifest.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "checkinManifestParams": { + "baselineArmManifestLocation": "EastUS2EUAP", + "environment": "Prod" + }, + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Checkin the manifest.", + "body": { + "isCheckedIn": false, + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + } + } + }, + "operationId": "CheckinManifest", + "title": "CheckinManifest" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CustomRollouts_CreateOrUpdate.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CustomRollouts_CreateOrUpdate.json new file mode 100644 index 000000000000..f7f4d75963cf --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CustomRollouts_CreateOrUpdate.json @@ -0,0 +1,117 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "properties": { + "properties": { + "specification": { + "autoProvisionConfig": { + "resourceGraph": true, + "storage": true + }, + "canary": { + "regions": [ + "brazilus" + ] + }, + "refreshSubscriptionRegistration": true + } + } + }, + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "brazilUsShoeBoxTesting", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Custom rollout completed successfully.", + "body": { + "name": "Microsoft.Contoso/brazilUsShoeBoxTesting", + "type": "Microsoft.ProviderHub/providerRegistrations/customRollouts", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/brazilUsShoeBoxTesting", + "properties": { + "provisioningState": "Succeeded", + "specification": { + "autoProvisionConfig": { + "resourceGraph": true, + "storage": true + }, + "canary": { + "regions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ] + }, + "refreshSubscriptionRegistration": true + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ], + "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", + "isCheckedIn": true, + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + } + } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "description": "Custom rollout started successfully.", + "body": { + "name": "Microsoft.Contoso/brazilUsShoeBoxTesting", + "type": "Microsoft.ProviderHub/providerRegistrations/customRollouts", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/brazilUsShoeBoxTesting", + "properties": { + "provisioningState": "RolloutInProgress", + "specification": { + "autoProvisionConfig": { + "resourceGraph": true, + "storage": true + }, + "canary": { + "regions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ] + }, + "refreshSubscriptionRegistration": true + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ] + } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + }, + "headers": { + "location": "https://management.azure.com/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/operationStauses/11111111-f7ef-471a-a2f4-d0ebbf494f77", + "retry-after": "5000" + } + } + }, + "operationId": "CustomRollouts_CreateOrUpdate", + "title": "CustomRollouts_CreateOrUpdate" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CustomRollouts_Delete.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CustomRollouts_Delete.json new file mode 100644 index 000000000000..d7194ac1e557 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CustomRollouts_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "2020week10", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Rollout deleted successfully." + }, + "204": { + "description": "No content." + } + }, + "operationId": "CustomRollouts_Delete", + "title": "providerReleases_Delete" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CustomRollouts_Get.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CustomRollouts_Get.json new file mode 100644 index 000000000000..aa7335bf1612 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CustomRollouts_Get.json @@ -0,0 +1,150 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "canaryTesting99", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Successfully retrieved the rollout details.", + "body": { + "name": "Microsoft.Contoso/canaryTesting99", + "type": "Microsoft.ProviderHub/providerRegistrations/customRollouts", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/canaryTesting99", + "properties": { + "provisioningState": "Completed", + "specification": { + "autoProvisionConfig": { + "resourceGraph": true, + "storage": true + }, + "canary": { + "regions": [ + "eastus2euap", + "centraluseuap" + ] + }, + "providerRegistration": { + "name": "Microsoft.Contoso", + "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", + "properties": { + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "management": { + "authorizationOwners": [ + "RPAAS-PlatformServiceAdministrator" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "resourceAccessPolicy": "NotSpecified" + }, + "metadata": null, + "namespace": "microsoft.contoso", + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "providerHubMetadata": { + "providerAuthentication": { + "allowedAudiences": [ + "https://management.core.windows.net/" + ] + } + }, + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded" + } + }, + "refreshSubscriptionRegistration": true, + "resourceTypeRegistrations": [ + { + "name": "Microsoft.Contoso/employees", + "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", + "properties": { + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, + "endpoints": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "locations": [ + "East Asia", + "East US", + "North Europe", + "Southeast Asia", + "East US 2 EUAP", + "Central US EUAP", + "West Europe", + "West US", + "West Central US", + "West US 2" + ], + "requiredFeatures": [ + "Microsoft.Contoso/RPaaSSampleApp" + ] + } + ], + "provisioningState": "Succeeded", + "regionality": "Regional", + "routingType": "Default", + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ] + } + } + ] + }, + "status": { + "completedRegions": [ + "eastus2euap", + "centraluseuap" + ], + "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", + "isCheckedIn": true, + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + } + } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "CustomRollouts_Get", + "title": "CustomRollouts_Get" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CustomRollouts_ListByProviderRegistration.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CustomRollouts_ListByProviderRegistration.json new file mode 100644 index 000000000000..b845e0d6bf22 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CustomRollouts_ListByProviderRegistration.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "List of custom rollouts for given subscription id.", + "body": { + "value": [ + { + "name": "Microsoft.Contoso/canaryTesting99", + "type": "Microsoft.ProviderHub/providerRegistrations/customRollouts", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/canaryTesting99", + "properties": { + "provisioningState": "Succeeded", + "specification": { + "autoProvisionConfig": { + "resourceGraph": true, + "storage": true + }, + "canary": { + "regions": [ + "eastus2euap", + "centraluseuap" + ] + }, + "refreshSubscriptionRegistration": true + }, + "status": { + "completedRegions": [ + "eastus2euap", + "centraluseuap" + ], + "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", + "isCheckedIn": true, + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + } + } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + }, + { + "name": "Microsoft.Contoso/brazilustesting", + "type": "Microsoft.ProviderHub/providerRegistrations/customRollouts", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/brazilustesting", + "properties": { + "provisioningState": "Failed", + "specification": { + "autoProvisionConfig": { + "resourceGraph": true, + "storage": true + }, + "canary": { + "regions": [ + "brazilus" + ] + }, + "refreshSubscriptionRegistration": true + }, + "status": { + "failedOrSkippedRegions": { + "brazilus": { + "code": "RolloutTimedout", + "message": "Failed to rollout to specified region." + } + }, + "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", + "isCheckedIn": true, + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + } + } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "CustomRollouts_ListByProviderRegistration", + "title": "CustomRollouts_ListByProviderRegistration" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CustomRollouts_Stop.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CustomRollouts_Stop.json new file mode 100644 index 000000000000..92a4769a9907 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/CustomRollouts_Stop.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "2020week10", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "The rollout is stopped successfully." + } + }, + "operationId": "CustomRollouts_Stop", + "title": "CustomRollouts_Stop" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DefaultRollouts_CreateOrUpdate.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DefaultRollouts_CreateOrUpdate.json new file mode 100644 index 000000000000..8e7609b93ac0 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DefaultRollouts_CreateOrUpdate.json @@ -0,0 +1,195 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "properties": { + "properties": { + "specification": { + "canary": { + "skipRegions": [ + "eastus2euap" + ] + }, + "expeditedRollout": { + "enabled": true + }, + "restOfTheWorldGroupTwo": { + "waitDuration": "PT4H" + } + } + } + }, + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "2020week10", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Default rollout updated successfully.", + "body": { + "name": "Microsoft.Contoso/2020week10", + "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", + "properties": { + "provisioningState": "RolloutInProgress", + "specification": { + "canary": { + "regions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ] + }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, + "lowTraffic": { + "regions": [ + "southeastasia" + ], + "waitDuration": "PT24H" + }, + "mediumTraffic": { + "regions": [ + "uksouth", + "indiawest" + ], + "waitDuration": "PT24H" + }, + "restOfTheWorldGroupOne": { + "regions": [ + "koreacentral", + "francecentral", + "australiacentral", + "westus", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "restOfTheWorldGroupTwo": { + "regions": [ + "germanynorth", + "norwayeast", + "allotherregions" + ], + "waitDuration": "PT4H" + } + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap", + "allcompletedregions" + ], + "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", + "isCheckedIn": true, + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + } + } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "description": "Default rollout started successfully.", + "body": { + "name": "Microsoft.Contoso/2020week10", + "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", + "properties": { + "provisioningState": "RolloutInProgress", + "specification": { + "canary": { + "regions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ], + "skipRegions": [ + "brazilus" + ] + }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, + "lowTraffic": { + "regions": [ + "southeastasia" + ], + "waitDuration": "PT24H" + }, + "mediumTraffic": { + "regions": [ + "uksouth", + "indiawest" + ], + "waitDuration": "PT24H" + }, + "restOfTheWorldGroupOne": { + "regions": [ + "koreacentral", + "francecentral", + "australiacentral", + "westus", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "restOfTheWorldGroupTwo": { + "regions": [ + "germanynorth", + "norwayeast", + "allotherregions" + ], + "waitDuration": "PT4H" + } + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ], + "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", + "isCheckedIn": true, + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + }, + "nextTrafficRegion": "LowTraffic", + "nextTrafficRegionScheduledTime": "2020-03-03T22:00:00Z" + } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + }, + "headers": { + "location": "https://management.azure.com/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/operationStauses/11111111-f7ef-471a-a2f4-d0ebbf494f77", + "retry-after": "5000" + } + } + }, + "operationId": "DefaultRollouts_CreateOrUpdate", + "title": "DefaultRollouts_CreateOrUpdate" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DefaultRollouts_Delete.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DefaultRollouts_Delete.json new file mode 100644 index 000000000000..2b3700cec5e5 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DefaultRollouts_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "2020week10", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Rollout deleted successfully." + }, + "204": { + "description": "No content." + } + }, + "operationId": "DefaultRollouts_Delete", + "title": "DefaultRollouts_Delete" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DefaultRollouts_Get.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DefaultRollouts_Get.json new file mode 100644 index 000000000000..42fab4e3c49f --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DefaultRollouts_Get.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "2020week10", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Default rollout resource.", + "body": { + "name": "Microsoft.Contoso/2020week10", + "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", + "properties": { + "provisioningState": "Cancelled", + "specification": { + "canary": { + "regions": [ + "eastus2euap", + "centraluseuap" + ], + "skipRegions": [ + "brazilus" + ] + }, + "expeditedRollout": { + "enabled": true + }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, + "lowTraffic": { + "regions": [ + "southeastasia" + ], + "waitDuration": "PT24H" + }, + "mediumTraffic": { + "regions": [ + "uksouth", + "indiawest" + ], + "waitDuration": "PT24H" + }, + "providerRegistration": { + "name": "Microsoft.Contoso", + "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", + "properties": { + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "management": { + "authorizationOwners": [ + "RPAAS-PlatformServiceAdministrator" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "resourceAccessPolicy": "NotSpecified" + }, + "metadata": null, + "namespace": "microsoft.contoso", + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "providerHubMetadata": { + "providerAuthentication": { + "allowedAudiences": [ + "https://management.core.windows.net/" + ] + } + }, + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded" + } + }, + "resourceTypeRegistrations": [ + { + "name": "Microsoft.Contoso/employees", + "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", + "properties": { + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, + "endpoints": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "locations": [ + "East Asia", + "East US", + "North Europe", + "Southeast Asia", + "East US 2 EUAP", + "Central US EUAP", + "West Europe", + "West US", + "West Central US", + "West US 2" + ], + "requiredFeatures": [ + "Microsoft.Contoso/RPaaSSampleApp" + ] + } + ], + "provisioningState": "Succeeded", + "regionality": "Regional", + "routingType": "Default", + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ] + } + } + ], + "restOfTheWorldGroupOne": { + "regions": [ + "koreacentral", + "francecentral", + "australiacentral", + "westus", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "restOfTheWorldGroupTwo": { + "regions": [ + "germanynorth", + "norwayeast", + "allotherregions" + ], + "waitDuration": "PT4H" + } + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap", + "allcompletedregions" + ], + "failedOrSkippedRegions": { + "westus2": { + "code": "RolloutStoppedByUser", + "message": "Rollout was explicitly stopped by the user." + } + }, + "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", + "isCheckedIn": true, + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + }, + "subscriptionReregistrationResult": "ConditionalUpdate" + } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "DefaultRollouts_Get", + "title": "DefaultRollouts_Get" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DefaultRollouts_ListByProviderRegistration.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DefaultRollouts_ListByProviderRegistration.json new file mode 100644 index 000000000000..00e3c3f5daae --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DefaultRollouts_ListByProviderRegistration.json @@ -0,0 +1,179 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "List of default rollouts for given subscription id.", + "body": { + "value": [ + { + "name": "Microsoft.Contoso/2020week01", + "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week01", + "properties": { + "provisioningState": "Succeeded", + "specification": { + "canary": { + "regions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ] + }, + "expeditedRollout": { + "enabled": true + }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, + "lowTraffic": { + "regions": [ + "southeastasia" + ], + "waitDuration": "PT24H" + }, + "mediumTraffic": { + "regions": [ + "uksouth", + "indiawest" + ], + "waitDuration": "PT24H" + }, + "restOfTheWorldGroupOne": { + "regions": [ + "koreacentral", + "francecentral", + "australiacentral", + "westus", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "restOfTheWorldGroupTwo": { + "regions": [ + "germanynorth", + "norwayeast", + "allotherregions" + ], + "waitDuration": "PT4H" + } + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap", + "allcompletedregions" + ], + "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", + "isCheckedIn": true, + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + } + } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + }, + { + "name": "Microsoft.Contoso/2020week10", + "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", + "properties": { + "provisioningState": "Cancelled", + "specification": { + "canary": { + "regions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ] + }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, + "lowTraffic": { + "regions": [ + "southeastasia" + ], + "waitDuration": "PT24H" + }, + "mediumTraffic": { + "regions": [ + "uksouth", + "indiawest" + ], + "waitDuration": "PT24H" + }, + "restOfTheWorldGroupOne": { + "regions": [ + "koreacentral", + "francecentral", + "australiacentral", + "westus", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "restOfTheWorldGroupTwo": { + "regions": [ + "germanynorth", + "norwayeast", + "allotherregions" + ], + "waitDuration": "PT4H" + } + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap", + "allcompletedregions" + ], + "failedOrSkippedRegions": { + "westus2": { + "code": "RolloutStoppedByUser", + "message": "Rollout was explicitly stopped by the user." + } + }, + "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", + "isCheckedIn": true, + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + } + } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "DefaultRollouts_ListByProviderRegistration", + "title": "DefaultRollouts_ListByProviderRegistration" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DefaultRollouts_Stop.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DefaultRollouts_Stop.json new file mode 100644 index 000000000000..908a41b1167f --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DefaultRollouts_Stop.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "2020week10", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "The rollout is stopped successfully." + } + }, + "operationId": "DefaultRollouts_Stop", + "title": "DefaultRollouts_Stop" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DirectProviderRegistrations_CreateOrUpdate.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DirectProviderRegistrations_CreateOrUpdate.json new file mode 100644 index 000000000000..b09e5e88df2c --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DirectProviderRegistrations_CreateOrUpdate.json @@ -0,0 +1,352 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "properties": { + "kind": "Direct", + "properties": { + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "customManifestVersion": "2.0", + "dstsConfiguration": { + "serviceDnsName": "prds.sparta.azure.com", + "serviceName": "prds-shim" + }, + "legacyNamespace": "legacyNamespace", + "legacyRegistrations": [ + "legacyRegistration" + ], + "management": { + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "Contoso Resource Provider", + "incidentRoutingTeam": "Contoso Triage", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "managementGroupGlobalNotificationEndpoints": [ + { + "endpointUri": "{your_management_group_notification_endpoint}" + } + ], + "notificationOptions": "EmitSpendingLimit", + "notificationSettings": { + "subscriberSettings": [ + { + "filterRules": [ + { + "endpointInformation": [ + { + "endpoint": "https://userrp.azure.com/arnnotify", + "endpointType": "Webhook", + "schemaVersion": "3.0" + }, + { + "endpoint": "https://userrp.azure.com/arnnotify", + "endpointType": "Eventhub", + "schemaVersion": "3.0" + } + ], + "filterQuery": "Resources | where event.eventType in ('Microsoft.Network/IpAddresses/write', 'Microsoft.KeyVault/vaults/move/action')" + } + ] + } + ] + }, + "optionalFeatures": [ + "Microsoft.Resources/PlatformSubscription" + ], + "providerType": "Internal", + "providerVersion": "2.0", + "resourceGroupLockOptionDuringMove": { + "blockActionVerb": "Action" + }, + "resourceHydrationAccounts": [ + { + "accountName": "classichydrationprodsn01", + "subscriptionId": "e4eae963-2d15-43e6-a097-98bd75b33edd" + }, + { + "accountName": "classichydrationprodch01", + "subscriptionId": "69e69ecb-e69c-41d4-99b8-87dd12781067" + } + ], + "responseOptions": { + "serviceClientOptionsType": "DisableAutomaticDecompression" + }, + "serviceName": "root", + "services": [ + { + "serviceName": "tags", + "status": "Inactive" + } + ] + } + }, + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "", + "body": { + "name": "Microsoft.Contoso", + "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", + "properties": { + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "customManifestVersion": "2.0", + "dstsConfiguration": { + "serviceDnsName": "prds.sparta.azure.com", + "serviceName": "prds-shim" + }, + "legacyNamespace": "legacyNamespace", + "legacyRegistrations": [ + "legacyRegistration" + ], + "management": { + "authorizationOwners": [ + "authorizationOwners-group" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "manifestOwners-group" + ], + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "managementGroupGlobalNotificationEndpoints": [ + { + "endpointUri": "{your_management_group_notification_endpoint}" + } + ], + "metadata": { + "onboardedVia": "ProviderHub" + }, + "namespace": "Microsoft.Contoso", + "notificationOptions": "EmitSpendingLimit", + "notificationSettings": { + "subscriberSettings": [ + { + "filterRules": [ + { + "endpointInformation": [ + { + "endpoint": "https://userrp.azure.com/arnnotify", + "endpointType": "Webhook", + "schemaVersion": "3.0" + }, + { + "endpoint": "https://userrp.azure.com/arnnotify", + "endpointType": "Eventhub", + "schemaVersion": "3.0" + } + ], + "filterQuery": "Resources | where event.eventType in ('Microsoft.Network/IpAddresses/write', 'Microsoft.KeyVault/vaults/move/action')" + } + ] + } + ] + }, + "optionalFeatures": [ + "Microsoft.Resources/PlatformSubscription" + ], + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded", + "resourceGroupLockOptionDuringMove": { + "blockActionVerb": "Action" + }, + "resourceHydrationAccounts": [ + { + "accountName": "classichydrationprodsn01", + "subscriptionId": "e4eae963-2d15-43e6-a097-98bd75b33edd" + }, + { + "accountName": "classichydrationprodch01", + "subscriptionId": "69e69ecb-e69c-41d4-99b8-87dd12781067" + } + ], + "responseOptions": { + "serviceClientOptionsType": "DisableAutomaticDecompression" + }, + "serviceName": "root", + "services": [ + { + "serviceName": "tags", + "status": "Inactive" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "description": "Successfully created the provider registration.", + "body": { + "name": "Microsoft.Contoso", + "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", + "properties": { + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "customManifestVersion": "2.0", + "dstsConfiguration": { + "serviceDnsName": "prds.sparta.azure.com", + "serviceName": "prds-shim" + }, + "legacyNamespace": "legacyNamespace", + "legacyRegistrations": [ + "legacyRegistration" + ], + "management": { + "authorizationOwners": [ + "authorizationOwners-group" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "manifestOwners-group" + ], + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "managementGroupGlobalNotificationEndpoints": [ + { + "endpointUri": "{your_management_group_notification_endpoint}" + } + ], + "metadata": { + "onboardedVia": "ProviderHub" + }, + "namespace": "Microsoft.Contoso", + "notificationOptions": "EmitSpendingLimit", + "notificationSettings": { + "subscriberSettings": [ + { + "filterRules": [ + { + "endpointInformation": [ + { + "endpoint": "https://userrp.azure.com/arnnotify", + "endpointType": "Webhook", + "schemaVersion": "3.0" + }, + { + "endpoint": "https://userrp.azure.com/arnnotify", + "endpointType": "Eventhub", + "schemaVersion": "3.0" + } + ], + "filterQuery": "Resources | where event.eventType in ('Microsoft.Network/IpAddresses/write', 'Microsoft.KeyVault/vaults/move/action')" + } + ] + } + ] + }, + "optionalFeatures": [ + "Microsoft.Resources/PlatformSubscription" + ], + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded", + "resourceGroupLockOptionDuringMove": { + "blockActionVerb": "Action" + }, + "resourceHydrationAccounts": [ + { + "accountName": "classichydrationprodsn01", + "subscriptionId": "e4eae963-2d15-43e6-a097-98bd75b33edd" + }, + { + "accountName": "classichydrationprodch01", + "subscriptionId": "69e69ecb-e69c-41d4-99b8-87dd12781067" + } + ], + "responseOptions": { + "serviceClientOptionsType": "DisableAutomaticDecompression" + }, + "serviceName": "root", + "services": [ + { + "serviceName": "tags", + "status": "Inactive" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "ProviderRegistrations_CreateOrUpdate", + "title": "DirectProviderRegistrations_CreateOrUpdate" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DirectResourceTypeRegistrations_CreateOrUpdate.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DirectResourceTypeRegistrations_CreateOrUpdate.json new file mode 100644 index 000000000000..22b9c4e9588b --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/DirectResourceTypeRegistrations_CreateOrUpdate.json @@ -0,0 +1,509 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "properties": { + "properties": { + "addResourceListTargetLocations": true, + "additionalOptions": "ProtectedAsyncOperationPolling", + "allowEmptyRoleAssignments": false, + "allowedResourceNames": [ + { + "name": "name1", + "getActionVerb": "list" + }, + { + "name": "name2" + } + ], + "allowedTemplateDeploymentReferenceActions": [ + "ListKeys", + "ListSAS" + ], + "apiProfiles": [ + { + "apiVersion": "2018-02-01", + "profileVersion": "2018-03-01-hybrid" + }, + { + "apiVersion": "2016-06-01", + "profileVersion": "2019-03-01-hybrid" + } + ], + "asyncTimeoutRules": [ + { + "actionName": "Microsoft.ClassicCompute/domainNames/write", + "timeout": "PT12H" + } + ], + "availabilityZoneRule": { + "availabilityZonePolicy": "MultiZoned" + }, + "capacityRule": { + "capacityPolicy": "Restricted", + "skuAlias": "incorrectAlias" + }, + "commonApiVersions": [ + "2021-01-01" + ], + "dstsConfiguration": { + "serviceDnsName": "prds.sparta.azure.com", + "serviceName": "prds-shim" + }, + "endpoints": [ + { + "apiVersions": [ + "2020-06-01-preview" + ], + "locations": [ + "West US", + "East US", + "North Europe" + ], + "requiredFeatures": [ + "" + ] + } + ], + "groupingTag": "groupingTag", + "legacyName": "legacyName", + "legacyNames": [ + "legacyName" + ], + "legacyPolicy": { + "disallowedConditions": [ + { + "disallowedLegacyOperations": [ + "Create", + "Delete" + ], + "feature": "Microsoft.RP/ArmOnlyJobCollections" + } + ], + "disallowedLegacyOperations": [ + "Create" + ] + }, + "linkedOperationRules": [ + { + "linkedAction": "Blocked", + "linkedOperation": "CrossSubscriptionResourceMove" + }, + { + "linkedAction": "Validate", + "linkedOperation": "CrossResourceGroupResourceMove" + } + ], + "management": { + "authorizationOwners": [ + "RPAAS-PlatformServiceAdministrator" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "manifestLink": "https://azure.com", + "marketplaceOptions": { + "addOnPlanConversionAllowed": true + }, + "metadata": {}, + "notifications": [ + { + "notificationType": "SubscriptionNotification", + "skipNotifications": "Disabled" + } + ], + "openApiConfiguration": { + "validation": { + "allowNoncompliantCollectionResponse": true + } + }, + "policyExecutionType": "BypassPolicies", + "regionality": "Regional", + "requestHeaderOptions": { + "optOutHeaders": "SystemDataCreatedByLastModifiedBy" + }, + "resourceCache": { + "enableResourceCache": true, + "resourceCacheExpirationTimespan": "PT2M" + }, + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + }, + "put": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true + }, + "resourceManagementOptions": { + "batchProvisioningSupport": { + "supportedOperations": "Get, Delete" + }, + "deleteDependencies": [ + { + "linkedProperty": "properties.edgeProfile.subscription.id" + } + ] + }, + "resourceQueryManagement": { + "filterOption": "EnableSubscriptionFilterOnTenant" + }, + "resourceTypeCommonAttributeManagement": { + "commonApiVersionsMergeMode": "Merge" + }, + "routingRule": { + "hostResourceType": "servers/databases" + }, + "routingType": "Default", + "supportsTags": true, + "swaggerSpecifications": [ + { + "apiVersions": [ + "2020-06-01-preview" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ], + "templateDeploymentPolicy": { + "capabilities": "Preflight", + "preflightNotifications": "None", + "preflightOptions": "ValidationRequests, DeploymentRequests" + } + } + }, + "providerNamespace": "Microsoft.Contoso", + "resourceType": "employees", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Successfully updated the resource type.", + "body": { + "name": "Microsoft.Contoso/employees", + "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", + "properties": { + "addResourceListTargetLocations": true, + "additionalOptions": "ProtectedAsyncOperationPolling", + "allowEmptyRoleAssignments": false, + "allowedResourceNames": [ + { + "name": "name1", + "getActionVerb": "list" + }, + { + "name": "name2" + } + ], + "allowedTemplateDeploymentReferenceActions": [ + "ListKeys", + "ListSAS" + ], + "apiProfiles": [ + { + "apiVersion": "2018-02-01", + "profileVersion": "2018-03-01-hybrid" + }, + { + "apiVersion": "2016-06-01", + "profileVersion": "2019-03-01-hybrid" + } + ], + "asyncTimeoutRules": [ + { + "actionName": "Microsoft.ClassicCompute/domainNames/write", + "timeout": "PT12H" + } + ], + "availabilityZoneRule": { + "availabilityZonePolicy": "MultiZoned" + }, + "capacityRule": { + "capacityPolicy": "Restricted", + "skuAlias": "incorrectAlias" + }, + "commonApiVersions": [ + "2021-01-01" + ], + "dstsConfiguration": { + "serviceDnsName": "prds.sparta.azure.com", + "serviceName": "prds-shim" + }, + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, + "endpoints": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "locations": [ + "East Asia", + "East US", + "North Europe", + "Southeast Asia", + "East US 2 EUAP", + "Central US EUAP", + "West Europe", + "West US", + "West Central US", + "West US 2" + ], + "requiredFeatures": [ + "Microsoft.Contoso/RPaaSSampleApp" + ] + } + ], + "groupingTag": "groupingTag", + "legacyName": "legacyName", + "legacyNames": [ + "legacyName" + ], + "legacyPolicy": { + "disallowedConditions": [ + { + "disallowedLegacyOperations": [ + "Create", + "Delete" + ], + "feature": "Microsoft.RP/ArmOnlyJobCollections" + } + ], + "disallowedLegacyOperations": [ + "Create" + ] + }, + "linkedOperationRules": [ + { + "linkedAction": "Blocked", + "linkedOperation": "CrossSubscriptionResourceMove" + }, + { + "linkedAction": "Validate", + "linkedOperation": "CrossResourceGroupResourceMove" + } + ], + "management": { + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "manifestLink": "https://azure.com", + "marketplaceOptions": { + "addOnPlanConversionAllowed": true + }, + "metadata": {}, + "notifications": [ + { + "notificationType": "SubscriptionNotification", + "skipNotifications": "Disabled" + } + ], + "openApiConfiguration": { + "validation": { + "allowNoncompliantCollectionResponse": true + } + }, + "policyExecutionType": "BypassPolicies", + "provisioningState": "Succeeded", + "regionality": "Regional", + "requestHeaderOptions": { + "optOutHeaders": "SystemDataCreatedByLastModifiedBy" + }, + "resourceCache": { + "enableResourceCache": true, + "resourceCacheExpirationTimespan": "PT2M" + }, + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + }, + "put": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceDeletionPolicy": "CascadeDeleteProxyOnlyChildren", + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true + }, + "resourceManagementOptions": { + "batchProvisioningSupport": { + "supportedOperations": "Get, Delete" + }, + "deleteDependencies": [ + { + "linkedProperty": "properties.edgeProfile.subscription.id" + } + ] + }, + "resourceQueryManagement": { + "filterOption": "EnableSubscriptionFilterOnTenant" + }, + "resourceTypeCommonAttributeManagement": { + "commonApiVersionsMergeMode": "Merge" + }, + "routingRule": { + "hostResourceType": "servers/databases" + }, + "routingType": "Default", + "supportsTags": true, + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ], + "templateDeploymentPolicy": { + "capabilities": "Preflight", + "preflightNotifications": "None", + "preflightOptions": "ValidationRequests, DeploymentRequests" + } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "description": "Successfully created the resource type.", + "body": { + "name": "Microsoft.Contoso/employees", + "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", + "properties": { + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, + "endpoints": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "locations": [ + "East Asia", + "East US", + "North Europe", + "Southeast Asia", + "East US 2 EUAP", + "Central US EUAP", + "West Europe", + "West US", + "West Central US", + "West US 2" + ], + "requiredFeatures": [ + "Microsoft.Contoso/RPaaSSampleApp" + ] + } + ], + "management": { + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "metadata": {}, + "openApiConfiguration": { + "validation": { + "allowNoncompliantCollectionResponse": true + } + }, + "provisioningState": "Succeeded", + "regionality": "Regional", + "requestHeaderOptions": { + "optOutHeaders": "SystemDataCreatedByLastModifiedBy" + }, + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + }, + "put": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true + }, + "routingType": "Default", + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "ResourceTypeRegistrations_CreateOrUpdate", + "title": "DirectResourceTypeRegistrations_CreateOrUpdate.json" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/GenerateManifest.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/GenerateManifest.json new file mode 100644 index 000000000000..4a64c2ae1d33 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/GenerateManifest.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Generates the manifest for the given provider.", + "body": { + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "crossTenantTokenValidation": "EnsureSecureValidation", + "globalNotificationEndpoints": [ + { + "enabled": true, + "endpointUri": "https://notificationendpoint.com" + } + ], + "management": { + "authorizationOwners": [ + "authorizationOwners-group" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "manifestOwners-group" + ], + "resourceAccessPolicy": "NotSpecified" + }, + "metadata": { + "onboardedVia": "ProviderHub" + }, + "namespace": "microsoft.contoso", + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "reRegisterSubscriptionMetadata": { + "concurrencyLimit": 100, + "enabled": true + }, + "resourceProviderAuthorizationRules": { + "asyncOperationPollingRules": { + "authorizationActions": [ + "Microsoft.Contoso/classicAdministrators/operationStatuses/read" + ] + } + }, + "resourceTypes": [ + { + "name": "Operations", + "allowedUnauthorizedActions": [ + "microsoft.contoso/operations/read" + ], + "allowedUnauthorizedActionsExtensions": [ + { + "action": "Microsoft.BizTalkServices/bizTalk/read", + "intent": "DEFERRED_ACCESS_CHECK" + } + ], + "endpoints": [ + { + "apiVersions": [ + "2020-01-01-preview" + ], + "endpointUri": "https://resource-endpoint.com/", + "locations": [ + "" + ], + "timeout": "PT20S" + } + ], + "linkedOperationRules": [], + "notifications": [ + { + "notificationType": "SubscriptionNotification", + "skipNotifications": "Disabled" + } + ], + "resourceValidation": "ReservedWords, ProfaneWords", + "routingType": "ProxyOnly, Tenant" + }, + { + "name": "Locations", + "endpoints": [ + { + "apiVersions": [ + "2020-01-01-preview" + ], + "endpointUri": "https://resource-endpoint.com/", + "locations": [ + "" + ], + "timeout": "PT20S" + } + ], + "linkedOperationRules": [], + "resourceValidation": "ReservedWords, ProfaneWords", + "routingType": "ProxyOnly" + }, + { + "name": "Locations/OperationStatuses", + "additionalOptions": "ProtectedAsyncOperationPolling", + "endpoints": [ + { + "apiVersions": [ + "2020-01-01-preview" + ], + "endpointUri": "https://resource-endpoint.com/", + "locations": [ + "" + ], + "timeout": "PT20S" + } + ], + "linkedOperationRules": [], + "resourceValidation": "ReservedWords, ProfaneWords", + "routingType": "ProxyOnly, LocationBased" + } + ], + "serviceName": "root", + "services": [ + { + "serviceName": "tags", + "status": "Inactive" + } + ] + } + } + }, + "operationId": "GenerateManifest", + "title": "GenerateManifest" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NewRegionFrontloadRelease_CreateOrUpdate.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NewRegionFrontloadRelease_CreateOrUpdate.json new file mode 100644 index 000000000000..ce509dfce56f --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NewRegionFrontloadRelease_CreateOrUpdate.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "properties": { + "properties": { + "copyFromLocation": "eastus", + "environmentType": "Prod", + "excludeResourceTypes": [ + "monitors" + ], + "frontloadLocation": "Israel Central", + "ignoreFields": [ + "apiversion" + ], + "includeResourceTypes": [ + "servers" + ], + "operationType": "Rollout", + "overrideEndpointLevelFields": { + "apiVersion": "2024-04-01-preview", + "apiVersions": [ + "2024-04-01-preview" + ], + "dstsConfiguration": { + "serviceDnsName": "messaging.azure-ppe.net", + "serviceName": "resourceprovider" + }, + "enabled": true, + "endpointType": "Production", + "endpointUri": "https://resource-endpoint.com/", + "featuresRule": "Any", + "locations": [ + "East US" + ], + "requiredFeatures": [ + "" + ], + "skuLink": "http://endpointuri/westus/skus", + "timeout": "PT20S", + "zones": [ + "zone1" + ] + }, + "overrideManifestLevelFields": { + "resourceHydrationAccounts": [ + { + "accountName": "classichydrationprodsn01", + "subscriptionId": "e4eae963-2d15-43e6-a097-98bd75b33edd" + } + ] + }, + "providerNamespace": "Microsoft.Contoso", + "serviceFeatureFlag": "DoNotCreate" + } + }, + "providerNamespace": "Microsoft.Contoso", + "releaseName": "2020week10", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "New region frontload release updated successfully.", + "body": { + "name": "Microsoft.Contoso/2020week10", + "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", + "properties": { + "provisioningState": "RolloutInProgress", + "specification": { + "canary": { + "regions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ] + }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, + "lowTraffic": { + "regions": [ + "southeastasia" + ], + "waitDuration": "PT24H" + }, + "mediumTraffic": { + "regions": [ + "uksouth", + "indiawest" + ], + "waitDuration": "PT24H" + }, + "restOfTheWorldGroupOne": { + "regions": [ + "koreacentral", + "francecentral", + "australiacentral", + "westus", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "restOfTheWorldGroupTwo": { + "regions": [ + "germanynorth", + "norwayeast", + "allotherregions" + ], + "waitDuration": "PT4H" + } + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap", + "allcompletedregions" + ], + "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", + "isCheckedIn": true, + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + } + } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "description": "New region frontload release started successfully.", + "body": { + "name": "Microsoft.Contoso/2020week10", + "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", + "properties": { + "provisioningState": "RolloutInProgress", + "specification": { + "canary": { + "regions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ], + "skipRegions": [ + "brazilus" + ] + }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, + "lowTraffic": { + "regions": [ + "southeastasia" + ], + "waitDuration": "PT24H" + }, + "mediumTraffic": { + "regions": [ + "uksouth", + "indiawest" + ], + "waitDuration": "PT24H" + }, + "restOfTheWorldGroupOne": { + "regions": [ + "koreacentral", + "francecentral", + "australiacentral", + "westus", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "restOfTheWorldGroupTwo": { + "regions": [ + "germanynorth", + "norwayeast", + "allotherregions" + ], + "waitDuration": "PT4H" + } + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap" + ], + "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", + "isCheckedIn": true, + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + }, + "nextTrafficRegion": "LowTraffic", + "nextTrafficRegionScheduledTime": "2020-03-03T22:00:00Z" + } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + }, + "headers": { + "location": "https://management.azure.com/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/operationStauses/11111111-f7ef-471a-a2f4-d0ebbf494f77", + "retry-after": "5000" + } + } + }, + "operationId": "NewRegionFrontloadRelease_CreateOrUpdate", + "title": "NewRegionFrontloadRelease_CreateOrUpdate" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NewRegionFrontloadRelease_GenerateManifest.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NewRegionFrontloadRelease_GenerateManifest.json new file mode 100644 index 000000000000..43cdfe2cf3e1 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NewRegionFrontloadRelease_GenerateManifest.json @@ -0,0 +1,194 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "properties": { + "properties": { + "copyFromLocation": "eastus", + "environmentType": "Prod", + "excludeResourceTypes": [ + "monitors" + ], + "frontloadLocation": "Israel Central", + "ignoreFields": [ + "apiversion" + ], + "includeResourceTypes": [ + "servers" + ], + "operationType": "Rollout", + "overrideEndpointLevelFields": { + "apiVersion": "2024-04-01-preview", + "apiVersions": [ + "2024-04-01-preview" + ], + "dstsConfiguration": { + "serviceDnsName": "messaging.azure-ppe.net", + "serviceName": "resourceprovider" + }, + "enabled": true, + "endpointType": "Production", + "endpointUri": "https://resource-endpoint.com/", + "featuresRule": "Any", + "locations": [ + "East US" + ], + "requiredFeatures": [ + "" + ], + "skuLink": "http://endpointuri/westus/skus", + "timeout": "PT20S", + "zones": [ + "zone1" + ] + }, + "overrideManifestLevelFields": { + "resourceHydrationAccounts": [ + { + "accountName": "classichydrationprodsn01", + "subscriptionId": "e4eae963-2d15-43e6-a097-98bd75b33edd" + } + ] + }, + "providerNamespace": "Microsoft.Contoso", + "serviceFeatureFlag": "DoNotCreate" + } + }, + "providerNamespace": "Microsoft.Contoso", + "releaseName": "2020week11", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "New region frontload release resource.", + "body": { + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "crossTenantTokenValidation": "EnsureSecureValidation", + "globalNotificationEndpoints": [ + { + "enabled": true, + "endpointUri": "https://notificationendpoint.com" + } + ], + "management": { + "authorizationOwners": [ + "authorizationOwners-group" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "manifestOwners-group" + ], + "resourceAccessPolicy": "NotSpecified" + }, + "metadata": { + "onboardedVia": "ProviderHub" + }, + "namespace": "microsoft.contoso", + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "reRegisterSubscriptionMetadata": { + "concurrencyLimit": 100, + "enabled": true + }, + "resourceProviderAuthorizationRules": { + "asyncOperationPollingRules": { + "authorizationActions": [ + "Microsoft.Contoso/classicAdministrators/operationStatuses/read" + ] + } + }, + "resourceTypes": [ + { + "name": "Operations", + "allowedUnauthorizedActions": [ + "microsoft.contoso/operations/read" + ], + "allowedUnauthorizedActionsExtensions": [ + { + "action": "Microsoft.BizTalkServices/bizTalk/read", + "intent": "DEFERRED_ACCESS_CHECK" + } + ], + "endpoints": [ + { + "apiVersions": [ + "2020-01-01-preview" + ], + "endpointUri": "https://resource-endpoint.com/", + "locations": [ + "" + ], + "timeout": "PT20S" + } + ], + "linkedOperationRules": [], + "resourceValidation": "ReservedWords, ProfaneWords", + "routingType": "ProxyOnly, Tenant" + }, + { + "name": "Locations", + "endpoints": [ + { + "apiVersions": [ + "2020-01-01-preview" + ], + "endpointUri": "https://resource-endpoint.com/", + "locations": [ + "" + ], + "timeout": "PT20S" + } + ], + "linkedOperationRules": [], + "resourceValidation": "ReservedWords, ProfaneWords", + "routingType": "ProxyOnly" + }, + { + "name": "Locations/OperationStatuses", + "additionalOptions": "ProtectedAsyncOperationPolling", + "endpoints": [ + { + "apiVersions": [ + "2020-01-01-preview" + ], + "endpointUri": "https://resource-endpoint.com/", + "locations": [ + "" + ], + "timeout": "PT20S" + } + ], + "linkedOperationRules": [], + "resourceValidation": "ReservedWords, ProfaneWords", + "routingType": "ProxyOnly, LocationBased" + } + ], + "serviceName": "root", + "services": [ + { + "serviceName": "tags", + "status": "Inactive" + } + ] + } + } + }, + "operationId": "NewRegionFrontloadRelease_GenerateManifest", + "title": "NewRegionFrontloadRelease_GenerateManifest" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NewRegionFrontloadRelease_Get.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NewRegionFrontloadRelease_Get.json new file mode 100644 index 000000000000..1b7f9de0e4f9 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NewRegionFrontloadRelease_Get.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "releaseName": "2020week10", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "New region frontload release resource.", + "body": { + "name": "Microsoft.Contoso/2020week10", + "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", + "properties": { + "provisioningState": "Cancelled", + "specification": { + "canary": { + "regions": [ + "eastus2euap", + "centraluseuap" + ], + "skipRegions": [ + "brazilus" + ] + }, + "expeditedRollout": { + "enabled": true + }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, + "lowTraffic": { + "regions": [ + "southeastasia" + ], + "waitDuration": "PT24H" + }, + "mediumTraffic": { + "regions": [ + "uksouth", + "indiawest" + ], + "waitDuration": "PT24H" + }, + "providerRegistration": { + "name": "Microsoft.Contoso", + "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", + "properties": { + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "management": { + "authorizationOwners": [ + "RPAAS-PlatformServiceAdministrator" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "resourceAccessPolicy": "NotSpecified" + }, + "metadata": null, + "namespace": "microsoft.contoso", + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "providerHubMetadata": { + "providerAuthentication": { + "allowedAudiences": [ + "https://management.core.windows.net/" + ] + } + }, + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded" + } + }, + "resourceTypeRegistrations": [ + { + "name": "Microsoft.Contoso/employees", + "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", + "properties": { + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, + "endpoints": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "locations": [ + "East Asia", + "East US", + "North Europe", + "Southeast Asia", + "East US 2 EUAP", + "Central US EUAP", + "West Europe", + "West US", + "West Central US", + "West US 2" + ], + "requiredFeatures": [ + "Microsoft.Contoso/RPaaSSampleApp" + ] + } + ], + "provisioningState": "Succeeded", + "regionality": "Regional", + "routingType": "Default", + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ] + } + } + ], + "restOfTheWorldGroupOne": { + "regions": [ + "koreacentral", + "francecentral", + "australiacentral", + "westus", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "restOfTheWorldGroupTwo": { + "regions": [ + "germanynorth", + "norwayeast", + "allotherregions" + ], + "waitDuration": "PT4H" + } + }, + "status": { + "completedRegions": [ + "brazilus", + "eastus2euap", + "centraluseuap", + "allcompletedregions" + ], + "failedOrSkippedRegions": { + "westus2": { + "code": "RolloutStoppedByUser", + "message": "Rollout was explicitly stopped by the user." + } + }, + "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", + "isCheckedIn": true, + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + }, + "subscriptionReregistrationResult": "ConditionalUpdate" + } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "NewRegionFrontloadRelease_Get", + "title": "NewRegionFrontloadRelease_Get" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NewRegionFrontloadRelease_Stop.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NewRegionFrontloadRelease_Stop.json new file mode 100644 index 000000000000..7fda2f87e051 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NewRegionFrontloadRelease_Stop.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "releaseName": "2020week10", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "The new region frontload release is stopped successfully." + } + }, + "operationId": "NewRegionFrontloadRelease_Stop", + "title": "NewRegionFrontloadRelease_Stop" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NotificationRegistrations_CreateOrUpdate.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NotificationRegistrations_CreateOrUpdate.json new file mode 100644 index 000000000000..0f6eae01532a --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NotificationRegistrations_CreateOrUpdate.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "notificationRegistrationName": "fooNotificationRegistration", + "properties": { + "properties": { + "includedEvents": [ + "*/write", + "Microsoft.Contoso/employees/delete" + ], + "messageScope": "RegisteredSubscriptions", + "notificationEndpoints": [ + { + "locations": [ + "", + "East US" + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications" + }, + { + "locations": [ + "North Europe" + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-northeurope/providers/Microsoft.EventHub/namespaces/europe-mgmtexpint/eventhubs/armlinkednotifications" + } + ], + "notificationMode": "EventHub" + } + }, + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Gets the notification registration details.", + "body": { + "name": "fooNotificationRegistration", + "type": "Microsoft.ProviderHub/providerRegistrations/notificationregistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/notificationregistrations/fooNotificationRegistration", + "properties": { + "includedEvents": [ + "*/write", + "Microsoft.Contoso/employees/delete" + ], + "messageScope": "RegisteredSubscriptions", + "notificationEndpoints": [ + { + "locations": [ + "", + "East US" + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications" + }, + { + "locations": [ + "North Europe" + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-northeurope/providers/Microsoft.EventHub/namespaces/europe-mgmtexpint/eventhubs/armlinkednotifications" + } + ], + "notificationMode": "EventHub" + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "NotificationRegistrations_CreateOrUpdate", + "title": "NotificationRegistrations_CreateOrUpdate" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NotificationRegistrations_Delete.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NotificationRegistrations_Delete.json new file mode 100644 index 000000000000..311904584a45 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NotificationRegistrations_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "notificationRegistrationName": "fooNotificationRegistration", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Successfully deleted the notification registration." + }, + "204": { + "description": "Resource does not exist." + } + }, + "operationId": "NotificationRegistrations_Delete", + "title": "NotificationRegistrations_Delete" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NotificationRegistrations_Get.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NotificationRegistrations_Get.json new file mode 100644 index 000000000000..83f4a098f7f6 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NotificationRegistrations_Get.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "notificationRegistrationName": "fooNotificationRegistration", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Gets the notification registration details.", + "body": { + "name": "fooNotificationRegistration", + "type": "Microsoft.ProviderHub/providerRegistrations/notificationregistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/notificationregistrations/fooNotificationRegistration", + "properties": { + "includedEvents": [ + "*/write", + "Microsoft.Contoso/employees/delete" + ], + "messageScope": "RegisteredSubscriptions", + "notificationEndpoints": [ + { + "locations": [ + "", + "East US" + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications" + }, + { + "locations": [ + "North Europe" + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-northeurope/providers/Microsoft.EventHub/namespaces/europe-mgmtexpint/eventhubs/armlinkednotifications" + } + ], + "notificationMode": "EventHub" + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "NotificationRegistrations_Get", + "title": "NotificationRegistrations_Get" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NotificationRegistrations_ListByProviderRegistration.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NotificationRegistrations_ListByProviderRegistration.json new file mode 100644 index 000000000000..345d493bacba --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/NotificationRegistrations_ListByProviderRegistration.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Gets the list of the notification registrations for the given provider.", + "body": { + "value": [ + { + "name": "fooNotificationRegistration", + "type": "Microsoft.ProviderHub/providerRegistrations/notificationRegistration", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/notificationRegistration/2020week01", + "properties": { + "includedEvents": [ + "*/write", + "Microsoft.Contoso/employees/delete" + ], + "messageScope": "RegisteredSubscriptions", + "notificationEndpoints": [ + { + "locations": [ + "", + "East US" + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications" + }, + { + "locations": [ + "North Europe" + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-northeurope/providers/Microsoft.EventHub/namespaces/europe-mgmtexpint/eventhubs/armlinkednotifications" + } + ], + "notificationMode": "EventHub" + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + }, + { + "name": "barNotificationRegistration", + "type": "Microsoft.ProviderHub/providerRegistrations/notificationRegistration", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/notificationRegistration/2020week01", + "properties": { + "includedEvents": [ + "*/delete" + ], + "messageScope": "RegisteredSubscriptions", + "notificationEndpoints": [ + { + "locations": [ + "" + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications" + } + ], + "notificationMode": "EventHub" + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "NotificationRegistrations_ListByProviderRegistration", + "title": "NotificationRegistrations_ListByProviderRegistration" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Operations_CreateOrUpdate.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Operations_CreateOrUpdate.json new file mode 100644 index 000000000000..6e32575d70d7 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Operations_CreateOrUpdate.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "OperationsPutContent": { + "properties": { + "contents": [ + { + "name": "RP.69C09791/register/action", + "actionType": "Internal", + "display": { + "default": { + "description": "Registers the subscription for the RP.69C09791 resource provider and enables the creation of RP.69C09791.", + "operation": "Registers the RP.69C09791 Resource Provider", + "provider": "RP.69C09791", + "resource": "Register" + } + }, + "isDataAction": true + }, + { + "name": "RP.69C09791/unregister/action", + "display": { + "default": { + "description": "Unregisters the subscription for the RP.69C09791 resource provider and enables the creation of RP.69C09791.", + "operation": "Unregisters the RP.69C09791 Resource Provider", + "provider": "RP.69C09791", + "resource": "Unregister" + }, + "en": { + "description": "ece249f5-b5b9-492d-ac68-b4e1be1677bc", + "operation": "d31623d6-8765-42fb-aca2-5a58303e52dd", + "provider": "RP.69C09791", + "resource": "2e1803d4-417f-492c-b305-148da38b211e" + } + }, + "isDataAction": false, + "origin": "System" + } + ] + } + }, + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "body": { + "name": "operationTest", + "type": "Microsoft.ProviderHub/providerRegistrations/operations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/operations/default", + "properties": { + "contents": [ + { + "name": "RP.69C09791/register/action", + "actionType": "Internal", + "display": { + "default": { + "description": "Registers the subscription for the RP.69C09791 resource provider and enables the creation of RP.69C09791.", + "operation": "Registers the RP.69C09791 Resource Provider", + "provider": "RP.69C09791", + "resource": "Register" + } + }, + "isDataAction": true + }, + { + "name": "RP.69C09791/unregister/action", + "display": { + "default": { + "description": "Unregisters the subscription for the RP.69C09791 resource provider and enables the creation of RP.69C09791.", + "operation": "Unregisters the RP.69C09791 Resource Provider", + "provider": "RP.69C09791", + "resource": "Unregister" + }, + "en": { + "description": "ece249f5-b5b9-492d-ac68-b4e1be1677bc", + "operation": "d31623d6-8765-42fb-aca2-5a58303e52dd", + "provider": "RP.69C09791", + "resource": "2e1803d4-417f-492c-b305-148da38b211e" + } + }, + "isDataAction": false, + "origin": "System" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Operations_CreateOrUpdate", + "title": "Operations_CreateOrUpdate" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Operations_Delete.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Operations_Delete.json new file mode 100644 index 000000000000..51e081e01fac --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Operations_Delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Successfully deleted the operation." + }, + "204": { + "description": "Resource does not exist." + } + }, + "operationId": "Operations_Delete", + "title": "Operations_Delete" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Operations_List.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Operations_List.json new file mode 100644 index 000000000000..5d2e0cc97bea --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Operations_List.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2024-09-01" + }, + "responses": { + "200": { + "description": "The list of supported operations has been fetched successfully.", + "body": { + "value": [ + { + "name": "Microsoft.ProviderHub/register/action", + "display": { + "description": "Registers the specified subscription with Microsoft.ProviderHub resource provider", + "operation": "Register for Microsoft.ProviderHub", + "provider": "Microsoft ProviderHub", + "resource": "register" + }, + "isDataAction": false + }, + { + "name": "Microsoft.ProviderHub/defaultRollouts/write", + "display": { + "description": "Creates or Updates any rollout", + "operation": "Create or Update rollout", + "provider": "Microsoft ProviderHub", + "resource": "defaultRollouts" + }, + "isDataAction": false + }, + { + "name": "Microsoft.ProviderHub/defaultRollouts/read", + "display": { + "description": "Reads any rollout", + "operation": "Read rollout", + "provider": "Microsoft ProviderHub", + "resource": "defaultRollouts" + }, + "isDataAction": false + }, + { + "name": "Microsoft.ProviderHub/defaultRollouts/delete", + "display": { + "description": "Deletes any rollout", + "operation": "Delete rollout", + "provider": "Microsoft ProviderHub", + "resource": "defaultRollouts" + }, + "isDataAction": false + }, + { + "name": "Microsoft.ProviderHub/defaultRollouts/stop/action", + "display": { + "description": "Deletes any rollout", + "operation": "Delete rollout", + "provider": "Microsoft ProviderHub", + "resource": "defaultRollouts" + }, + "isDataAction": false + }, + { + "name": "Microsoft.ProviderHub/customRollouts/write", + "display": { + "description": "Creates or Updates any rollout", + "operation": "Create or Update rollout", + "provider": "Microsoft ProviderHub", + "resource": "customRollouts" + }, + "isDataAction": false + }, + { + "name": "Microsoft.ProviderHub/customRollouts/read", + "display": { + "description": "Reads any rollout", + "operation": "Read rollout", + "provider": "Microsoft ProviderHub", + "resource": "customRollouts" + }, + "isDataAction": false + } + ] + } + } + }, + "operationId": "Operations_List", + "title": "Operations_List" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Operations_ListByProviderRegistration.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Operations_ListByProviderRegistration.json new file mode 100644 index 000000000000..2dc6beb86fdb --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Operations_ListByProviderRegistration.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Gets the operations supported by the given provider.", + "body": [ + { + "name": "Microsoft.Contoso/Employees/Read", + "display": { + "description": "Read employees", + "operation": "Gets/List employee resources", + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Contoso/Employees/Write", + "display": { + "description": "Writes employees", + "operation": "Create/update employee resources", + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Contoso/Employees/Delete", + "display": { + "description": "Deletes employees", + "operation": "Deletes employee resource", + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": false, + "origin": "User" + }, + { + "name": "Microsoft.Contoso/Employees/Action", + "display": { + "description": "Writes employees", + "operation": "Create/update employee resources", + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": true, + "origin": "System" + } + ] + } + }, + "operationId": "Operations_ListByProviderRegistration", + "title": "Operations_ListByProviderRegistration" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_Create.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_Create.json new file mode 100644 index 000000000000..14a893458b48 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_Create.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "properties": { + "location": "eastus" + }, + "providerMonitorSettingName": "ContosoMonitorSetting", + "resourceGroupName": "default", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Successfully updated the provider monitor setting.", + "body": { + "name": "ContosoMonitorSetting", + "type": "Microsoft.ProviderHub/providerMonitorSettings", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + }, + "systemData": { + "createdAt": "2024-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2024-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "description": "Successfully created the provider monitor setting.", + "body": { + "name": "ContosoMonitorSetting", + "type": "Microsoft.ProviderHub/providerMonitorSettings", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + }, + "systemData": { + "createdAt": "2024-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2024-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "ProviderMonitorSettings_Create", + "title": "ProviderMonitorSettings_Create" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_Delete.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_Delete.json new file mode 100644 index 000000000000..2dd5e9aabd06 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerMonitorSettingName": "ContosoMonitorSetting", + "resourceGroupName": "default", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Successfully deleted the provider monitor setting." + }, + "204": { + "description": "Resource does not exist." + } + }, + "operationId": "ProviderMonitorSettings_Delete", + "title": "ProviderMonitorSettings_Delete" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_Get.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_Get.json new file mode 100644 index 000000000000..5a0f08fad314 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_Get.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerMonitorSettingName": "ContosoMonitorSetting", + "resourceGroupName": "default", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "", + "body": { + "name": "ContosoMonitorSetting", + "type": "Microsoft.ProviderHub/providerMonitorSettings", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + }, + "systemData": { + "createdAt": "2024-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2024-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "ProviderMonitorSettings_Get", + "title": "ProviderMonitorSettings_Get" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_ListByResourceGroup.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_ListByResourceGroup.json new file mode 100644 index 000000000000..035fdb733c6c --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_ListByResourceGroup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "resourceGroupName": "default", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ContosoMonitorSetting", + "type": "Microsoft.ProviderHub/providerMonitorSettings", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + }, + "systemData": { + "createdAt": "2024-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2024-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "ProviderMonitorSettings_ListByResourceGroup", + "title": "ProviderMonitorSettings_ListByResourceGroup" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_ListBySubscription.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_ListBySubscription.json new file mode 100644 index 000000000000..4c47f7e4292f --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_ListBySubscription.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ContosoMonitorSetting", + "type": "Microsoft.ProviderHub/providerMonitorSettings", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + }, + "systemData": { + "createdAt": "2024-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2024-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "ProviderMonitorSettings_ListBySubscription", + "title": "ProviderMonitorSettings_ListBySubscription" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_Update.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_Update.json new file mode 100644 index 000000000000..55d3959b6ead --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderMonitorSettings_Update.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerMonitorSettingName": "ContosoMonitorSetting", + "resourceGroupName": "default", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Successfully updated the provider monitor setting.", + "body": { + "name": "ContosoMonitorSetting", + "type": "Microsoft.ProviderHub/providerMonitorSettings", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + }, + "systemData": { + "createdAt": "2024-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2024-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "ProviderMonitorSettings_Update", + "title": "ProviderMonitorSettings_Update" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderRegistrations_CreateOrUpdate.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderRegistrations_CreateOrUpdate.json new file mode 100644 index 000000000000..8ec06b9999a9 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderRegistrations_CreateOrUpdate.json @@ -0,0 +1,288 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "properties": { + "properties": { + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "crossTenantTokenValidation": "EnsureSecureValidation", + "management": { + "canaryManifestOwners": [ + "SPARTA-PlatformServiceAdmin" + ], + "errorResponseMessageOptions": { + "serverFailureResponseMessageType": "OutageReporting" + }, + "expeditedRolloutMetadata": { + "enabled": false, + "expeditedRolloutIntent": "Hotfix" + }, + "expeditedRolloutSubmitters": [ + "SPARTA-PlatformServiceOperator" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "Contoso Resource Provider", + "incidentRoutingTeam": "Contoso Triage", + "pcCode": "P1234", + "profitCenterProgramId": "1234", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "providerType": "Internal", + "providerVersion": "2.0", + "serviceName": "root", + "services": [ + { + "serviceName": "tags", + "status": "Inactive" + } + ] + } + }, + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "", + "body": { + "name": "Microsoft.Contoso", + "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", + "properties": { + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "crossTenantTokenValidation": "EnsureSecureValidation", + "management": { + "authorizationOwners": [ + "authorizationOwners-group" + ], + "canaryManifestOwners": [ + "SPARTA-PlatformServiceAdmin" + ], + "errorResponseMessageOptions": { + "serverFailureResponseMessageType": "OutageReporting" + }, + "expeditedRolloutMetadata": { + "enabled": false, + "expeditedRolloutIntent": "Hotfix" + }, + "expeditedRolloutSubmitters": [ + "SPARTA-PlatformServiceOperator" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "manifestOwners-group" + ], + "pcCode": "P1234", + "profitCenterProgramId": "1234", + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "metadata": { + "onboardedVia": "ProviderHub" + }, + "namespace": "Microsoft.Contoso", + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + }, + { + "allowedThirdPartyExtensions": [ + { + "name": "name" + } + ], + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k2", + "groupingTag": "GroupingTag", + "managedByAuthorization": { + "additionalAuthorizations": [ + { + "applicationId": "3e5aaca6-6470-4be4-8a17-24ab9519414b", + "roleDefinitionId": "1e86f807-6ec0-40b3-8b5f-686b7e43a0a2" + } + ], + "allowManagedByInheritance": true, + "managedByResourceRoleDefinitionId": "9e3af657-a8ff-583c-a75c-2fe7c4bcb635" + }, + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b3" + } + ], + "providerHubMetadata": { + "directRpRoleDefinitionId": "1x86y807-6zx0-40y3-8z5x-686y7z43x0y2" + }, + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded", + "resourceProviderAuthorizationRules": { + "asyncOperationPollingRules": { + "authorizationActions": [ + "Microsoft.Contoso/classicAdministrators/operationStatuses/read" + ] + } + }, + "serviceName": "root", + "services": [ + { + "serviceName": "tags", + "status": "Inactive" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "description": "Successfully created the provider registration.", + "body": { + "name": "Microsoft.Contoso", + "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", + "properties": { + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "crossTenantTokenValidation": "EnsureSecureValidation", + "management": { + "authorizationOwners": [ + "authorizationOwners-group" + ], + "canaryManifestOwners": [ + "SPARTA-PlatformServiceAdmin" + ], + "errorResponseMessageOptions": { + "serverFailureResponseMessageType": "OutageReporting" + }, + "expeditedRolloutMetadata": { + "enabled": false, + "expeditedRolloutIntent": "Hotfix" + }, + "expeditedRolloutSubmitters": [ + "SPARTA-PlatformServiceOperator" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "manifestOwners-group" + ], + "pcCode": "P1234", + "profitCenterProgramId": "1234", + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "metadata": { + "onboardedVia": "ProviderHub" + }, + "namespace": "Microsoft.Contoso", + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + }, + { + "allowedThirdPartyExtensions": [ + { + "name": "name" + } + ], + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k2", + "groupingTag": "GroupingTag", + "managedByAuthorization": { + "additionalAuthorizations": [ + { + "applicationId": "3e5aaca6-6470-4be4-8a17-24ab9519414b", + "roleDefinitionId": "1e86f807-6ec0-40b3-8b5f-686b7e43a0a2" + } + ], + "allowManagedByInheritance": true, + "managedByResourceRoleDefinitionId": "9e3af657-a8ff-583c-a75c-2fe7c4bcb635" + }, + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b3" + } + ], + "providerHubMetadata": { + "directRpRoleDefinitionId": "1x86y807-6zx0-40y3-8z5x-686y7z43x0y2" + }, + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded", + "resourceProviderAuthorizationRules": { + "asyncOperationPollingRules": { + "authorizationActions": [ + "Microsoft.Contoso/classicAdministrators/operationStatuses/read" + ] + } + }, + "serviceName": "root", + "services": [ + { + "serviceName": "tags", + "status": "Inactive" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "ProviderRegistrations_CreateOrUpdate", + "title": "ProviderRegistrations_CreateOrUpdate" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderRegistrations_Delete.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderRegistrations_Delete.json new file mode 100644 index 000000000000..8c5a2f785f55 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderRegistrations_Delete.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Successfully deleted the provider registration." + }, + "204": { + "description": "Resource does not exist." + } + }, + "operationId": "ProviderRegistrations_Delete", + "title": "ProviderRegistrations_Delete" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderRegistrations_GenerateOperations.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderRegistrations_GenerateOperations.json new file mode 100644 index 000000000000..6e0dbea90c4e --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderRegistrations_GenerateOperations.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "", + "body": [ + { + "name": "Microsoft.Contoso/Employees/Read", + "display": { + "description": "Read employees", + "operation": "Gets/List employee resources", + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Contoso/Employees/Write", + "display": { + "description": "Writes employees", + "operation": "Create/update employee resources", + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Contoso/Employees/Delete", + "display": { + "description": "Deletes employees", + "operation": "Deletes employee resource", + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": false, + "origin": "User" + }, + { + "name": "Microsoft.Contoso/Employees/Action", + "display": { + "description": "Writes employees", + "operation": "Create/update employee resources", + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": true, + "origin": "System" + } + ] + } + }, + "operationId": "ProviderRegistrations_GenerateOperations", + "title": "ProviderRegistrations_GenerateOperations" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderRegistrations_Get.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderRegistrations_Get.json new file mode 100644 index 000000000000..06c937a0180b --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderRegistrations_Get.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "", + "body": { + "name": "Microsoft.Contoso", + "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", + "properties": { + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "crossTenantTokenValidation": "EnsureSecureValidation", + "management": { + "authorizationOwners": [ + "RPAAS-PlatformServiceAdministrator" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "pcCode": "P1234", + "profitCenterProgramId": "1234", + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "metadata": null, + "namespace": "microsoft.contoso", + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "providerHubMetadata": { + "directRpRoleDefinitionId": "1x86y807-6zx0-40y3-8z5x-686y7z43x0y2", + "providerAuthentication": { + "allowedAudiences": [ + "https://management.core.windows.net/" + ] + } + }, + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded", + "resourceProviderAuthorizationRules": { + "asyncOperationPollingRules": { + "authorizationActions": [ + "Microsoft.Contoso/classicAdministrators/operationStatuses/read" + ] + } + }, + "serviceName": "root", + "services": [ + { + "serviceName": "tags", + "status": "Inactive" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "ProviderRegistrations_Get", + "title": "ProviderRegistrations_Get" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderRegistrations_List.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderRegistrations_List.json new file mode 100644 index 000000000000..59bd63227584 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ProviderRegistrations_List.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Contoso", + "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", + "properties": { + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "crossTenantTokenValidation": "EnsureSecureValidation", + "management": { + "authorizationOwners": [ + "authorizationOwners-group" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "manifestOwners-group" + ], + "pcCode": "P1234", + "profitCenterProgramId": "1234", + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "namespace": "microsoft.contoso", + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "providerHubMetadata": { + "directRpRoleDefinitionId": "1x86y807-6zx0-40y3-8z5x-686y7z43x0y2", + "providerAuthentication": { + "allowedAudiences": [ + "https://management.core.windows.net/" + ] + } + }, + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded", + "resourceProviderAuthorizationRules": { + "asyncOperationPollingRules": { + "authorizationActions": [ + "Microsoft.Contoso/classicAdministrators/operationStatuses/read" + ] + } + }, + "serviceName": "root", + "services": [ + { + "serviceName": "tags", + "status": "Inactive" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "ProviderRegistrations_List", + "title": "ProviderRegistrations_List" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ResourceActions_DeleteResources.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ResourceActions_DeleteResources.json new file mode 100644 index 000000000000..9383191adf0c --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ResourceActions_DeleteResources.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "properties": { + "resources": [ + { + "homeTenantId": "11111111-f7ef-471a-a2f4-d0ebbf494f77", + "location": "southeastasia", + "resourceId": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.Contoso/employee/test" + } + ] + }, + "providerNamespace": "Microsoft.Contoso", + "resourceActionName": "default", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "202": { + "description": "Resource management action started.", + "headers": { + "location": "https://management.azure.com/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/operationStauses/11111111-f7ef-471a-a2f4-d0ebbf494f77", + "retry-after": "5000" + } + } + }, + "operationId": "ResourceActions_DeleteResources", + "title": "ResourceActions_DeleteResources" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ResourceTypeRegistrations_CreateOrUpdate.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ResourceTypeRegistrations_CreateOrUpdate.json new file mode 100644 index 000000000000..549b0fca9d75 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ResourceTypeRegistrations_CreateOrUpdate.json @@ -0,0 +1,294 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "properties": { + "properties": { + "crossTenantTokenValidation": "EnsureSecureValidation", + "endpoints": [ + { + "apiVersions": [ + "2020-06-01-preview" + ], + "locations": [ + "West US", + "East US", + "North Europe" + ], + "requiredFeatures": [ + "" + ] + } + ], + "management": { + "authorizationOwners": [ + "RPAAS-PlatformServiceAdministrator" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "metadata": {}, + "notifications": [ + { + "notificationType": "SubscriptionNotification", + "skipNotifications": "Disabled" + } + ], + "openApiConfiguration": { + "validation": { + "allowNoncompliantCollectionResponse": true + } + }, + "regionality": "Regional", + "requestHeaderOptions": { + "optOutHeaders": "SystemDataCreatedByLastModifiedBy" + }, + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + }, + "put": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true + }, + "routingType": "Default", + "swaggerSpecifications": [ + { + "apiVersions": [ + "2020-06-01-preview" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ] + } + }, + "providerNamespace": "Microsoft.Contoso", + "resourceType": "employees", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Successfully updated the resource type.", + "body": { + "name": "Microsoft.Contoso/employees", + "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", + "properties": { + "crossTenantTokenValidation": "EnsureSecureValidation", + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, + "endpoints": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "locations": [ + "East Asia", + "East US", + "North Europe", + "Southeast Asia", + "East US 2 EUAP", + "Central US EUAP", + "West Europe", + "West US", + "West Central US", + "West US 2" + ], + "requiredFeatures": [ + "Microsoft.Contoso/RPaaSSampleApp" + ] + } + ], + "management": { + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "metadata": {}, + "notifications": [ + { + "notificationType": "SubscriptionNotification", + "skipNotifications": "Disabled" + } + ], + "openApiConfiguration": { + "validation": { + "allowNoncompliantCollectionResponse": true + } + }, + "provisioningState": "Succeeded", + "regionality": "Regional", + "requestHeaderOptions": { + "optOutHeaders": "SystemDataCreatedByLastModifiedBy" + }, + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + }, + "put": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceDeletionPolicy": "CascadeDeleteProxyOnlyChildren", + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true + }, + "routingType": "Default", + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + }, + "201": { + "description": "Successfully created the resource type.", + "body": { + "name": "Microsoft.Contoso/employees", + "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", + "properties": { + "crossTenantTokenValidation": "EnsureSecureValidation", + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, + "endpoints": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "locations": [ + "East Asia", + "East US", + "North Europe", + "Southeast Asia", + "East US 2 EUAP", + "Central US EUAP", + "West Europe", + "West US", + "West Central US", + "West US 2" + ], + "requiredFeatures": [ + "Microsoft.Contoso/RPaaSSampleApp" + ] + } + ], + "management": { + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "metadata": {}, + "openApiConfiguration": { + "validation": { + "allowNoncompliantCollectionResponse": true + } + }, + "provisioningState": "Succeeded", + "regionality": "Regional", + "requestHeaderOptions": { + "optOutHeaders": "SystemDataCreatedByLastModifiedBy" + }, + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + }, + "put": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true + }, + "routingType": "Default", + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "ResourceTypeRegistrations_CreateOrUpdate", + "title": "ResourceTypeRegistrations_CreateOrUpdate" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ResourceTypeRegistrations_Delete.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ResourceTypeRegistrations_Delete.json new file mode 100644 index 000000000000..872b3553fab5 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ResourceTypeRegistrations_Delete.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "202": { + "description": "Delete request accepted.", + "headers": { + "location": "https://management.azure.com/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/operationStauses/11111111-f7ef-471a-a2f4-d0ebbf494f77", + "retry-after": "5000" + } + }, + "204": { + "description": "Resource does not exist." + } + }, + "operationId": "ResourceTypeRegistrations_Delete", + "title": "ResourceTypeRegistrations_Delete" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ResourceTypeRegistrations_Get.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ResourceTypeRegistrations_Get.json new file mode 100644 index 000000000000..3ab5a53aa629 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ResourceTypeRegistrations_Get.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "employees", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "", + "body": { + "name": "Microsoft.Contoso/employees", + "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", + "properties": { + "crossTenantTokenValidation": "EnsureSecureValidation", + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, + "endpoints": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "locations": [ + "East Asia", + "East US", + "North Europe", + "Southeast Asia", + "East US 2 EUAP", + "Central US EUAP", + "West Europe", + "West US", + "West Central US", + "West US 2" + ], + "requiredFeatures": [ + "Microsoft.Contoso/RPaaSSampleApp" + ] + } + ], + "management": { + "authorizationOwners": [ + "RPAAS-PlatformServiceAdministrator" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "metadata": {}, + "notifications": [ + { + "notificationType": "SubscriptionNotification", + "skipNotifications": "Disabled" + } + ], + "openApiConfiguration": { + "validation": { + "allowNoncompliantCollectionResponse": false + } + }, + "provisioningState": "Succeeded", + "regionality": "Regional", + "requestHeaderOptions": { + "optOutHeaders": "SystemDataCreatedByLastModifiedBy" + }, + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + }, + "put": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true + }, + "routingType": "Default", + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "ResourceTypeRegistrations_Get", + "title": "ResourceTypeRegistrations_Get" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ResourceTypeRegistrations_ListByProviderRegistration.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ResourceTypeRegistrations_ListByProviderRegistration.json new file mode 100644 index 000000000000..838f3653631f --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/ResourceTypeRegistrations_ListByProviderRegistration.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "", + "body": { + "value": [ + { + "name": "Microsoft.Contoso/employees", + "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", + "properties": { + "crossTenantTokenValidation": "EnsureSecureValidation", + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, + "endpoints": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "locations": [ + "East Asia", + "East US", + "North Europe", + "Southeast Asia", + "East US 2 EUAP", + "Central US EUAP", + "West Europe", + "West US", + "West Central US", + "West US 2" + ], + "requiredFeatures": [ + "Microsoft.Contoso/RPaaSSampleApp" + ] + } + ], + "management": { + "authorizationOwners": [ + "RPAAS-PlatformServiceAdministrator" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] + }, + "metadata": {}, + "notifications": [ + { + "notificationType": "SubscriptionNotification", + "skipNotifications": "Disabled" + } + ], + "openApiConfiguration": { + "validation": { + "allowNoncompliantCollectionResponse": false + } + }, + "provisioningState": "Succeeded", + "regionality": "Regional", + "requestHeaderOptions": { + "optOutHeaders": "SystemDataCreatedByLastModifiedBy" + }, + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + }, + "put": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true + }, + "routingType": "Default", + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "ResourceTypeRegistrations_ListByProviderRegistration", + "title": "ResourceTypeRegistrations_ListByProviderRegistration" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_CreateOrUpdate.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_CreateOrUpdate.json new file mode 100644 index 000000000000..e32bfc0afc7b --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_CreateOrUpdate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "properties": { + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "kind": "Standard", + "tier": "Tier1" + }, + { + "name": "premiumSku", + "costs": [ + { + "meterId": "xxx" + } + ], + "kind": "Premium", + "tier": "Tier2" + } + ] + } + }, + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "", + "body": { + "name": "Microsoft.Contoso/employees/sku1", + "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/skus/sku1", + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Skus_CreateOrUpdate", + "title": "Skus_CreateOrUpdate" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_CreateOrUpdateNestedResourceTypeFirst.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_CreateOrUpdateNestedResourceTypeFirst.json new file mode 100644 index 000000000000..88f6c7770f74 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_CreateOrUpdateNestedResourceTypeFirst.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "properties": { + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "kind": "Standard", + "tier": "Tier1" + }, + { + "name": "premiumSku", + "costs": [ + { + "meterId": "xxx" + } + ], + "kind": "Premium", + "tier": "Tier2" + } + ] + } + }, + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "", + "body": { + "name": "Microsoft.Contoso/employees/nestedEmployee/sku1", + "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/skus/sku1", + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Skus_CreateOrUpdateNestedResourceTypeFirst", + "title": "Skus_CreateOrUpdateNestedResourceTypeFirst" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_CreateOrUpdateNestedResourceTypeSecond.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_CreateOrUpdateNestedResourceTypeSecond.json new file mode 100644 index 000000000000..29c472385658 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_CreateOrUpdateNestedResourceTypeSecond.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "properties": { + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "kind": "Standard", + "tier": "Tier1" + }, + { + "name": "premiumSku", + "costs": [ + { + "meterId": "xxx" + } + ], + "kind": "Premium", + "tier": "Tier2" + } + ] + } + }, + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "", + "body": { + "name": "Microsoft.Contoso/employees/nestedEmployee/nestedEmployee2/sku1", + "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/skus/sku1", + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Skus_CreateOrUpdateNestedResourceTypeSecond", + "title": "Skus_CreateOrUpdateNestedResourceTypeSecond" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_CreateOrUpdateNestedResourceTypeThird.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_CreateOrUpdateNestedResourceTypeThird.json new file mode 100644 index 000000000000..f99471e200ee --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_CreateOrUpdateNestedResourceTypeThird.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "nestedResourceTypeThird": "nestedResourceTypeThird", + "properties": { + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "kind": "Standard", + "tier": "Tier1" + }, + { + "name": "premiumSku", + "costs": [ + { + "meterId": "xxx" + } + ], + "kind": "Premium", + "tier": "Tier2" + } + ] + } + }, + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "", + "body": { + "name": "Microsoft.Contoso/employees/nestedEmployee/nestedEmployee2/nestedEmployee3/sku1", + "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/resourcetypeRegistrations/nestedEmployee3/skus/sku1", + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Skus_CreateOrUpdateNestedResourceTypeThird", + "title": "Skus_CreateOrUpdateNestedResourceTypeThird" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_Delete.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_Delete.json new file mode 100644 index 000000000000..9e50d95a123b --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_Delete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Successfully deleted the resource type sku." + }, + "204": { + "description": "Resource does not exist." + } + }, + "operationId": "Skus_Delete", + "title": "Skus_Delete" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_DeleteNestedResourceTypeFirst.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_DeleteNestedResourceTypeFirst.json new file mode 100644 index 000000000000..90a09dad8f74 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_DeleteNestedResourceTypeFirst.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Successfully deleted the resource type sku." + }, + "204": { + "description": "Resource does not exist." + } + }, + "operationId": "Skus_DeleteNestedResourceTypeFirst", + "title": "Skus_DeleteNestedResourceTypeFirst" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_DeleteNestedResourceTypeSecond.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_DeleteNestedResourceTypeSecond.json new file mode 100644 index 000000000000..ab4b3c07cf87 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_DeleteNestedResourceTypeSecond.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Successfully deleted the resource type sku." + }, + "204": { + "description": "Resource does not exist." + } + }, + "operationId": "Skus_DeleteNestedResourceTypeSecond", + "title": "Skus_DeleteNestedResourceTypeSecond" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_DeleteNestedResourceTypeThird.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_DeleteNestedResourceTypeThird.json new file mode 100644 index 000000000000..c27a6fa71c41 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_DeleteNestedResourceTypeThird.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "nestedResourceTypeThird": "nestedResourceTypeThird", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "description": "Successfully deleted the resource type sku." + }, + "204": { + "description": "Resource does not exist." + } + }, + "operationId": "Skus_DeleteNestedResourceTypeThird", + "title": "Skus_DeleteNestedResourceTypeThird" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_Get.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_Get.json new file mode 100644 index 000000000000..297bbbb2e8b4 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "body": { + "name": "Microsoft.Contoso/employees/sku1", + "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/skus/sku1", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "kind": "Standard", + "tier": "Tier1" + }, + { + "name": "premiumSku", + "costs": [ + { + "meterId": "xxx" + } + ], + "kind": "Premium", + "tier": "Tier2" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Skus_Get", + "title": "Skus_Get" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_GetNestedResourceTypeFirst.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_GetNestedResourceTypeFirst.json new file mode 100644 index 000000000000..7453ab9862ac --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_GetNestedResourceTypeFirst.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "body": { + "name": "Microsoft.Contoso/employees/nestedEmployee/sku1", + "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/skus/sku1", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "kind": "Standard", + "tier": "Tier1" + }, + { + "name": "premiumSku", + "costs": [ + { + "meterId": "xxx" + } + ], + "kind": "Premium", + "tier": "Tier2" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Skus_GetNestedResourceTypeFirst", + "title": "Skus_GetNestedResourceTypeFirst" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_GetNestedResourceTypeSecond.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_GetNestedResourceTypeSecond.json new file mode 100644 index 000000000000..7f4fc3de3f04 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_GetNestedResourceTypeSecond.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "body": { + "name": "Microsoft.Contoso/employees/nestedEmployee/nestedEmployee2/sku1", + "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/skus/sku1", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "kind": "Standard", + "tier": "Tier1" + }, + { + "name": "premiumSku", + "costs": [ + { + "meterId": "xxx" + } + ], + "kind": "Premium", + "tier": "Tier2" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Skus_GetNestedResourceTypeSecond", + "title": "Skus_GetNestedResourceTypeSecond" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_GetNestedResourceTypeThird.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_GetNestedResourceTypeThird.json new file mode 100644 index 000000000000..a58a3c76b33b --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_GetNestedResourceTypeThird.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "nestedResourceTypeThird": "nestedResourceTypeThird", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "body": { + "name": "Microsoft.Contoso/employees/nestedEmployee/nestedEmployee2/nestedEmployee3/sku1", + "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/resourcetypeRegistrations/nestedEmployee3/skus/sku1", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "kind": "Standard", + "tier": "Tier1" + }, + { + "name": "premiumSku", + "costs": [ + { + "meterId": "xxx" + } + ], + "kind": "Premium", + "tier": "Tier2" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + } + }, + "operationId": "Skus_GetNestedResourceTypeThird", + "title": "Skus_GetNestedResourceTypeThird" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_ListByResourceTypeRegistrations.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_ListByResourceTypeRegistrations.json new file mode 100644 index 000000000000..4d6ab4595e3a --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_ListByResourceTypeRegistrations.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Contoso/employees/sku1", + "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/skus/sku1", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "kind": "Standard", + "tier": "Tier1" + }, + { + "name": "premiumSku", + "costs": [ + { + "meterId": "xxx" + } + ], + "kind": "Premium", + "tier": "Tier2" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "Skus_ListByResourceTypeRegistrations", + "title": "Skus_ListByResourceTypeRegistrations" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst.json new file mode 100644 index 000000000000..e158490228b8 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Contoso/employees/nestedEmployee/sku1", + "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/skus/sku1", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "kind": "Standard", + "tier": "Tier1" + }, + { + "name": "premiumSku", + "costs": [ + { + "meterId": "xxx" + } + ], + "kind": "Premium", + "tier": "Tier2" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst", + "title": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond.json new file mode 100644 index 000000000000..0980e199c059 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Contoso/employees/nestedEmployee/nestedEmployee2/sku1", + "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/skus/sku1", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "kind": "Standard", + "tier": "Tier1" + }, + { + "name": "premiumSku", + "costs": [ + { + "meterId": "xxx" + } + ], + "kind": "Premium", + "tier": "Tier2" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond", + "title": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond" +} diff --git a/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird.json b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird.json new file mode 100644 index 000000000000..19ceeb624b9e --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/examples/2024-09-01/Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "nestedResourceTypeThird": "nestedResourceTypeThird", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Contoso/employees/nestedEmployee/nestedEmployee2/nestedEmployee3/sku1", + "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/resourcetypeRegistrations/nestedEmployee3/skus/sku1", + "properties": { + "skuSettings": [ + { + "name": "freeSku", + "kind": "Standard", + "tier": "Tier1" + }, + { + "name": "premiumSku", + "costs": [ + { + "meterId": "xxx" + } + ], + "kind": "Premium", + "tier": "Tier2" + } + ] + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" + } + } + ] + } + } + }, + "operationId": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird", + "title": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird" +} diff --git a/specification/providerhub/ProviderHub.Management/main.tsp b/specification/providerhub/ProviderHub.Management/main.tsp new file mode 100644 index 000000000000..fad37d6ad4f7 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/main.tsp @@ -0,0 +1,59 @@ +/** + * PLEASE DO NOT REMOVE - USED FOR CONVERTER METRICS + * Generated by package: @autorest/openapi-to-typespec + * Parameters used: + * isFullCompatible: true + * guessResourceKey: false + * Version: 0.11.5 + * Date: 2025-12-03T07:39:14.457Z + */ +import "@typespec/rest"; +import "@typespec/versioning"; +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; +import "./models.tsp"; +import "./back-compatible.tsp"; +import "./CustomRollout.tsp"; +import "./DefaultRollout.tsp"; +import "./NotificationRegistration.tsp"; +import "./OperationsPutContent.tsp"; +import "./ProviderRegistration.tsp"; +import "./ResourceTypeRegistration.tsp"; +import "./SkuResource.tsp"; +import "./AuthorizedApplication.tsp"; +import "./ProviderMonitorSetting.tsp"; + +using TypeSpec.Rest; +using TypeSpec.Http; +using Azure.ResourceManager.Foundations; +using Azure.Core; +using Azure.ResourceManager; +using TypeSpec.Versioning; +/** + * Provider Hub + */ +#suppress "@azure-tools/typespec-client-generator-core/client-location-duplicate" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +@armProviderNamespace +@service(#{ title: "ProviderHub" }) +@versioned(Versions) +@armCommonTypesVersion(Azure.ResourceManager.CommonTypes.Versions.v6) +namespace Microsoft.ProviderHub; + +/** + * The available API versions. + */ +enum Versions { + /** + * The 2024-09-01 API version. + */ + v2024_09_01: "2024-09-01", +} + +/** + * Lists all the operations supported by Microsoft.ProviderHub. + */ +interface Operations + extends Azure.ResourceManager.Legacy.Operations< + ArmResponse, + ErrorResponse + > {} diff --git a/specification/providerhub/ProviderHub.Management/models.tsp b/specification/providerhub/ProviderHub.Management/models.tsp new file mode 100644 index 000000000000..ee721d8f5929 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/models.tsp @@ -0,0 +1,4766 @@ +import "@typespec/rest"; +import "@typespec/http"; +import "@azure-tools/typespec-azure-core"; +import "@azure-tools/typespec-azure-resource-manager"; + +using TypeSpec.Rest; +using TypeSpec.Http; +using Azure.ResourceManager; +using Azure.ResourceManager.Foundations; + +namespace Microsoft.ProviderHub; + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +union ProvisioningState { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Accepted: "Accepted", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Running: "Running", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Creating: "Creating", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Created: "Created", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Deleting: "Deleting", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Deleted: "Deleted", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Canceled: "Canceled", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Failed: "Failed", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Succeeded: "Succeeded", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + MovingResources: "MovingResources", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + TransientFailure: "TransientFailure", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + RolloutInProgress: "RolloutInProgress", +} + +/** + * The state. + */ +union SubscriptionTransitioningState { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Registered: "Registered", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Unregistered: "Unregistered", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Warned: "Warned", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Suspended: "Suspended", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Deleted: "Deleted", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + WarnedToRegistered: "WarnedToRegistered", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + WarnedToSuspended: "WarnedToSuspended", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + WarnedToDeleted: "WarnedToDeleted", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + WarnedToUnregistered: "WarnedToUnregistered", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + SuspendedToRegistered: "SuspendedToRegistered", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + SuspendedToWarned: "SuspendedToWarned", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + SuspendedToDeleted: "SuspendedToDeleted", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + SuspendedToUnregistered: "SuspendedToUnregistered", +} + +/** + * The action. + */ +union SubscriptionNotificationOperation { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotDefined: "NotDefined", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + DeleteAllResources: "DeleteAllResources", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + SoftDeleteAllResources: "SoftDeleteAllResources", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NoOp: "NoOp", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + BillingCancellation: "BillingCancellation", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + UndoSoftDelete: "UndoSoftDelete", +} + +/** + * The authentication scheme. + */ +union AuthenticationScheme { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + PoP: "PoP", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Bearer: "Bearer", +} + +/** + * The signed request scope. + */ +union SignedRequestScope { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourceUri: "ResourceUri", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Endpoint: "Endpoint", +} + +/** + * The status. + */ +union ServiceStatus { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Active: "Active", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Inactive: "Inactive", +} + +/** + * The provider type. + */ +union ResourceProviderType { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Internal: "Internal", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + External: "External", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Hidden: "Hidden", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + RegistrationFree: "RegistrationFree", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + LegacyRegistrationRequired: "LegacyRegistrationRequired", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + TenantOnly: "TenantOnly", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + AuthorizationFree: "AuthorizationFree", +} + +/** + * The required feature policy. + */ +union FeaturesPolicy { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Any: "Any", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + All: "All", +} + +/** + * The opt in headers. + */ +union OptInHeaderType { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + SignedUserToken: "SignedUserToken", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ClientGroupMembership: "ClientGroupMembership", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + SignedAuxiliaryTokens: "SignedAuxiliaryTokens", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + UnboundedClientGroupMembership: "UnboundedClientGroupMembership", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + PrivateLinkId: "PrivateLinkId", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + PrivateLinkResourceId: "PrivateLinkResourceId", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ManagementGroupAncestorsEncoded: "ManagementGroupAncestorsEncoded", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + PrivateLinkVnetTrafficTag: "PrivateLinkVnetTrafficTag", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourceGroupLocation: "ResourceGroupLocation", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ClientPrincipalNameEncoded: "ClientPrincipalNameEncoded", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + MSIResourceIdEncoded: "MSIResourceIdEncoded", +} + +/** + * The opt out headers. + */ +union OptOutHeaderType { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + SystemDataCreatedByLastModifiedBy: "SystemDataCreatedByLastModifiedBy", +} + +/** + * The readiness. + */ +union Readiness { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ClosingDown: "ClosingDown", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Deprecated: "Deprecated", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + GA: "GA", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + InDevelopment: "InDevelopment", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + InternalOnly: "InternalOnly", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + PrivatePreview: "PrivatePreview", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + PublicPreview: "PublicPreview", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + RemovedFromARM: "RemovedFromARM", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Retired: "Retired", +} + +/** + * Type of server failure response message. + */ +union ServerFailureResponseMessageType { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + OutageReporting: "OutageReporting", +} + +/** + * Expedited rollout intent. + */ +union ExpeditedRolloutIntent { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Hotfix: "Hotfix", +} + +/** + * The effect. + */ +union ResourceProviderCapabilitiesEffect { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Allow: "Allow", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Disallow: "Disallow", +} + +/** + * The cross tenant token validation. + */ +union CrossTenantTokenValidation { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + EnsureSecureValidation: "EnsureSecureValidation", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + PassthroughInsecureToken: "PassthroughInsecureToken", +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +union PreflightOption { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + None: "None", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ContinueDeploymentOnFailure: "ContinueDeploymentOnFailure", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + DefaultValidationOnly: "DefaultValidationOnly", +} + +/** + * The endpoint type. + */ +union EndpointType { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Canary: "Canary", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Production: "Production", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + TestInProduction: "TestInProduction", +} + +/** + * The notification type. + */ +union NotificationType { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Unspecified: "Unspecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + SubscriptionNotification: "SubscriptionNotification", +} + +/** + * Whether notifications should be skipped. + */ +union SkipNotifications { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Unspecified: "Unspecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Enabled: "Enabled", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Disabled: "Disabled", +} + +/** + * The additional options. + */ +union AdditionalOptionsAsyncOperation { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ProtectedAsyncOperationPolling: "ProtectedAsyncOperationPolling", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ProtectedAsyncOperationPollingAuditOnly: "ProtectedAsyncOperationPollingAuditOnly", +} + +/** + * Notification options. + */ +union NotificationOptions { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + None: "None", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + EmitSpendingLimit: "EmitSpendingLimit", +} + +/** + * The endpoint type. + */ +union NotificationEndpointType { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Webhook: "Webhook", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Eventhub: "Eventhub", +} + +/** + * The action verb that will be blocked when the resource group is locked during move. + */ +union BlockActionVerb { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Read: "Read", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Write: "Write", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Action: "Action", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Delete: "Delete", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Unrecognized: "Unrecognized", +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +union ServiceClientOptionsType { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + DisableAutomaticDecompression: "DisableAutomaticDecompression", +} + +/** + * Provider registration kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type. + */ +union ProviderRegistrationKind { + string, + + /** + * Resource Provider with all the resource types 'managed' by the ProviderHub service. + */ + Managed: "Managed", + + /** + * Resource Provider with a mix of 'managed' and 'direct' resource types. + */ + Hybrid: "Hybrid", + + /** + * Resource Provider with all the resource types 'managed' on by itself. + */ + Direct: "Direct", +} + +/** + * The type of identity that created the resource. + */ +union CreatedByType { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + User: "User", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Application: "Application", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ManagedIdentity: "ManagedIdentity", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Key: "Key", +} + +/** + * The routing type. + */ +union RoutingType { + string, + + /** + * The resource routing type is default. + */ + Default: "Default", + + /** + * The resource routing type is proxy only. + */ + ProxyOnly: "ProxyOnly", + + /** + * The resource routing type is host based. + */ + HostBased: "HostBased", + + /** + * The resource routing type is extension. + */ + Extension: "Extension", + + /** + * The resource routing type is tenant. + */ + Tenant: "Tenant", + + /** + * The resource routing type is fanout. + */ + Fanout: "Fanout", + + /** + * The resource routing type is location based. + */ + LocationBased: "LocationBased", + + /** + * The resource routing type is failover. + */ + Failover: "Failover", + + /** + * The resource routing type is cascade extension. + */ + CascadeExtension: "CascadeExtension", + + /** + * The resource routing type is child fanout. + */ + ChildFanout: "ChildFanout", + + /** + * The resource routing type is cascade authorized extension. + */ + CascadeAuthorizedExtension: "CascadeAuthorizedExtension", + + /** + * The resource routing type is bypass endpoint selection optimization. + */ + BypassEndpointSelectionOptimization: "BypassEndpointSelectionOptimization", + + /** + * The resource routing type is location mapping. + */ + LocationMapping: "LocationMapping", + + /** + * The resource routing type is service fanout. + */ + ServiceFanout: "ServiceFanout", +} + +/** + * The additional options. + */ +union AdditionalOptionsResourceTypeRegistration { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ProtectedAsyncOperationPolling: "ProtectedAsyncOperationPolling", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ProtectedAsyncOperationPollingAuditOnly: "ProtectedAsyncOperationPollingAuditOnly", +} + +/** + * The regionality. + */ +union Regionality { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Global: "Global", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Regional: "Regional", +} + +/** + * Resource type endpoint kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type. + */ +union ResourceTypeEndpointKind { + string, + + /** + * Endpoint served by ProviderHub service + */ + Managed: "Managed", + + /** + * Endpoint served by the onboarded Resource Provider Service. + */ + Direct: "Direct", +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +union ExtensionCategory { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourceCreationValidate: "ResourceCreationValidate", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourceCreationBegin: "ResourceCreationBegin", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourceCreationCompleted: "ResourceCreationCompleted", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourceReadValidate: "ResourceReadValidate", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourceReadBegin: "ResourceReadBegin", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourcePatchValidate: "ResourcePatchValidate", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourcePatchCompleted: "ResourcePatchCompleted", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourceDeletionValidate: "ResourceDeletionValidate", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourceDeletionBegin: "ResourceDeletionBegin", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourceDeletionCompleted: "ResourceDeletionCompleted", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourcePostAction: "ResourcePostAction", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + SubscriptionLifecycleNotification: "SubscriptionLifecycleNotification", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourcePatchBegin: "ResourcePatchBegin", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourceMoveBegin: "ResourceMoveBegin", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourceMoveCompleted: "ResourceMoveCompleted", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + BestMatchOperationBegin: "BestMatchOperationBegin", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + SubscriptionLifecycleNotificationDeletion: "SubscriptionLifecycleNotificationDeletion", +} + +/** + * The endpoint type. + */ +union EndpointTypeResourceType { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Canary: "Canary", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Production: "Production", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + TestInProduction: "TestInProduction", +} + +/** + * The data boundary. + */ +union DataBoundary { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotDefined: "NotDefined", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Global: "Global", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + EU: "EU", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + US: "US", +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +union ExtensionOptionType { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + DoNotMergeExistingReadOnlyAndSecretProperties: "DoNotMergeExistingReadOnlyAndSecretProperties", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + IncludeInternalMetadata: "IncludeInternalMetadata", +} + +/** + * The intent. + */ +union Intent { + string, + + /** + * Default value. + */ + NOT_SPECIFIED: "NOT_SPECIFIED", + + /** + * Data is not sensitive and ok to access. + */ + LOW_PRIVILEGE: "LOW_PRIVILEGE", + + /** + * Used for RP's using a custom authorization check outside of ARM. + */ + DEFERRED_ACCESS_CHECK: "DEFERRED_ACCESS_CHECK", + + /** + * RP contract allows certain operations to be unauthorized action. + */ + RP_CONTRACT: "RP_CONTRACT", +} + +/** + * The direction. + */ +union LoggingDirections { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + None: "None", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Request: "Request", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Response: "Response", +} + +/** + * The detail level. + */ +union LoggingDetails { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + None: "None", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Body: "Body", +} + +/** + * The throttling metric type + */ +union ThrottlingMetricType { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NumberOfRequests: "NumberOfRequests", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NumberOfResources: "NumberOfResources", +} + +/** + * The type. + */ +union IdentityManagementTypes { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + SystemAssigned: "SystemAssigned", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + UserAssigned: "UserAssigned", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Actor: "Actor", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + DelegatedResourceIdentity: "DelegatedResourceIdentity", +} + +/** + * The subscription state. + */ +union SubscriptionState { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotDefined: "NotDefined", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Enabled: "Enabled", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Warned: "Warned", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + PastDue: "PastDue", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Disabled: "Disabled", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Deleted: "Deleted", +} + +/** + * The extended location type. + */ +union ExtendedLocationType { + string, + + /** + * The extended location type is not specified. + */ + NotSpecified: "NotSpecified", + + /** + * The extended location type is custom location. + */ + CustomLocation: "CustomLocation", + + /** + * The extended location type is edge zone. + */ + EdgeZone: "EdgeZone", + + /** + * The extended location type is arc zone. + */ + ArcZone: "ArcZone", +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +union ResourceTypeExtendedLocationPolicy { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + All: "All", +} + +/** + * The resource deletion policy. + */ +union ResourceDeletionPolicy { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + CascadeDeleteAll: "CascadeDeleteAll", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + CascadeDeleteProxyOnlyChildren: "CascadeDeleteProxyOnlyChildren", +} + +/** + * The policy. + */ +union Policy { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + SynchronizeBeginExtension: "SynchronizeBeginExtension", +} + +/** + * The category. + */ +union ResourceTypeCategory { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + None: "None", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + FreeForm: "FreeForm", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Internal: "Internal", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + PureProxy: "PureProxy", +} + +/** + * The resource validation. + */ +union ResourceValidation { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ReservedWords: "ReservedWords", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ProfaneWords: "ProfaneWords", +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +union QuotaPolicy { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Default: "Default", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + None: "None", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Restricted: "Restricted", +} + +/** + * The capabilities. + */ +union TemplateDeploymentCapabilities { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Default: "Default", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Preflight: "Preflight", +} + +/** + * The preflight options. + */ +union TemplateDeploymentPreflightOptions { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + None: "None", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ValidationRequests: "ValidationRequests", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + DeploymentRequests: "DeploymentRequests", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + TestOnly: "TestOnly", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + RegisteredOnly: "RegisteredOnly", +} + +/** + * The preflight notifications. + */ +union TemplateDeploymentPreflightNotifications { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + None: "None", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + UnregisteredSubscriptions: "UnregisteredSubscriptions", +} + +/** + * The policy execution type. + */ +union PolicyExecutionType { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ExecutePolicies: "ExecutePolicies", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + BypassPolicies: "BypassPolicies", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ExpectPartialPutRequests: "ExpectPartialPutRequests", +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +union AvailabilityZonePolicy { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + SingleZoned: "SingleZoned", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + MultiZoned: "MultiZoned", +} + +/** + * The linked operation. + */ +union LinkedOperation { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + None: "None", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + CrossResourceGroupResourceMove: "CrossResourceGroupResourceMove", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + CrossSubscriptionResourceMove: "CrossSubscriptionResourceMove", +} + +/** + * The linked action. + */ +union LinkedAction { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Blocked: "Blocked", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Validate: "Validate", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Enabled: "Enabled", +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +union LegacyOperation { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Create: "Create", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Delete: "Delete", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Waiting: "Waiting", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + AzureAsyncOperationWaiting: "AzureAsyncOperationWaiting", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ResourceCacheWaiting: "ResourceCacheWaiting", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Action: "Action", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Read: "Read", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + EvaluateDeploymentOutput: "EvaluateDeploymentOutput", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + DeploymentCleanup: "DeploymentCleanup", +} + +/** + * Capacity policy. + */ +union CapacityPolicy { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Default: "Default", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Restricted: "Restricted", +} + +/** + * Filter option. + */ +union FilterOption { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + EnableSubscriptionFilterOnTenant: "EnableSubscriptionFilterOnTenant", +} + +/** + * Supported operations. + */ +union SupportedOperations { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Get: "Get", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Delete: "Delete", +} + +/** + * Common api versions merge mode. + */ +union CommonApiVersionsMergeMode { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Merge: "Merge", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Overwrite: "Overwrite", +} + +/** + * The frontdoor request mode. + */ +union FrontdoorRequestMode { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + UseManifest: "UseManifest", +} + +/** + * The resource sub type. + */ +union ResourceSubType { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + AsyncOperation: "AsyncOperation", +} + +/** + * Resource type registration kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type. + */ +union ResourceTypeRegistrationKind { + string, + + /** + * Resource type served by the ProviderHub service. + */ + Managed: "Managed", + + /** + * Resource type served by both the ProviderHub & the onboarded Resource Provider Services (i.e. The type has a mix of managed and direct endpoints). + */ + Hybrid: "Hybrid", + + /** + * Resource type served by the onboarded Resource Provider Service. + */ + Direct: "Direct", +} + +/** + * The next traffic region. + */ +union TrafficRegionCategory { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Canary: "Canary", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + LowTraffic: "LowTraffic", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + MediumTraffic: "MediumTraffic", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + HighTraffic: "HighTraffic", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + None: "None", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + RestOfTheWorldGroupOne: "RestOfTheWorldGroupOne", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + RestOfTheWorldGroupTwo: "RestOfTheWorldGroupTwo", +} + +/** + * The subscription reregistration result. + */ +union SubscriptionReregistrationResult { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotApplicable: "NotApplicable", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ConditionalUpdate: "ConditionalUpdate", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ForcedUpdate: "ForcedUpdate", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Failed: "Failed", +} + +/** + * The additional options. + */ +union AdditionalOptions { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ProtectedAsyncOperationPolling: "ProtectedAsyncOperationPolling", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ProtectedAsyncOperationPollingAuditOnly: "ProtectedAsyncOperationPollingAuditOnly", +} + +/** + * The resource deletion policy. + */ +union ManifestResourceDeletionPolicy { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Cascade: "Cascade", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Force: "Force", +} + +/** + * The notification mode. + */ +union NotificationMode { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + EventHub: "EventHub", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + WebHook: "WebHook", +} + +/** + * The message scope. + */ +union MessageScope { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + RegisteredSubscriptions: "RegisteredSubscriptions", +} + +/** + * The scale type. + */ +union SkuScaleType { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + None: "None", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Manual: "Manual", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Automatic: "Automatic", +} + +/** + * The ownership role the application has on the resource types. The service owner role gives the application owner permissions. The limited owner role gives elevated permissions but does not allow all the permissions of a service owner, such as read/write on internal metadata. + */ +union Role { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ServiceOwner: "ServiceOwner", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + LimitedOwner: "LimitedOwner", +} + +/** + * The environment type. + */ +union AvailableCheckInManifestEnvironment { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + NotSpecified: "NotSpecified", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Canary: "Canary", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Prod: "Prod", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + All: "All", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Mooncake: "Mooncake", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Fairfax: "Fairfax", +} + +/** + * The service feature flag. + */ +union ServiceFeatureFlagAction { + string, + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + DoNotCreate: "DoNotCreate", + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + Create: "Create", +} + +/** + * The resource access policy. + */ +#suppress "@azure-tools/typespec-azure-core/no-enum" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +enum ResourceAccessPolicy { + NotSpecified, + AcisReadAllowed, + AcisActionAllowed, +} + +/** + * The marketplace type. + */ +#suppress "@azure-tools/typespec-azure-core/no-enum" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +enum MarketplaceType { + NotSpecified, + AddOn, + Bypass, + Store, +} + +/** + * The origin. + */ +#suppress "@azure-tools/typespec-azure-core/no-enum" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +enum OperationOrigins { + NotSpecified, + User, + System, +} + +/** + * The action type. + */ +#suppress "@azure-tools/typespec-azure-core/no-enum" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +enum OperationActionType { + NotSpecified, + Internal, +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model CustomRolloutProperties { + /** + * The provisioned state of the resource. + */ + @visibility(Lifecycle.Read) + provisioningState?: ProvisioningState; + + /** + * The specification. + */ + specification: CustomRolloutPropertiesSpecification; + + /** + * The status. + */ + status?: CustomRolloutPropertiesStatus; +} + +/** + * The specification. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model CustomRolloutPropertiesSpecification extends CustomRolloutSpecification {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model CustomRolloutSpecification { + /** + * The auto provisioning configuration. + */ + autoProvisionConfig?: CustomRolloutSpecificationAutoProvisionConfig; + + /** + * The canary region configuration. + */ + canary?: CustomRolloutSpecificationCanary; + + /** + * The list of ARM regions scoped for the release. + */ + releaseScopes?: string[]; + + /** + * Whether refreshing subscription registration is enabled or disabled. + */ + refreshSubscriptionRegistration?: boolean; + + /** + * Whether release scope validation should be skipped. + */ + skipReleaseScopeValidation?: boolean; + + /** + * The provider registration. + */ + providerRegistration?: CustomRolloutSpecificationProviderRegistration; + + /** + * The resource type registrations. + */ + resourceTypeRegistrations?: ResourceTypeRegistration[]; +} + +/** + * The auto provisioning configuration. + */ +model CustomRolloutSpecificationAutoProvisionConfig { + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + storage?: boolean; + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + resourceGraph?: boolean; +} + +/** + * The canary region configuration. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model CustomRolloutSpecificationCanary extends TrafficRegions {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model TrafficRegions { + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + regions?: string[]; +} + +/** + * The provider registration. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model CustomRolloutSpecificationProviderRegistration + extends ProviderRegistration {} + +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ProviderRegistrationProperties + extends ResourceProviderManifestProperties { + /** + * The provider hub metadata. + */ + providerHubMetadata?: ProviderRegistrationPropertiesProviderHubMetadata; + + /** + * The provisioning state. + */ + @visibility(Lifecycle.Read) + provisioningState?: ProvisioningState; + + /** + * The subscription lifecycle notification specifications. + */ + subscriptionLifecycleNotificationSpecifications?: SubscriptionLifecycleNotificationSpecificationsProperties; + + /** + * The private resource provider configuration. + */ + privateResourceProviderConfiguration?: ProviderRegistrationPropertiesPrivateResourceProviderConfiguration; + + /** + * The token auth configuration. + */ + tokenAuthConfiguration?: TokenAuthConfiguration; +} + +/** + * The provider hub metadata. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ProviderRegistrationPropertiesProviderHubMetadata + extends ProviderHubMetadata {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ProviderHubMetadata { + /** + * The provider authorizations. + */ + @identifiers(#[]) + providerAuthorizations?: ResourceProviderAuthorization[]; + + /** + * The provider authentication. + */ + providerAuthentication?: ResourceProviderAuthenticationProperties; + + /** + * The third party provider authorization. + */ + thirdPartyProviderAuthorization?: ProviderHubMetadataThirdPartyProviderAuthorization; + + /** + * The direct RP role definition id. + */ + directRpRoleDefinitionId?: string; + + /** + * The regional async operation resource type name. + */ + regionalAsyncOperationResourceTypeName?: string; + + /** + * The global async operation resource type name. + */ + globalAsyncOperationResourceTypeName?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceProviderAuthorization { + /** + * The application id. + */ + applicationId?: string; + + /** + * The role definition id. + */ + roleDefinitionId?: string; + + /** + * The managed by role definition id. + */ + managedByRoleDefinitionId?: string; + + /** + * Managed by authorization. + */ + managedByAuthorization?: ResourceProviderAuthorizationManagedByAuthorization; + + /** + * The allowed third party extensions. + */ + @identifiers(#["name"]) + allowedThirdPartyExtensions?: ThirdPartyExtension[]; + + /** + * The grouping tag. + */ + groupingTag?: string; +} + +/** + * Managed by authorization. + */ +model ResourceProviderAuthorizationManagedByAuthorization { + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + @identifiers(#["applicationId", "roleDefinitionId"]) + additionalAuthorizations?: AdditionalAuthorization[]; + + /** + * The managed by resource role definition ID for the application. + */ + managedByResourceRoleDefinitionId?: string; + + /** + * Indicates whether the managed by resource role definition ID should be inherited. + */ + allowManagedByInheritance?: boolean; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model AdditionalAuthorization { + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + applicationId?: string; + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + roleDefinitionId?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ThirdPartyExtension { + /** + * Name of third party extension. + */ + name?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceProviderAuthentication { + /** + * The allowed audiences. + */ + allowedAudiences: string[]; +} + +/** + * The third party provider authorization. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ProviderHubMetadataThirdPartyProviderAuthorization + extends ThirdPartyProviderAuthorization {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ThirdPartyProviderAuthorization { + /** + * The authorizations. + */ + @identifiers(#[]) + authorizations?: LightHouseAuthorization[]; + + /** + * The managed by tenant id. + */ + managedByTenantId?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model LightHouseAuthorization { + /** + * The principal id. + */ + principalId: string; + + /** + * The role definition id. + */ + roleDefinitionId: string; +} + +/** + * The subscription lifecycle notification specifications. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model SubscriptionLifecycleNotificationSpecificationsProperties + extends SubscriptionLifecycleNotificationSpecifications {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model SubscriptionLifecycleNotificationSpecifications { + /** + * The subscription state override actions. + */ + @identifiers(#[]) + subscriptionStateOverrideActions?: SubscriptionStateOverrideAction[]; + + /** + * The soft delete TTL. + */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + softDeleteTTL?: duration; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model SubscriptionStateOverrideAction { + /** + * The state. + */ + state: SubscriptionTransitioningState; + + /** + * The action. + */ + action: SubscriptionNotificationOperation; +} + +/** + * The private resource provider configuration. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ProviderRegistrationPropertiesPrivateResourceProviderConfiguration + extends PrivateResourceProviderConfiguration {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model PrivateResourceProviderConfiguration { + /** + * The allowed subscriptions. + */ + allowedSubscriptions?: string[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model TokenAuthConfiguration { + /** + * The authentication scheme. + */ + authenticationScheme?: AuthenticationScheme; + + /** + * The signed request scope. + */ + signedRequestScope?: SignedRequestScope; + + /** + * Whether certification authentication fallback is disabled. + */ + disableCertificateAuthenticationFallback?: boolean; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceProviderManifestProperties { + /** + * The provider authentication. + */ + providerAuthentication?: ResourceProviderAuthenticationProperties; + + /** + * The provider authorizations. + */ + @identifiers(#[]) + providerAuthorizations?: ResourceProviderAuthorization[]; + + /** + * The namespace. + */ + `namespace`?: string; + + /** + * The services. + */ + @identifiers(#[]) + services?: ResourceProviderService[]; + + /** + * The service name. + */ + serviceName?: string; + + /** + * The provider version. + */ + providerVersion?: string; + + /** + * The provider type. + */ + providerType?: ResourceProviderType; + + /** + * The required features. + */ + requiredFeatures?: string[]; + + /** + * The features rule. + */ + featuresRule?: FeaturesRuleProperties; + + /** + * The request header options. + */ + requestHeaderOptions?: RequestHeaderOptionsProperties; + + /** + * The resource provider management. + */ + management?: ResourceProviderManagementProperties; + + /** + * The capabilities. + */ + @identifiers(#["quotaId"]) + capabilities?: ResourceProviderCapabilities[]; + + /** + * The cross tenant token validation. + */ + crossTenantTokenValidation?: CrossTenantTokenValidation; + + /** + * The metadata. + */ + #suppress "@azure-tools/typespec-azure-core/no-unknown" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + metadata?: unknown; + + /** + * The template deployment options. + */ + templateDeploymentOptions?: TemplateDeploymentOptionsProperties; + + /** + * The global notification endpoints. + */ + @identifiers(#[]) + globalNotificationEndpoints?: ResourceProviderEndpoint[]; + + /** + * The enable tenant linked notification. + */ + #suppress "@azure-tools/typespec-azure-core/no-nullable" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + enableTenantLinkedNotification?: boolean | null; + + /** + * The notifications. + */ + @identifiers(#["notificationType"]) + notifications?: Notification[]; + + /** + * The linked notification rules. + */ + @identifiers(#[]) + linkedNotificationRules?: FanoutLinkedNotificationRule[]; + + /** + * The resource provider authorization rules. + */ + resourceProviderAuthorizationRules?: ResourceProviderAuthorizationRules; + + /** + * The dsts configuration. + */ + dstsConfiguration?: DstsConfigurationProperties; + + /** + * Notification options. + */ + notificationOptions?: NotificationOptions; + + /** + * resource hydration accounts + */ + @identifiers(#[]) + resourceHydrationAccounts?: ResourceHydrationAccount[]; + + /** + * Notification settings. + */ + notificationSettings?: ResourceProviderManifestPropertiesNotificationSettings; + + /** + * Management groups global notification endpoints. + */ + @identifiers(#[]) + managementGroupGlobalNotificationEndpoints?: ResourceProviderEndpoint[]; + + /** + * Optional features. + */ + optionalFeatures?: string[]; + + /** + * Resource group lock option during move. + */ + resourceGroupLockOptionDuringMove?: ResourceProviderManifestPropertiesResourceGroupLockOptionDuringMove; + + /** + * Response options. + */ + responseOptions?: ResourceProviderManifestPropertiesResponseOptions; + + /** + * Legacy namespace. + */ + legacyNamespace?: string; + + /** + * Legacy registrations. + */ + legacyRegistrations?: string[]; + + /** + * Custom manifest version. + */ + customManifestVersion?: string; +} + +/** + * Resource provider service. + */ +model ResourceProviderService { + /** + * The service name. + */ + serviceName?: string; + + /** + * The status. + */ + status?: ServiceStatus; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model FeaturesRule { + /** + * The required feature policy. + */ + requiredFeaturesPolicy: FeaturesPolicy; +} + +/** + * The request header options. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model RequestHeaderOptionsProperties extends RequestHeaderOptions {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model RequestHeaderOptions { + /** + * The opt in headers. + */ + optInHeaders?: OptInHeaderType; + + /** + * The opt out headers. + */ + optOutHeaders?: OptOutHeaderType; +} + +/** + * The resource provider management. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceProviderManagementProperties extends ResourceProviderManagement {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceProviderManagement { + /** + * The schema owners. + */ + schemaOwners?: string[]; + + /** + * The manifest owners. + */ + manifestOwners?: string[]; + + /** + * The authorization owners. + */ + authorizationOwners?: string[]; + + /** + * The incident routing service. + */ + incidentRoutingService?: string; + + /** + * The incident routing team. + */ + incidentRoutingTeam?: string; + + /** + * The incident contact email. + */ + incidentContactEmail?: string; + + /** + * The service tree infos. + */ + @identifiers(#[]) + serviceTreeInfos?: ServiceTreeInfo[]; + + /** + * The resource access policy. + */ + resourceAccessPolicy?: ResourceAccessPolicy; + + /** + * The resource access roles. + */ + @identifiers(#[]) + resourceAccessRoles?: ResourceAccessRole[]; + + /** + * List of expedited rollout submitters. + */ + expeditedRolloutSubmitters?: string[]; + + /** + * Options for error response messages. + */ + errorResponseMessageOptions?: ResourceProviderManagementErrorResponseMessageOptions; + + /** + * Metadata for expedited rollout. + */ + expeditedRolloutMetadata?: ResourceProviderManagementExpeditedRolloutMetadata; + + /** + * List of manifest owners for canary. + */ + canaryManifestOwners?: string[]; + + /** + * The profit center code for the subscription. + */ + pcCode?: string; + + /** + * The profit center program id for the subscription. + */ + profitCenterProgramId?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ServiceTreeInfo { + /** + * The service id. + */ + serviceId?: string; + + /** + * The component id. + */ + componentId?: string; + + /** + * The readiness. + */ + readiness?: Readiness; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceAccessRole { + /** + * The allowed group claims. + */ + allowedGroupClaims?: string[]; + + /** + * The actions. + */ + actions?: string[]; +} + +/** + * Options for error response messages. + */ +model ResourceProviderManagementErrorResponseMessageOptions { + /** + * Type of server failure response message. + */ + serverFailureResponseMessageType?: ServerFailureResponseMessageType; +} + +/** + * Metadata for expedited rollout. + */ +model ResourceProviderManagementExpeditedRolloutMetadata { + /** + * Expedited rollout enabled? + */ + enabled?: boolean; + + /** + * Expedited rollout intent. + */ + expeditedRolloutIntent?: ExpeditedRolloutIntent; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceProviderCapabilities { + /** + * The quota id. + */ + quotaId: string; + + /** + * The effect. + */ + effect: ResourceProviderCapabilitiesEffect; + + /** + * The required features. + */ + requiredFeatures?: string[]; +} + +/** + * The template deployment options. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model TemplateDeploymentOptionsProperties extends TemplateDeploymentOptions {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model TemplateDeploymentOptions { + /** + * Whether preflight is supported. + */ + preflightSupported?: boolean; + + /** + * The preflight options. + */ + preflightOptions?: PreflightOption[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceProviderEndpoint { + /** + * Whether the endpoint is enabled. + */ + enabled?: boolean; + + /** + * The api versions. + */ + apiVersions?: string[]; + + /** + * The endpoint uri. + */ + endpointUri?: string; + + /** + * The locations. + */ + locations?: string[]; + + /** + * The required features. + */ + requiredFeatures?: string[]; + + /** + * The feature rules. + */ + featuresRule?: FeaturesRuleProperties; + + /** + * The timeout. + */ + timeout?: duration; + + /** + * The endpoint type. + */ + endpointType?: EndpointType; + + /** + * The sku link. + */ + skuLink?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model Notification { + /** + * The notification type. + */ + notificationType?: NotificationType; + + /** + * Whether notifications should be skipped. + */ + skipNotifications?: SkipNotifications; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model FanoutLinkedNotificationRule { + /** + * The token auth configuration. + */ + tokenAuthConfiguration?: TokenAuthConfiguration; + + /** + * The actions. + */ + actions?: string[]; + + /** + * The endpoints. + */ + @identifiers(#[]) + endpoints?: ResourceProviderEndpoint[]; + + /** + * The dsts configuration. + */ + dstsConfiguration?: DstsConfigurationProperties; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model DstsConfiguration { + /** + * The service name. + */ + serviceName: string; + + /** + * This is a URI property. + */ + serviceDnsName?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceProviderAuthorizationRules { + /** + * The async operation polling rules. + */ + asyncOperationPollingRules?: AsyncOperationPollingRules; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model AsyncOperationPollingRules { + /** + * The authorization actions. + */ + authorizationActions?: string[]; + + /** + * The additional options. + */ + additionalOptions?: AdditionalOptionsAsyncOperation; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceHydrationAccount { + /** + * The max child resource consistency job limit. + */ + maxChildResourceConsistencyJobLimit?: int64; + + /** + * The encrypted key. + */ + @secret + encryptedKey?: string; + + /** + * The account name. + */ + accountName?: string; + + /** + * The subscription id. + */ + subscriptionId?: string; +} + +/** + * Notification settings. + */ +model ResourceProviderManifestPropertiesNotificationSettings { + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + @identifiers(#[]) + subscriberSettings?: SubscriberSetting[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model SubscriberSetting { + /** + * The filter rules. + */ + @identifiers(#[]) + filterRules?: FilterRule[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model FilterRule { + /** + * The filter query. + */ + filterQuery?: string; + + /** + * The endpoint information. + */ + @identifiers(#[]) + endpointInformation?: EndpointInformation[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model EndpointInformation { + /** + * The endpoint. + */ + endpoint?: string; + + /** + * The endpoint type. + */ + endpointType?: NotificationEndpointType; + + /** + * The schema version. + */ + schemaVersion?: string; +} + +/** + * Resource group lock option during move. + */ +model ResourceProviderManifestPropertiesResourceGroupLockOptionDuringMove { + /** + * The action verb that will be blocked when the resource group is locked during move. + */ + blockActionVerb?: BlockActionVerb; +} + +/** + * Response options. + */ +model ResourceProviderManifestPropertiesResponseOptions { + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + serviceClientOptionsType?: ServiceClientOptionsType; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceTypeRegistrationProperties { + /** + * The resource routing type. + */ + routingType?: RoutingType; + + /** + * The additional options. + */ + additionalOptions?: AdditionalOptionsResourceTypeRegistration; + + /** + * The cross tenant token validation. + */ + crossTenantTokenValidation?: CrossTenantTokenValidation; + + /** + * The regionality. + */ + regionality?: Regionality; + + /** + * The extensions. + */ + @identifiers(#[]) + endpoints?: ResourceTypeEndpoint[]; + + /** + * The extension options. + */ + extensionOptions?: ResourceTypeRegistrationPropertiesExtensionOptions; + + /** + * The marketplace type. + */ + marketplaceType?: MarketplaceType; + + /** + * The swagger specifications. + */ + @identifiers(#["swaggerSpecFolderUri"]) + swaggerSpecifications?: SwaggerSpecification[]; + + /** + * The allowed unauthorized actions. + */ + allowedUnauthorizedActions?: string[]; + + /** + * The allowed unauthorized actions extensions. + */ + #suppress "@azure-tools/typespec-azure-resource-manager/missing-x-ms-identifiers" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + allowedUnauthorizedActionsExtensions?: AllowedUnauthorizedActionsExtension[]; + + /** + * The authorization action mappings + */ + @identifiers(#["original"]) + authorizationActionMappings?: AuthorizationActionMapping[]; + + /** + * The linked access checks. + */ + @identifiers(#[]) + linkedAccessChecks?: LinkedAccessCheck[]; + + /** + * The default api version. + */ + defaultApiVersion?: string; + + /** + * The logging rules. + */ + @identifiers(#[]) + loggingRules?: LoggingRule[]; + + /** + * The throttling rules. + */ + @identifiers(#[]) + throttlingRules?: ThrottlingRule[]; + + /** + * The required features. + */ + requiredFeatures?: string[]; + + /** + * The features rule. + */ + featuresRule?: FeaturesRuleProperties; + + /** + * Whether async operation is enabled. + */ + enableAsyncOperation?: boolean; + + /** + * The provisioning state. + */ + @visibility(Lifecycle.Read) + provisioningState?: ProvisioningState; + + /** + * Whether third party S2S is enabled. + */ + enableThirdPartyS2S?: boolean; + + /** + * The subscription lifecycle notification specifications. + */ + subscriptionLifecycleNotificationSpecifications?: SubscriptionLifecycleNotificationSpecificationsProperties; + + /** + * Whether it is pure proxy. + */ + isPureProxy?: boolean; + + /** + * The identity management. + */ + identityManagement?: ResourceTypeRegistrationPropertiesIdentityManagement; + + /** + * The check name availability specifications. + */ + checkNameAvailabilitySpecifications?: ResourceTypeRegistrationPropertiesCheckNameAvailabilitySpecifications; + + /** + * The disallowed action verbs. + */ + disallowedActionVerbs?: string[]; + + /** + * The service tree infos. + */ + @identifiers(#[]) + serviceTreeInfos?: ServiceTreeInfo[]; + + /** + * The request header options. + */ + requestHeaderOptions?: RequestHeaderOptionsProperties; + + /** + * The subscription state rules. + */ + @identifiers(#[]) + subscriptionStateRules?: SubscriptionStateRule[]; + + /** + * The template deployment options. + */ + templateDeploymentOptions?: TemplateDeploymentOptionsProperties; + + /** + * The extended locations. + */ + @identifiers(#[]) + extendedLocations?: ExtendedLocationOptions[]; + + /** + * The resource move policy. + */ + resourceMovePolicy?: ResourceTypeRegistrationPropertiesResourceMovePolicy; + + /** + * The resource deletion policy. + */ + resourceDeletionPolicy?: ResourceDeletionPolicy; + + /** + * The resource concurrency control options. + */ + #suppress "@azure-tools/typespec-azure-resource-manager/arm-no-record" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + resourceConcurrencyControlOptions?: Record; + + /** + * The resource graph configuration. + */ + resourceGraphConfiguration?: ResourceTypeRegistrationPropertiesResourceGraphConfiguration; + + /** + * The resource provider management. + */ + management?: ResourceProviderManagementProperties; + + /** + * The open api configuration. + */ + openApiConfiguration?: OpenApiConfiguration; + + /** + * The on behalf of tokens. + */ + onBehalfOfTokens?: ResourceTypeOnBehalfOfToken; + + /** + * The category. + */ + category?: ResourceTypeCategory; + + /** + * The resource validation. + */ + resourceValidation?: ResourceValidation; + + /** + * The disallowed end user operations. + */ + disallowedEndUserOperations?: string[]; + + /** + * The metadata. + */ + #suppress "@azure-tools/typespec-azure-resource-manager/arm-no-record" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + metadata?: Record; + + /** + * The sku link. + */ + skuLink?: string; + + /** + * The quota rule. + */ + quotaRule?: QuotaRule; + + /** + * The notifications. + */ + @identifiers(#["notificationType"]) + notifications?: Notification[]; + + /** + * The linked notification rules. + */ + @identifiers(#[]) + linkedNotificationRules?: LinkedNotificationRule[]; + + /** + * The resource provider authorization rules. + */ + resourceProviderAuthorizationRules?: ResourceProviderAuthorizationRules; + + /** + * The token auth configuration. + */ + tokenAuthConfiguration?: TokenAuthConfiguration; + + /** + * The template deployment policy. + */ + templateDeploymentPolicy?: TemplateDeploymentPolicyProperties; + + /** + * The allow empty role assignments. + */ + allowEmptyRoleAssignments?: boolean; + + /** + * The policy execution type. + */ + policyExecutionType?: PolicyExecutionType; + + /** + * The availability zone rule. + */ + availabilityZoneRule?: ResourceTypeRegistrationPropertiesAvailabilityZoneRule; + + /** + * The dsts configuration. + */ + dstsConfiguration?: DstsConfigurationProperties; + + /** + * Async timeout rules + */ + @identifiers(#[]) + asyncTimeoutRules?: AsyncTimeoutRule[]; + + /** + * Common API versions for the resource type. + */ + commonApiVersions?: string[]; + + /** + * The api profiles. + */ + @identifiers(#["profileVersion", "apiVersion"]) + apiProfiles?: ApiProfile[]; + + /** + * The linked operation rules. + */ + @identifiers(#["linkedOperation", "linkedAction"]) + linkedOperationRules?: LinkedOperationRule[]; + + /** + * The legacy name. + */ + legacyName?: string; + + /** + * The legacy names. + */ + legacyNames?: string[]; + + /** + * Allowed template deployment reference actions. + */ + allowedTemplateDeploymentReferenceActions?: string[]; + + /** + * The legacy policy. + */ + legacyPolicy?: ResourceTypeRegistrationPropertiesLegacyPolicy; + + /** + * Manifest link. + */ + manifestLink?: string; + + /** + * Capacity rule. + */ + capacityRule?: ResourceTypeRegistrationPropertiesCapacityRule; + + /** + * Marketplace options. + */ + marketplaceOptions?: ResourceTypeRegistrationPropertiesMarketplaceOptions; + + /** + * The allowed resource names. + */ + @identifiers(#["name", "getActionVerb"]) + allowedResourceNames?: AllowedResourceName[]; + + /** + * Resource cache options. + */ + resourceCache?: ResourceTypeRegistrationPropertiesResourceCache; + + /** + * Resource query management options. + */ + resourceQueryManagement?: ResourceTypeRegistrationPropertiesResourceQueryManagement; + + /** + * Whether tags are supported. + */ + supportsTags?: boolean; + + /** + * Resource management options. + */ + resourceManagementOptions?: ResourceTypeRegistrationPropertiesResourceManagementOptions; + + /** + * Grouping tag. + */ + groupingTag?: string; + + /** + * Add resource list target locations? + */ + addResourceListTargetLocations?: boolean; + + /** + * Resource type common attribute management. + */ + resourceTypeCommonAttributeManagement?: ResourceTypeRegistrationPropertiesResourceTypeCommonAttributeManagement; + + /** + * Routing rule. + */ + routingRule?: ResourceTypeRegistrationPropertiesRoutingRule; + + /** + * The frontdoor request mode. + */ + frontdoorRequestMode?: FrontdoorRequestMode; + + /** + * The resource sub type. + */ + resourceSubType?: ResourceSubType; + + /** + * The async operation resource type name. + */ + asyncOperationResourceTypeName?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceTypeEndpoint { + /** + * Resource type endpoint kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type. + */ + kind?: ResourceTypeEndpointKind = ResourceTypeEndpointKind.Managed; + + /** + * Whether the endpoint is enabled. + */ + enabled?: boolean; + + /** + * The api versions. + */ + apiVersions?: string[]; + + /** + * The locations. + */ + locations?: string[]; + + /** + * The required features. + */ + requiredFeatures?: string[]; + + /** + * The features rule. + */ + featuresRule?: FeaturesRuleProperties; + + /** + * The extensions. + */ + @identifiers(#["endpointUri"]) + extensions?: ResourceTypeExtension[]; + + /** + * The timeout. + */ + timeout?: duration; + + /** + * The endpoint type. + */ + endpointType?: EndpointTypeResourceType; + + /** + * The token auth configuration. + */ + tokenAuthConfiguration?: TokenAuthConfiguration; + + /** + * The sku link. + */ + skuLink?: string; + + /** + * The endpoint uri. + */ + endpointUri?: string; + + /** + * Api version. + */ + apiVersion?: string; + + /** + * List of zones. + */ + zones?: string[]; + + /** + * The dsts configuration. + */ + dstsConfiguration?: DstsConfigurationProperties; + + /** + * The data boundary. + */ + dataBoundary?: DataBoundary; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceTypeExtension { + /** + * The endpoint uri. + */ + endpointUri?: string; + + /** + * The extension categories. + */ + extensionCategories?: ExtensionCategory[]; + + /** + * The timeout. + */ + timeout?: duration; +} + +/** + * The extension options. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceTypeRegistrationPropertiesExtensionOptions + extends ResourceTypeExtensionOptions {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceTypeExtensionOptions { + /** + * Resource creation begin. + */ + resourceCreationBegin?: ResourceTypeExtensionOptionsResourceCreationBegin; +} + +/** + * Resource creation begin. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceTypeExtensionOptionsResourceCreationBegin + extends ExtensionOptions {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ExtensionOptions { + /** + * The request. + */ + request?: ExtensionOptionType[]; + + /** + * The response. + */ + response?: ExtensionOptionType[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model SwaggerSpecification { + /** + * The api versions. + */ + apiVersions?: string[]; + + /** + * The swagger spec folder uri. + */ + swaggerSpecFolderUri?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model AllowedUnauthorizedActionsExtension { + /** + * The action. + */ + action?: string; + + /** + * The intent. + */ + intent?: Intent; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model AuthorizationActionMapping { + /** + * The original action name. + */ + original?: string; + + /** + * The desired action name. + */ + desired?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model LinkedAccessCheck { + /** + * The action name. + */ + actionName?: string; + + /** + * The linked property. + */ + linkedProperty?: string; + + /** + * The linked action. + */ + linkedAction?: string; + + /** + * The linked action verb. + */ + linkedActionVerb?: string; + + /** + * The linked type. + */ + linkedType?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model LoggingRule { + /** + * The action. + */ + action: string; + + /** + * The direction. + */ + direction: LoggingDirections; + + /** + * The detail level. + */ + detailLevel: LoggingDetails; + + /** + * The hidden property paths. + */ + hiddenPropertyPaths?: LoggingRuleHiddenPropertyPaths; +} + +/** + * The hidden property paths. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model LoggingRuleHiddenPropertyPaths extends LoggingHiddenPropertyPath {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model LoggingHiddenPropertyPath { + /** + * The hidden paths on request. + */ + hiddenPathsOnRequest?: string[]; + + /** + * The hidden paths on response. + */ + hiddenPathsOnResponse?: string[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ThrottlingRule { + /** + * The action. + */ + action: string; + + /** + * The metrics. + */ + @identifiers(#[]) + metrics: ThrottlingMetric[]; + + /** + * The required features. + */ + requiredFeatures?: string[]; + + /** + * The application id. + */ + applicationId?: string[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ThrottlingMetric { + /** + * The throttling metric type + */ + type: ThrottlingMetricType; + + /** + * The limit. + */ + limit: int64; + + /** + * The interval. + */ + interval?: duration; +} + +/** + * The identity management. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceTypeRegistrationPropertiesIdentityManagement + extends IdentityManagementProperties {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model IdentityManagementProperties { + /** + * The type. + */ + type?: IdentityManagementTypes; + + /** + * The application id. + */ + applicationId?: string; + + /** + * The application ids. + */ + applicationIds?: string[]; + + /** + * The delegation app ids. + */ + delegationAppIds?: string[]; +} + +/** + * The check name availability specifications. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceTypeRegistrationPropertiesCheckNameAvailabilitySpecifications + extends CheckNameAvailabilitySpecifications {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model CheckNameAvailabilitySpecifications { + /** + * Whether default validation is enabled. + */ + enableDefaultValidation?: boolean; + + /** + * The resource types with custom validation. + */ + resourceTypesWithCustomValidation?: string[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model SubscriptionStateRule { + /** + * The subscription state. + */ + state?: SubscriptionState; + + /** + * The allowed actions. + */ + allowedActions?: string[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ExtendedLocationOptions { + /** + * The type. + */ + type?: ExtendedLocationType; + + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + supportedPolicy?: ResourceTypeExtendedLocationPolicy; +} + +/** + * The resource move policy. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceTypeRegistrationPropertiesResourceMovePolicy + extends ResourceMovePolicy {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceMovePolicy { + /** + * Whether validation is required. + */ + validationRequired?: boolean; + + /** + * Whether cross resource group move is enabled. + */ + crossResourceGroupMoveEnabled?: boolean; + + /** + * Whether cross subscription move is enabled. + */ + crossSubscriptionMoveEnabled?: boolean; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceConcurrencyControlOption { + /** + * The policy. + */ + policy?: Policy; +} + +/** + * The resource graph configuration. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceTypeRegistrationPropertiesResourceGraphConfiguration + extends ResourceGraphConfiguration {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceGraphConfiguration { + /** + * Whether it's enabled. + */ + enabled?: boolean; + + /** + * The api version. + */ + apiVersion?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model OpenApiConfiguration { + /** + * The open api validation. + */ + validation?: OpenApiValidation; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model OpenApiValidation { + /** + * Indicates whether a non compliance response is allowed for a LIST call + */ + allowNoncompliantCollectionResponse?: boolean; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceTypeOnBehalfOfToken { + /** + * The action name. + */ + actionName?: string; + + /** + * This is a TimeSpan property. + */ + lifeTime?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model QuotaRule { + /** + * The quota policy. + */ + quotaPolicy?: QuotaPolicy; + + /** + * The location rules. + */ + @identifiers(#[]) + locationRules?: LocationQuotaRule[]; + + /** + * The required features. + */ + requiredFeatures?: string[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model LocationQuotaRule { + /** + * The policy. + */ + policy?: QuotaPolicy; + + /** + * The quota id. + */ + quotaId?: string; + + /** + * The location. + */ + location?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model LinkedNotificationRule { + /** + * The actions. + */ + actions?: string[]; + + /** + * The actions on failed operation. + */ + actionsOnFailedOperation?: string[]; + + /** + * The fast path actions. + */ + fastPathActions?: string[]; + + /** + * The fast path action on failed operation. + */ + fastPathActionsOnFailedOperation?: string[]; + + /** + * This is a TimeSpan property. + */ + linkedNotificationTimeout?: duration; +} + +/** + * The template deployment policy. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model TemplateDeploymentPolicyProperties extends TemplateDeploymentPolicy {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model TemplateDeploymentPolicy { + /** + * The capabilities. + */ + capabilities: TemplateDeploymentCapabilities; + + /** + * The preflight options. + */ + preflightOptions: TemplateDeploymentPreflightOptions; + + /** + * The preflight notifications. + */ + preflightNotifications?: TemplateDeploymentPreflightNotifications; +} + +/** + * The availability zone rule. + */ +model ResourceTypeRegistrationPropertiesAvailabilityZoneRule { + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + availabilityZonePolicy?: AvailabilityZonePolicy; +} + +/** + * The dsts configuration. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model DstsConfigurationProperties extends DstsConfiguration {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model AsyncTimeoutRule { + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + actionName?: string; + + /** + * This is a TimeSpan property + */ + timeout?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ApiProfile { + /** + * Profile version. + */ + profileVersion?: string; + + /** + * Api version. + */ + apiVersion?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model LinkedOperationRule { + /** + * The linked operation. + */ + linkedOperation: LinkedOperation; + + /** + * The linked action. + */ + linkedAction: LinkedAction; + + /** + * Depends on types. + */ + dependsOnTypes?: string[]; +} + +/** + * The legacy policy. + */ +model ResourceTypeRegistrationPropertiesLegacyPolicy { + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + disallowedLegacyOperations?: LegacyOperation[]; + + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + @identifiers(#[]) + disallowedConditions?: LegacyDisallowedCondition[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model LegacyDisallowedCondition { + /** + * The disallowed legacy operations. + */ + disallowedLegacyOperations?: LegacyOperation[]; + + /** + * Feature string. + */ + feature?: string; +} + +/** + * Capacity rule. + */ +model ResourceTypeRegistrationPropertiesCapacityRule { + /** + * Capacity policy. + */ + capacityPolicy?: CapacityPolicy; + + /** + * Sku alias + */ + skuAlias?: string; +} + +/** + * Marketplace options. + */ +model ResourceTypeRegistrationPropertiesMarketplaceOptions { + /** + * Add-on plan conversion allowed. + */ + addOnPlanConversionAllowed?: boolean; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model AllowedResourceName { + /** + * Resource name. + */ + name?: string; + + /** + * Get action verb. + */ + getActionVerb?: string; +} + +/** + * Resource cache options. + */ +model ResourceTypeRegistrationPropertiesResourceCache { + /** + * Enable resource cache. + */ + enableResourceCache?: boolean; + + /** + * Resource cache expiration timespan. This is a TimeSpan property. + */ + resourceCacheExpirationTimespan?: string; +} + +/** + * Resource query management options. + */ +model ResourceTypeRegistrationPropertiesResourceQueryManagement { + /** + * Filter option. + */ + filterOption?: FilterOption; +} + +/** + * Resource management options. + */ +model ResourceTypeRegistrationPropertiesResourceManagementOptions { + /** + * Batch provisioning support. + */ + batchProvisioningSupport?: ResourceTypeRegistrationPropertiesResourceManagementOptionsBatchProvisioningSupport; + + /** + * Delete dependencies. + */ + @identifiers(#["linkedType", "linkedProperty", "requiredFeatures"]) + deleteDependencies?: DeleteDependency[]; + + /** + * Nested provisioning support. + */ + nestedProvisioningSupport?: ResourceTypeRegistrationPropertiesResourceManagementOptionsNestedProvisioningSupport; +} + +/** + * Batch provisioning support. + */ +model ResourceTypeRegistrationPropertiesResourceManagementOptionsBatchProvisioningSupport { + /** + * Supported operations. + */ + supportedOperations?: SupportedOperations; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model DeleteDependency { + /** + * Required features. + */ + requiredFeatures?: string[]; + + /** + * Linked property. + */ + linkedProperty?: string; + + /** + * Linked type. + */ + linkedType?: string; +} + +/** + * Nested provisioning support. + */ +model ResourceTypeRegistrationPropertiesResourceManagementOptionsNestedProvisioningSupport { + /** + * Minimum API version. + */ + minimumApiVersion?: string; +} + +/** + * Resource type common attribute management. + */ +model ResourceTypeRegistrationPropertiesResourceTypeCommonAttributeManagement { + /** + * Common api versions merge mode. + */ + commonApiVersionsMergeMode?: CommonApiVersionsMergeMode; +} + +/** + * Routing rule. + */ +model ResourceTypeRegistrationPropertiesRoutingRule { + /** + * Hosted resource type. + */ + hostResourceType?: string; +} + +/** + * The status. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model CustomRolloutPropertiesStatus extends CustomRolloutStatus {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model CustomRolloutStatus { + /** + * The completed regions. + */ + completedRegions?: string[]; + + /** + * The failed or skipped regions. + */ + #suppress "@azure-tools/typespec-azure-resource-manager/arm-no-record" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + failedOrSkippedRegions?: Record; + + /** + * The manifest checkin status. + */ + manifestCheckinStatus?: CustomRolloutStatusManifestCheckinStatus; +} + +/** + * Error information. + */ +model ExtendedErrorInfo { + /** + * The error code. + */ + code?: string; + + /** + * The target of the error. + */ + target?: string; + + /** + * The error message. + */ + message?: string; + + /** + * The error details. + */ + @identifiers(#["code"]) + details?: ExtendedErrorInfo[]; + + /** + * The additional error information. + */ + @identifiers(#["type"]) + additionalInfo?: TypedErrorInfo[]; +} + +/** + * Error information. + */ +model TypedErrorInfo { + /** + * The type of the error. + */ + type: string; + + /** + * The error information. + */ + #suppress "@azure-tools/typespec-azure-core/no-unknown" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + @visibility(Lifecycle.Read) + info?: unknown; +} + +/** + * The manifest checkin status. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model CustomRolloutStatusManifestCheckinStatus extends CheckinManifestInfo {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model CheckinManifestInfo { + /** + * Whether the manifest is checked in. + */ + isCheckedIn: boolean; + + /** + * The status message. + */ + statusMessage: string; + + /** + * The pull request. + */ + pullRequest?: string; + + /** + * The commit id. + */ + commitId?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model CustomRolloutArrayResponseWithContinuation + is Azure.Core.Page; + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model DefaultRolloutProperties { + /** + * The provisioned state of the resource. + */ + @visibility(Lifecycle.Read) + provisioningState?: ProvisioningState; + + /** + * The default rollout specification. + */ + specification?: DefaultRolloutPropertiesSpecification; + + /** + * The default rollout status. + */ + status?: DefaultRolloutPropertiesStatus; +} + +/** + * The default rollout specification. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model DefaultRolloutPropertiesSpecification + extends DefaultRolloutSpecification {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model DefaultRolloutSpecification { + /** + * The expedited rollout definition. + */ + expeditedRollout?: DefaultRolloutSpecificationExpeditedRollout; + + /** + * The canary traffic region configuration. + */ + canary?: DefaultRolloutSpecificationCanary; + + /** + * The low traffic region configuration. + */ + lowTraffic?: TrafficRegionRolloutConfigurationProperties; + + /** + * The medium traffic region configuration. + */ + mediumTraffic?: TrafficRegionRolloutConfigurationProperties; + + /** + * The high traffic region configuration. + */ + highTraffic?: TrafficRegionRolloutConfigurationProperties; + + /** + * The rest of the world group one region configuration. + */ + restOfTheWorldGroupOne?: TrafficRegionRolloutConfigurationProperties; + + /** + * The rest of the world group two region configuration. + */ + restOfTheWorldGroupTwo?: TrafficRegionRolloutConfigurationProperties; + + /** + * The provider registration. + */ + providerRegistration?: DefaultRolloutSpecificationProviderRegistration; + + /** + * The resource type registrations. + */ + resourceTypeRegistrations?: ResourceTypeRegistration[]; + + /** + * The auto provisioning config. + */ + autoProvisionConfig?: DefaultRolloutSpecificationAutoProvisionConfig; +} + +/** + * The expedited rollout definition. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model DefaultRolloutSpecificationExpeditedRollout + extends ExpeditedRolloutDefinition {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ExpeditedRolloutDefinition { + /** + * Indicates whether expedited rollout is enabled/disabled + */ + enabled?: boolean; +} + +/** + * The canary traffic region configuration. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model DefaultRolloutSpecificationCanary + extends CanaryTrafficRegionRolloutConfiguration {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model CanaryTrafficRegionRolloutConfiguration { + /** + * The skip regions. + */ + skipRegions?: string[]; + + /** + * The regions. + */ + regions?: string[]; +} + +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model TrafficRegionRolloutConfiguration extends TrafficRegions { + /** + * The wait duration. + */ + waitDuration?: duration; +} + +/** + * The medium traffic region configuration. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model TrafficRegionRolloutConfigurationProperties + extends TrafficRegionRolloutConfiguration {} + +/** + * The provider registration. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model DefaultRolloutSpecificationProviderRegistration + extends ProviderRegistration {} + +/** + * The auto provisioning config. + */ +model DefaultRolloutSpecificationAutoProvisionConfig { + /** + * Whether auto provisioning for storage is enabled. + */ + storage?: boolean; + + /** + * Whether auto provisioning for resource graph is enabled. + */ + resourceGraph?: boolean; +} + +/** + * The default rollout status. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model DefaultRolloutPropertiesStatus extends DefaultRolloutStatus {} + +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model DefaultRolloutStatus extends RolloutStatusBase { + /** + * The next traffic region. + */ + nextTrafficRegion?: TrafficRegionCategory; + + /** + * The next traffic region scheduled time. + */ + // FIXME: (utcDateTime) Please double check that this is the correct type for your scenario. + nextTrafficRegionScheduledTime?: utcDateTime; + + /** + * The subscription reregistration result. + */ + subscriptionReregistrationResult?: SubscriptionReregistrationResult; + + /** + * The manifest checkin status. + */ + manifestCheckinStatus?: DefaultRolloutStatusManifestCheckinStatus; +} + +/** + * The manifest checkin status. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model DefaultRolloutStatusManifestCheckinStatus extends CheckinManifestInfo {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model RolloutStatusBase { + /** + * The completed regions. + */ + completedRegions?: string[]; + + /** + * The failed or skipped regions. + */ + #suppress "@azure-tools/typespec-azure-resource-manager/arm-no-record" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + failedOrSkippedRegions?: Record; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model DefaultRolloutArrayResponseWithContinuation + is Azure.Core.Page; + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceProviderManifest { + /** + * The provider authentication. + */ + providerAuthentication?: ResourceProviderAuthenticationProperties; + + /** + * The provider authorizations. + */ + @identifiers(#[]) + providerAuthorizations?: ResourceProviderAuthorization[]; + + /** + * The namespace. + */ + `namespace`?: string; + + /** + * The services. + */ + @identifiers(#[]) + services?: ResourceProviderService[]; + + /** + * The service name. + */ + serviceName?: string; + + /** + * The provider version. + */ + providerVersion?: string; + + /** + * The provider type. + */ + providerType?: ResourceProviderType; + + /** + * The required features. + */ + requiredFeatures?: string[]; + + /** + * The features rule. + */ + featuresRule?: FeaturesRuleProperties; + + /** + * The request header options. + */ + requestHeaderOptions?: RequestHeaderOptionsProperties; + + /** + * The resource types. + */ + @identifiers(#["name"]) + resourceTypes?: ResourceType[]; + + /** + * The resource provider management. + */ + management?: ResourceProviderManagementProperties; + + /** + * The capabilities. + */ + @identifiers(#["quotaId"]) + capabilities?: ResourceProviderCapabilities[]; + + /** + * The cross tenant token validation. + */ + crossTenantTokenValidation?: CrossTenantTokenValidation; + + /** + * The metadata. + */ + #suppress "@azure-tools/typespec-azure-core/no-unknown" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + metadata?: unknown; + + /** + * The global notification endpoints. + */ + @identifiers(#[]) + globalNotificationEndpoints?: ResourceProviderEndpoint[]; + + /** + * The re-register subscription metadata. + */ + reRegisterSubscriptionMetadata?: ResourceProviderManifestReRegisterSubscriptionMetadata; + + /** + * Whether tenant linked notification is enabled. + */ + #suppress "@azure-tools/typespec-azure-core/no-nullable" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + enableTenantLinkedNotification?: boolean | null; + + /** + * The notifications. + */ + @identifiers(#["notificationType"]) + notifications?: Notification[]; + + /** + * The linked notification rules. + */ + @identifiers(#[]) + linkedNotificationRules?: FanoutLinkedNotificationRule[]; + + /** + * The resource provider authorization rules. + */ + resourceProviderAuthorizationRules?: ResourceProviderAuthorizationRules; +} + +/** + * The provider authentication. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceProviderAuthenticationProperties + extends ResourceProviderAuthentication {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceType { + /** + * The resource type name. + */ + name?: string; + + /** + * The resource routing type. + */ + routingType?: RoutingType; + + /** + * The additional options. + */ + additionalOptions?: AdditionalOptions; + + /** + * The cross tenant token validation. + */ + crossTenantTokenValidation?: CrossTenantTokenValidation; + + /** + * The resource validation. + */ + resourceValidation?: ResourceValidation; + + /** + * The allowed unauthorized actions. + */ + allowedUnauthorizedActions?: string[]; + + /** + * The allowed unauthorized actions extensions. + */ + #suppress "@azure-tools/typespec-azure-resource-manager/missing-x-ms-identifiers" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + allowedUnauthorizedActionsExtensions?: AllowedUnauthorizedActionsExtension[]; + + /** + * The authorization action mappings. + */ + @identifiers(#["original"]) + authorizationActionMappings?: AuthorizationActionMapping[]; + + /** + * The linked access checks. + */ + @identifiers(#[]) + linkedAccessChecks?: LinkedAccessCheck[]; + + /** + * The default api version. + */ + defaultApiVersion?: string; + + /** + * The logging rules. + */ + @identifiers(#[]) + loggingRules?: LoggingRule[]; + + /** + * The throttling rules. + */ + @identifiers(#[]) + throttlingRules?: ThrottlingRule[]; + + /** + * The endpoints. + */ + @identifiers(#[]) + endpoints?: ResourceProviderEndpoint[]; + + /** + * The marketplace type. + */ + marketplaceType?: MarketplaceType; + + /** + * The identity management. + */ + identityManagement?: ResourceTypeIdentityManagement; + + /** + * The metadata. + */ + #suppress "@azure-tools/typespec-azure-core/no-unknown" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + metadata?: unknown; + + /** + * The required features. + */ + requiredFeatures?: string[]; + + /** + * The features rule. + */ + featuresRule?: FeaturesRuleProperties; + + /** + * The subscription state rules. + */ + @identifiers(#[]) + subscriptionStateRules?: SubscriptionStateRule[]; + + /** + * The service tree infos. + */ + @identifiers(#[]) + serviceTreeInfos?: ServiceTreeInfo[]; + + /** + * The request header options. + */ + requestHeaderOptions?: RequestHeaderOptionsProperties; + + /** + * The sku link. + */ + skuLink?: string; + + /** + * The disallowed action verbs. + */ + disallowedActionVerbs?: string[]; + + /** + * The template deployment policy. + */ + templateDeploymentPolicy?: TemplateDeploymentPolicyProperties; + + /** + * The extended locations. + */ + @identifiers(#[]) + extendedLocations?: ExtendedLocationOptions[]; + + /** + * The linked operation rules. + */ + @identifiers(#[]) + linkedOperationRules?: LinkedOperationRule[]; + + /** + * The resource deletion policy. + */ + resourceDeletionPolicy?: ManifestResourceDeletionPolicy; + + /** + * The quota rule. + */ + quotaRule?: QuotaRule; + + /** + * The notifications. + */ + @identifiers(#["notificationType"]) + notifications?: Notification[]; + + /** + * The linked notification rules. + */ + @identifiers(#[]) + linkedNotificationRules?: LinkedNotificationRule[]; + + /** + * The resource provider authorization rules. + */ + resourceProviderAuthorizationRules?: ResourceProviderAuthorizationRules; +} + +/** + * The identity management. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceTypeIdentityManagement extends IdentityManagement {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model IdentityManagement { + /** + * The type. + */ + type?: IdentityManagementTypes; +} + +/** + * The features rule. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model FeaturesRuleProperties extends FeaturesRule {} + +/** + * The re-register subscription metadata. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceProviderManifestReRegisterSubscriptionMetadata + extends ReRegisterSubscriptionMetadata {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ReRegisterSubscriptionMetadata { + /** + * Whether it's enabled or not. + */ + enabled: boolean; + + /** + * The concurrency limit. + */ + concurrencyLimit?: int32; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model CheckinManifestParams { + /** + * The environment supplied to the checkin manifest operation. + */ + environment: string; + + /** + * The baseline ARM manifest location supplied to the checkin manifest operation. + */ + baselineArmManifestLocation: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model NotificationRegistrationProperties { + /** + * The notification mode. + */ + notificationMode?: NotificationMode; + + /** + * The message scope. + */ + messageScope?: MessageScope; + + /** + * The included events. + */ + includedEvents?: string[]; + + /** + * The notification endpoints. + */ + @identifiers(#["notificationDestination"]) + notificationEndpoints?: NotificationEndpoint[]; + + /** + * The provisioned state of the resource. + */ + @visibility(Lifecycle.Read) + provisioningState?: ProvisioningState; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model NotificationEndpoint { + /** + * The notification destination. + */ + notificationDestination?: string; + + /** + * The locations. + */ + locations?: string[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model NotificationRegistrationArrayResponseWithContinuation + is Azure.Core.Page; + +/** + * Properties of an Operation. + */ +model OperationsDefinition { + /** + * Name of the operation. + */ + name: string; + + /** + * Indicates whether the operation applies to data-plane. + */ + isDataAction?: boolean; + + /** + * The origin. + */ + origin?: OperationOrigins; + + /** + * Display information of the operation. + */ + display: OperationsDefinitionDisplay; + + /** + * The action type. + */ + actionType?: OperationActionType; + + /** + * Anything + */ + #suppress "@azure-tools/typespec-azure-core/no-unknown" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + properties?: unknown; +} + +/** + * Display information of the operation. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model OperationsDefinitionDisplay extends OperationsDisplayDefinition {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model OperationsDisplayDefinition { + /** + * The provider. + */ + provider: string; + + /** + * The resource. + */ + resource: string; + + /** + * The operation. + */ + operation: string; + + /** + * The description. + */ + description: string; +} + +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/arm-resource-provisioning-state" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model OperationsPutContentProperties extends OperationsContentProperties {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model OperationsContentProperties { + /** + * Operations content. + */ + @identifiers(#["name"]) + contents?: LocalizedOperationDefinition[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model LocalizedOperationDefinition { + /** + * Name of the operation. + */ + name: string; + + /** + * Indicates whether the operation applies to data-plane. + */ + isDataAction?: boolean; + + /** + * The origin. + */ + origin?: OperationOrigins; + + /** + * Display information of the operation. + */ + display: LocalizedOperationDisplayDefinitionProperties; + + /** + * The action type. + */ + actionType?: OperationActionType; +} + +/** + * Display information of the operation. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model LocalizedOperationDisplayDefinitionProperties + extends LocalizedOperationDisplayDefinition {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model LocalizedOperationDisplayDefinition { + /** + * Display information of the operation. + */ + default: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for en locale. + */ + en?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for cs locale. + */ + cs?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for de locale. + */ + de?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for es locale. + */ + es?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for fr locale. + */ + fr?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for hu locale. + */ + hu?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for it locale. + */ + it?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for ja locale. + */ + ja?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for ko locale. + */ + ko?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for nl locale. + */ + nl?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for pl locale. + */ + pl?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for pt-BR locale. + */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ptBR?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for pt-PT locale. + */ + #suppress "@azure-tools/typespec-azure-core/casing-style" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + ptPT?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for ru locale. + */ + ru?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for sv locale. + */ + sv?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for zh-Hans locale. + */ + zhHans?: OperationsDisplayDefinitionProperties; + + /** + * Display information of the operation for zh-Hant locale. + */ + zhHant?: OperationsDisplayDefinitionProperties; +} + +/** + * Display information of the operation. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model OperationsDisplayDefinitionProperties + extends OperationsDisplayDefinition {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ProviderRegistrationArrayResponseWithContinuation + is Azure.Core.Page; + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceTypeRegistrationArrayResponseWithContinuation + is Azure.Core.Page; + +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model SkuResourceProperties extends ResourceTypeSku {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceTypeSku { + /** + * The sku settings. + */ + @identifiers(#["name"]) + skuSettings: SkuSetting[]; + + /** + * The provisioning state. + */ + @visibility(Lifecycle.Read) + provisioningState?: ProvisioningState; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model SkuSetting { + /** + * The name. + */ + name: string; + + /** + * The tier. + */ + tier?: string; + + /** + * The size. + */ + size?: string; + + /** + * The family. + */ + family?: string; + + /** + * The kind. + */ + kind?: string; + + /** + * The locations. + */ + locations?: string[]; + + /** + * The location info. + */ + @identifiers(#["location"]) + locationInfo?: SkuLocationInfo[]; + + /** + * The required quota ids. + */ + requiredQuotaIds?: string[]; + + /** + * The required features. + */ + requiredFeatures?: string[]; + + /** + * The capacity. + */ + capacity?: SkuSettingCapacity; + + /** + * The costs. + */ + @identifiers(#["meterId"]) + costs?: SkuCost[]; + + /** + * The capabilities. + */ + @identifiers(#[]) + capabilities?: SkuCapability[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model SkuLocationInfo { + /** + * The location. + */ + location: string; + + /** + * The zones. + */ + zones?: string[]; + + /** + * The zone details. + */ + @identifiers(#[]) + zoneDetails?: SkuZoneDetail[]; + + /** + * The extended locations. + */ + extendedLocations?: string[]; + + /** + * The type. + */ + type?: ExtendedLocationType; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model SkuZoneDetail { + /** + * The name. + */ + name?: string[]; + + /** + * The capabilities. + */ + @identifiers(#["name"]) + capabilities?: SkuCapability[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model SkuCapability { + /** + * The name. + */ + name: string; + + /** + * The value. + */ + value: string; +} + +/** + * The capacity. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model SkuSettingCapacity extends SkuCapacity {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model SkuCapacity { + /** + * The minimum. + */ + minimum: int32; + + /** + * The maximum. + */ + maximum?: int32; + + /** + * The default. + */ + default?: int32; + + /** + * The scale type. + */ + scaleType?: SkuScaleType; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model SkuCost { + /** + * The meter id. + */ + meterId: string; + + /** + * The quantity. + */ + quantity?: int32; + + /** + * The extended unit. + */ + extendedUnit?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model SkuResourceArrayResponseWithContinuation is Azure.Core.Page; + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceManagementAction { + /** + * resource management action content. + */ + @identifiers(#["resourceId"]) + resources?: ResourceManagementEntity[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceManagementEntity { + /** + * The resource id. + */ + resourceId: Azure.Core.armResourceIdentifier; + + /** + * The home tenant id. + */ + homeTenantId?: string; + + /** + * The location. + */ + location?: string; + + /** + * The operation status. + */ + @visibility(Lifecycle.Read) + status?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model AuthorizedApplicationProperties { + #suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" + providerAuthorization?: ApplicationProviderAuthorization; + + /** + * The authorizations that determine the level of data access permissions on the specified resource types. + */ + @identifiers(#["role"]) + dataAuthorizations?: ApplicationDataAuthorization[]; + + /** + * The provisioning state. + */ + @visibility(Lifecycle.Read) + provisioningState?: ProvisioningState; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ApplicationProviderAuthorization { + /** + * The role definition ID for the application. + */ + roleDefinitionId?: string; + + /** + * The managed by role definition ID for the application. + */ + managedByRoleDefinitionId?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ApplicationDataAuthorization { + /** + * The ownership role the application has on the resource types. The service owner role gives the application owner permissions. The limited owner role gives elevated permissions but does not allow all the permissions of a service owner, such as read/write on internal metadata. + */ + role: Role; + + /** + * The resource types from the defined resource types in the provider namespace that the application can access. If no resource types are specified and the role is service owner, the default is * which is all resource types + */ + resourceTypes?: string[]; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model AuthorizedApplicationArrayResponseWithContinuation + is Azure.Core.Page; + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ProviderMonitorSettingProperties { + /** + * The provisioning state. + */ + @visibility(Lifecycle.Read) + provisioningState?: ProvisioningState; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ProviderMonitorSettingArrayResponseWithContinuation + is Azure.Core.Page; + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model FrontloadPayload { + /** + * Properties of the frontload payload. + */ + properties: FrontloadPayloadProperties; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model FrontloadPayloadProperties { + /** + * The operation type. + */ + operationType: string; + + /** + * The provider namespace. + */ + providerNamespace: string; + + /** + * The frontload location. + */ + frontloadLocation: string; + + /** + * The copy from location. + */ + copyFromLocation: string; + + /** + * The environment type. + */ + environmentType: AvailableCheckInManifestEnvironment; + + /** + * The service feature flag. + */ + serviceFeatureFlag: ServiceFeatureFlagAction; + + /** + * The resource types to include. + */ + includeResourceTypes: string[]; + + /** + * The resource types to exclude. + */ + excludeResourceTypes: string[]; + + /** + * The manifest level fields to override. + */ + overrideManifestLevelFields: FrontloadPayloadPropertiesOverrideManifestLevelFields; + + /** + * The endpoint level fields to override. + */ + overrideEndpointLevelFields: FrontloadPayloadPropertiesOverrideEndpointLevelFields; + + /** + * The fields to ignore. + */ + ignoreFields: string[]; +} + +/** + * The manifest level fields to override. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model FrontloadPayloadPropertiesOverrideManifestLevelFields + extends ManifestLevelPropertyBag {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ManifestLevelPropertyBag { + /** + * The resource hydration accounts. + */ + @identifiers(#["accountName"]) + resourceHydrationAccounts?: ResourceHydrationAccount[]; +} + +/** + * The endpoint level fields to override. + */ +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-resource-manager/no-empty-model" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model FrontloadPayloadPropertiesOverrideEndpointLevelFields + extends ResourceTypeEndpointBase {} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model ResourceTypeEndpointBase { + /** + * Whether it's enabled. + */ + enabled: boolean; + + /** + * The api versions. + */ + apiVersions: string[]; + + /** + * The endpoint uri. + */ + endpointUri: string; + + /** + * The locations. + */ + locations: string[]; + + /** + * The required features. + */ + requiredFeatures: string[]; + + /** + * The features rule. + */ + featuresRule: FeaturesPolicy; + + /** + * This is a TimeSpan property. + */ + timeout: duration; + + /** + * The endpoint type. + */ + endpointType: EndpointType; + + /** + * The dsts configuration. + */ + dstsConfiguration: DstsConfigurationProperties; + + /** + * The sku link. + */ + skuLink: string; + + /** + * The api version. + */ + apiVersion: string; + + /** + * The zones. + */ + zones: string[]; +} + +#suppress "@azure-tools/typespec-azure-core/composition-over-inheritance" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model OperationsContent extends Azure.ResourceManager.CommonTypes.Resource { + /** + * Operations content. + */ + properties?: OperationsDefinition; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model GroupConnectivityInformation { + /** + * The group id. + */ + groupId: string; + + /** + * List of required members for the group id. + */ + requiredMembers: string[]; + + /** + * List of required zone names for the group id. + */ + requiredZoneNames: string[]; + + /** + * The redirect map id. + */ + redirectMapId?: string; +} + +#suppress "@azure-tools/typespec-azure-core/documentation-required" "FIXME: Update justification, follow aka.ms/tsp/conversion-fix for details" +model OperationsDefinitionArrayResponseWithContinuation { + /** + * The value. + */ + @pageItems + @identifiers(#["name"]) + value?: OperationsDefinition[]; + + /** + * The URL to get to the next set of results, if there are any. + */ + @nextLink + nextLink?: string; +} diff --git a/specification/providerhub/ProviderHub.Management/tspconfig.yaml b/specification/providerhub/ProviderHub.Management/tspconfig.yaml new file mode 100644 index 000000000000..06790faf9dc0 --- /dev/null +++ b/specification/providerhub/ProviderHub.Management/tspconfig.yaml @@ -0,0 +1,45 @@ +parameters: + "service-dir": + default: "sdk/providerhub" +emit: + - "@azure-tools/typespec-autorest" +options: + "@azure-tools/typespec-autorest": + emitter-output-dir: "{project-root}/.." + azure-resource-provider-folder: "resource-manager" + output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/providerhub.json" + emit-lro-options: "all" + examples-dir: "{project-root}/examples" + "@azure-tools/typespec-python": + emitter-output-dir: "{output-dir}/{service-dir}/azure-mgmt-providerhub" + namespace: "azure.mgmt.providerhub" + generate-test: true + generate-sample: true + flavor: "azure" + "@azure-tools/typespec-java": + emitter-output-dir: "{output-dir}/{service-dir}/azure-resourcemanager-providerhub" + namespace: "com.azure.resourcemanager.providerhub" + service-name: "ProviderHub" # human-readable service name, whitespace allowed + flavor: azure + use-object-for-unknown: true + "@azure-tools/typespec-ts": + service-dir: "sdk/providerhub" + emitter-output-dir: "{output-dir}/{service-dir}/arm-providerhub" + is-modular-library: true + flavor: "azure" + experimental-extensible-enums: true + package-details: + name: "@azure/arm-providerhub" + "@azure-tools/typespec-go": + service-dir: "sdk/resourcemanager/providerhub" + emitter-output-dir: "{output-dir}/{service-dir}/armproviderhub" + module: "github.com/Azure/azure-sdk-for-go/{service-dir}/armproviderhub" + fix-const-stuttering: true + flavor: "azure" + generate-samples: true + generate-fakes: true + head-as-boolean: true + inject-spans: true +linter: + extends: + - "@azure-tools/typespec-azure-rulesets/resource-manager" diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_CreateOrUpdate.json index bc6c1b1443cb..ee2373adc3cb 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_CreateOrUpdate.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_CreateOrUpdate.json @@ -1,88 +1,90 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", - "applicationId": "760505bf-dcfa-4311-b890-18da392a00b2", "api-version": "2024-09-01", + "applicationId": "760505bf-dcfa-4311-b890-18da392a00b2", "properties": { "properties": { - "providerAuthorization": { - "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2", - "managedByRoleDefinitionId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1" - }, "dataAuthorizations": [ { - "role": "ServiceOwner", "resourceTypes": [ "*" - ] + ], + "role": "ServiceOwner" } - ] + ], + "providerAuthorization": { + "managedByRoleDefinitionId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } } - } + }, + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "Successfully created the authorized application.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/authorizedApplications/760505bf-dcfa-4311-b890-18da392a00b2", "name": "Microsoft.Contoso/760505bf-dcfa-4311-b890-18da392a00b2", "type": "Microsoft.ProviderHub/providerRegistrations/authorizedApplications", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/authorizedApplications/760505bf-dcfa-4311-b890-18da392a00b2", "properties": { - "providerAuthorization": { - "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2", - "managedByRoleDefinitionId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1" - }, "dataAuthorizations": [ { - "role": "ServiceOwner", "resourceTypes": [ "*" - ] + ], + "role": "ServiceOwner" } ], + "providerAuthorization": { + "managedByRoleDefinitionId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + }, "provisioningState": "Succeeded" }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } }, "201": { "description": "Successfully created the authorized application.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/authorizedApplications/760505bf-dcfa-4311-b890-18da392a00b2", "name": "Microsoft.Contoso/760505bf-dcfa-4311-b890-18da392a00b2", "type": "Microsoft.ProviderHub/providerRegistrations/authorizedApplications", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/authorizedApplications/760505bf-dcfa-4311-b890-18da392a00b2", "properties": { - "providerAuthorization": { - "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2", - "managedByRoleDefinitionId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1" - }, "dataAuthorizations": [ { - "role": "ServiceOwner", "resourceTypes": [ "*" - ] + ], + "role": "ServiceOwner" } ], + "providerAuthorization": { + "managedByRoleDefinitionId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + }, "provisioningState": "Succeeded" }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "AuthorizedApplications_CreateOrUpdate", + "title": "AuthorizedApplications_CreateOrUpdate" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_Delete.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_Delete.json index 4ce2fb6366e1..2d27fe3b913c 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_Delete.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_Delete.json @@ -1,9 +1,9 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", + "api-version": "2024-09-01", "applicationId": "760505bf-dcfa-4311-b890-18da392a00b2", - "api-version": "2024-09-01" + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -12,5 +12,7 @@ "204": { "description": "Resource does not exist." } - } + }, + "operationId": "AuthorizedApplications_Delete", + "title": "AuthorizedApplications_Delete" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_Get.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_Get.json index 85a74d41daad..bb4e86411226 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_Get.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_Get.json @@ -1,41 +1,43 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", + "api-version": "2024-09-01", "applicationId": "760505bf-dcfa-4311-b890-18da392a00b2", - "api-version": "2024-09-01" + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/authorizedApplications/760505bf-dcfa-4311-b890-18da392a00b2", "name": "Microsoft.Contoso/760505bf-dcfa-4311-b890-18da392a00b2", "type": "Microsoft.ProviderHub/providerRegistrations/authorizedApplications", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/authorizedApplications/760505bf-dcfa-4311-b890-18da392a00b2", "properties": { - "providerAuthorization": { - "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2", - "managedByRoleDefinitionId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1" - }, "dataAuthorizations": [ { - "role": "ServiceOwner", "resourceTypes": [ "*" - ] + ], + "role": "ServiceOwner" } ], + "providerAuthorization": { + "managedByRoleDefinitionId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + }, "provisioningState": "Succeeded" }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "AuthorizedApplications_Get", + "title": "AuthorizedApplications_Get" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_List.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_List.json index 73b6232ce0c4..d1a64b7ecd0d 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_List.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/AuthorizedApplications_List.json @@ -1,44 +1,46 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", + "api-version": "2024-09-01", "applicationId": "760505bf-dcfa-4311-b890-18da392a00b2", - "api-version": "2024-09-01" + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/authorizedApplications/760505bf-dcfa-4311-b890-18da392a00b2", "name": "Microsoft.Contoso/760505bf-dcfa-4311-b890-18da392a00b2", "type": "Microsoft.ProviderHub/providerRegistrations/authorizedApplications", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/authorizedApplications/760505bf-dcfa-4311-b890-18da392a00b2", "properties": { - "providerAuthorization": { - "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2", - "managedByRoleDefinitionId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1" - }, "dataAuthorizations": [ { - "role": "ServiceOwner", "resourceTypes": [ "*" - ] + ], + "role": "ServiceOwner" } ], + "providerAuthorization": { + "managedByRoleDefinitionId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + }, "provisioningState": "Succeeded" }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } ] } } - } + }, + "operationId": "AuthorizedApplications_List", + "title": "AuthorizedApplications_List" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CheckinManifest.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CheckinManifest.json index 3ba4ce325b09..03c6ca73c7c6 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CheckinManifest.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CheckinManifest.json @@ -1,12 +1,12 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", "checkinManifestParams": { "baselineArmManifestLocation": "EastUS2EUAP", "environment": "Prod" - } + }, + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -16,5 +16,7 @@ "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." } } - } + }, + "operationId": "CheckinManifest", + "title": "CheckinManifest" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_CreateOrUpdate.json index 78c8835c0517..f7f4d75963cf 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_CreateOrUpdate.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_CreateOrUpdate.json @@ -1,15 +1,12 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", - "rolloutName": "brazilUsShoeBoxTesting", "api-version": "2024-09-01", "properties": { "properties": { "specification": { "autoProvisionConfig": { - "storage": true, - "resourceGraph": true + "resourceGraph": true, + "storage": true }, "canary": { "regions": [ @@ -19,29 +16,24 @@ "refreshSubscriptionRegistration": true } } - } + }, + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "brazilUsShoeBoxTesting", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "Custom rollout completed successfully.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/brazilUsShoeBoxTesting", "name": "Microsoft.Contoso/brazilUsShoeBoxTesting", "type": "Microsoft.ProviderHub/providerRegistrations/customRollouts", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/brazilUsShoeBoxTesting", "properties": { "provisioningState": "Succeeded", "specification": { "autoProvisionConfig": { - "storage": true, - "resourceGraph": true + "resourceGraph": true, + "storage": true }, "canary": { "regions": [ @@ -59,38 +51,34 @@ "centraluseuap" ], "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", "isCheckedIn": true, - "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM.", - "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7" + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." } } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } } }, "201": { "description": "Custom rollout started successfully.", - "headers": { - "location": "https://management.azure.com/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/operationStauses/11111111-f7ef-471a-a2f4-d0ebbf494f77", - "retry-after": "5000" - }, "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/brazilUsShoeBoxTesting", "name": "Microsoft.Contoso/brazilUsShoeBoxTesting", "type": "Microsoft.ProviderHub/providerRegistrations/customRollouts", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/brazilUsShoeBoxTesting", "properties": { "provisioningState": "RolloutInProgress", "specification": { "autoProvisionConfig": { - "storage": true, - "resourceGraph": true + "resourceGraph": true, + "storage": true }, "canary": { "regions": [ @@ -108,8 +96,22 @@ "centraluseuap" ] } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } + }, + "headers": { + "location": "https://management.azure.com/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/operationStauses/11111111-f7ef-471a-a2f4-d0ebbf494f77", + "retry-after": "5000" } } - } + }, + "operationId": "CustomRollouts_CreateOrUpdate", + "title": "CustomRollouts_CreateOrUpdate" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_Delete.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_Delete.json index 86618f760ba1..d7194ac1e557 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_Delete.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_Delete.json @@ -1,9 +1,9 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", "rolloutName": "2020week10", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -12,5 +12,7 @@ "204": { "description": "No content." } - } + }, + "operationId": "CustomRollouts_Delete", + "title": "providerReleases_Delete" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_Get.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_Get.json index a395b23f815b..aa7335bf1612 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_Get.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_Get.json @@ -1,31 +1,23 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", "rolloutName": "canaryTesting99", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "Successfully retrieved the rollout details.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/canaryTesting99", "name": "Microsoft.Contoso/canaryTesting99", "type": "Microsoft.ProviderHub/providerRegistrations/customRollouts", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/canaryTesting99", "properties": { "provisioningState": "Completed", "specification": { "autoProvisionConfig": { - "storage": true, - "resourceGraph": true + "resourceGraph": true, + "storage": true }, "canary": { "regions": [ @@ -33,62 +25,62 @@ "centraluseuap" ] }, - "refreshSubscriptionRegistration": true, "providerRegistration": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "name": "Microsoft.Contoso", "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "properties": { - "providerHubMetadata": { - "providerAuthentication": { - "allowedAudiences": [ - "https://management.core.windows.net/" - ] - } - }, - "provisioningState": "Succeeded", - "providerAuthorizations": [ + "capabilities": [ { - "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", - "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" } ], - "namespace": "microsoft.contoso", - "providerVersion": "2.0", - "providerType": "Internal, Hidden", "management": { - "manifestOwners": [ - "SPARTA-PlatformServiceAdministrator" - ], "authorizationOwners": [ "RPAAS-PlatformServiceAdministrator" ], + "incidentContactEmail": "helpme@contoso.com", "incidentRoutingService": "", "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], "resourceAccessPolicy": "NotSpecified" }, - "capabilities": [ - { - "quotaId": "CSP_2015-05-01", - "effect": "Allow" - }, + "metadata": null, + "namespace": "microsoft.contoso", + "providerAuthorizations": [ { - "quotaId": "CSP_MG_2017-12-01", - "effect": "Allow" + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" } ], - "metadata": null + "providerHubMetadata": { + "providerAuthentication": { + "allowedAudiences": [ + "https://management.core.windows.net/" + ] + } + }, + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded" } }, + "refreshSubscriptionRegistration": true, "resourceTypeRegistrations": [ { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "name": "Microsoft.Contoso/employees", "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "properties": { - "routingType": "Default", - "regionality": "Regional", + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, "endpoints": [ { "apiVersions": [ @@ -113,6 +105,9 @@ ] } ], + "provisioningState": "Succeeded", + "regionality": "Regional", + "routingType": "Default", "swaggerSpecifications": [ { "apiVersions": [ @@ -122,10 +117,7 @@ ], "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" } - ], - "enableAsyncOperation": false, - "provisioningState": "Succeeded", - "enableThirdPartyS2S": false + ] } } ] @@ -136,13 +128,23 @@ "centraluseuap" ], "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", "isCheckedIn": true, - "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM.", - "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7" + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." } } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } } } - } + }, + "operationId": "CustomRollouts_Get", + "title": "CustomRollouts_Get" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_ListByProviderRegistration.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_ListByProviderRegistration.json index 83ad8c92f603..b845e0d6bf22 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_ListByProviderRegistration.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_ListByProviderRegistration.json @@ -1,8 +1,8 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -10,23 +10,15 @@ "body": { "value": [ { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/canaryTesting99", "name": "Microsoft.Contoso/canaryTesting99", "type": "Microsoft.ProviderHub/providerRegistrations/customRollouts", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/canaryTesting99", "properties": { "provisioningState": "Succeeded", "specification": { "autoProvisionConfig": { - "storage": true, - "resourceGraph": true + "resourceGraph": true, + "storage": true }, "canary": { "regions": [ @@ -42,31 +34,31 @@ "centraluseuap" ], "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", "isCheckedIn": true, - "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM.", - "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7" + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." } } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } }, { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/brazilustesting", "name": "Microsoft.Contoso/brazilustesting", "type": "Microsoft.ProviderHub/providerRegistrations/customRollouts", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/customRollouts/brazilustesting", "properties": { "provisioningState": "Failed", "specification": { "autoProvisionConfig": { - "storage": true, - "resourceGraph": true + "resourceGraph": true, + "storage": true }, "canary": { "regions": [ @@ -83,15 +75,25 @@ } }, "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", "isCheckedIn": true, - "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM.", - "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7" + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." } } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } } ] } } - } + }, + "operationId": "CustomRollouts_ListByProviderRegistration", + "title": "CustomRollouts_ListByProviderRegistration" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_Stop.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_Stop.json index 89aa78aad3ed..92a4769a9907 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_Stop.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/CustomRollouts_Stop.json @@ -1,13 +1,15 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", "rolloutName": "2020week10", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "The rollout is stopped successfully." } - } + }, + "operationId": "CustomRollouts_Stop", + "title": "CustomRollouts_Stop" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_CreateOrUpdate.json index 18fe4da27b0b..8e7609b93ac0 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_CreateOrUpdate.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_CreateOrUpdate.json @@ -1,46 +1,34 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", - "rolloutName": "2020week10", "api-version": "2024-09-01", "properties": { "properties": { "specification": { - "expeditedRollout": { - "enabled": true - }, "canary": { "skipRegions": [ "eastus2euap" ] }, + "expeditedRollout": { + "enabled": true + }, "restOfTheWorldGroupTwo": { "waitDuration": "PT4H" } } } - } + }, + "providerNamespace": "Microsoft.Contoso", + "rolloutName": "2020week10", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { - "201": { - "description": "Default rollout started successfully.", - "headers": { - "location": "https://management.azure.com/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/operationStauses/11111111-f7ef-471a-a2f4-d0ebbf494f77", - "retry-after": "5000" - }, + "200": { + "description": "Default rollout updated successfully.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", "name": "Microsoft.Contoso/2020week10", "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", "properties": { "provisioningState": "RolloutInProgress", "specification": { @@ -49,11 +37,15 @@ "brazilus", "eastus2euap", "centraluseuap" - ], - "skipRegions": [ - "brazilus" ] }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, "lowTraffic": { "regions": [ "southeastasia" @@ -67,13 +59,6 @@ ], "waitDuration": "PT24H" }, - "highTraffic": { - "regions": [ - "australiasoutheast", - "otherhightraficregions" - ], - "waitDuration": "PT24H" - }, "restOfTheWorldGroupOne": { "regions": [ "koreacentral", @@ -97,33 +82,32 @@ "completedRegions": [ "brazilus", "eastus2euap", - "centraluseuap" + "centraluseuap", + "allcompletedregions" ], - "nextTrafficRegion": "LowTraffic", - "nextTrafficRegionScheduledTime": "2020-03-03T22:00:00Z", "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", "isCheckedIn": true, - "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM.", - "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7" + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." } } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } } }, - "200": { - "description": "Default rollout updated successfully.", + "201": { + "description": "Default rollout started successfully.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", "name": "Microsoft.Contoso/2020week10", "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", "properties": { "provisioningState": "RolloutInProgress", "specification": { @@ -132,8 +116,18 @@ "brazilus", "eastus2euap", "centraluseuap" + ], + "skipRegions": [ + "brazilus" ] }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, "lowTraffic": { "regions": [ "southeastasia" @@ -147,13 +141,6 @@ ], "waitDuration": "PT24H" }, - "highTraffic": { - "regions": [ - "australiasoutheast", - "otherhightraficregions" - ], - "waitDuration": "PT24H" - }, "restOfTheWorldGroupOne": { "regions": [ "koreacentral", @@ -177,17 +164,32 @@ "completedRegions": [ "brazilus", "eastus2euap", - "centraluseuap", - "allcompletedregions" + "centraluseuap" ], "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", "isCheckedIn": true, - "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM.", - "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7" - } + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + }, + "nextTrafficRegion": "LowTraffic", + "nextTrafficRegionScheduledTime": "2020-03-03T22:00:00Z" } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } + }, + "headers": { + "location": "https://management.azure.com/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/operationStauses/11111111-f7ef-471a-a2f4-d0ebbf494f77", + "retry-after": "5000" } } - } + }, + "operationId": "DefaultRollouts_CreateOrUpdate", + "title": "DefaultRollouts_CreateOrUpdate" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_Delete.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_Delete.json index 86618f760ba1..2b3700cec5e5 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_Delete.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_Delete.json @@ -1,9 +1,9 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", "rolloutName": "2020week10", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -12,5 +12,7 @@ "204": { "description": "No content." } - } + }, + "operationId": "DefaultRollouts_Delete", + "title": "DefaultRollouts_Delete" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_Get.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_Get.json index 150e9d3c7c8b..42fab4e3c49f 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_Get.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_Get.json @@ -1,31 +1,20 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", "rolloutName": "2020week10", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "Default rollout resource.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", "name": "Microsoft.Contoso/2020week10", "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", "properties": { "provisioningState": "Cancelled", "specification": { - "expeditedRollout": { - "enabled": true - }, "canary": { "regions": [ "eastus2euap", @@ -35,18 +24,8 @@ "brazilus" ] }, - "lowTraffic": { - "regions": [ - "southeastasia" - ], - "waitDuration": "PT24H" - }, - "mediumTraffic": { - "regions": [ - "uksouth", - "indiawest" - ], - "waitDuration": "PT24H" + "expeditedRollout": { + "enabled": true }, "highTraffic": { "regions": [ @@ -55,79 +34,74 @@ ], "waitDuration": "PT24H" }, - "restOfTheWorldGroupOne": { + "lowTraffic": { "regions": [ - "koreacentral", - "francecentral", - "australiacentral", - "westus", - "allotherregions" + "southeastasia" ], - "waitDuration": "PT4H" + "waitDuration": "PT24H" }, - "restOfTheWorldGroupTwo": { + "mediumTraffic": { "regions": [ - "germanynorth", - "norwayeast", - "allotherregions" + "uksouth", + "indiawest" ], - "waitDuration": "PT4H" + "waitDuration": "PT24H" }, "providerRegistration": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "name": "Microsoft.Contoso", "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "properties": { - "providerHubMetadata": { - "providerAuthentication": { - "allowedAudiences": [ - "https://management.core.windows.net/" - ] - } - }, - "provisioningState": "Succeeded", - "providerAuthorizations": [ + "capabilities": [ { - "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", - "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" } ], - "namespace": "microsoft.contoso", - "providerVersion": "2.0", - "providerType": "Internal, Hidden", "management": { - "manifestOwners": [ - "SPARTA-PlatformServiceAdministrator" - ], "authorizationOwners": [ "RPAAS-PlatformServiceAdministrator" ], + "incidentContactEmail": "helpme@contoso.com", "incidentRoutingService": "", "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], "resourceAccessPolicy": "NotSpecified" }, - "capabilities": [ - { - "quotaId": "CSP_2015-05-01", - "effect": "Allow" - }, + "metadata": null, + "namespace": "microsoft.contoso", + "providerAuthorizations": [ { - "quotaId": "CSP_MG_2017-12-01", - "effect": "Allow" + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" } ], - "metadata": null + "providerHubMetadata": { + "providerAuthentication": { + "allowedAudiences": [ + "https://management.core.windows.net/" + ] + } + }, + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded" } }, "resourceTypeRegistrations": [ { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "name": "Microsoft.Contoso/employees", "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "properties": { - "routingType": "Default", - "regionality": "Regional", + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, "endpoints": [ { "apiVersions": [ @@ -152,6 +126,9 @@ ] } ], + "provisioningState": "Succeeded", + "regionality": "Regional", + "routingType": "Default", "swaggerSpecifications": [ { "apiVersions": [ @@ -161,13 +138,28 @@ ], "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" } - ], - "enableAsyncOperation": false, - "provisioningState": "Succeeded", - "enableThirdPartyS2S": false + ] } } - ] + ], + "restOfTheWorldGroupOne": { + "regions": [ + "koreacentral", + "francecentral", + "australiacentral", + "westus", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "restOfTheWorldGroupTwo": { + "regions": [ + "germanynorth", + "norwayeast", + "allotherregions" + ], + "waitDuration": "PT4H" + } }, "status": { "completedRegions": [ @@ -182,15 +174,25 @@ "message": "Rollout was explicitly stopped by the user." } }, - "subscriptionReregistrationResult": "ConditionalUpdate", "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", "isCheckedIn": true, - "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM.", - "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7" - } + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + }, + "subscriptionReregistrationResult": "ConditionalUpdate" } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } } } - } + }, + "operationId": "DefaultRollouts_Get", + "title": "DefaultRollouts_Get" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_ListByProviderRegistration.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_ListByProviderRegistration.json index 21e5b6e7bc5b..00e3c3f5daae 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_ListByProviderRegistration.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_ListByProviderRegistration.json @@ -1,8 +1,8 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -10,23 +10,12 @@ "body": { "value": [ { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week01", "name": "Microsoft.Contoso/2020week01", "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week01", "properties": { "provisioningState": "Succeeded", "specification": { - "expeditedRollout": { - "enabled": true - }, "canary": { "regions": [ "brazilus", @@ -34,6 +23,16 @@ "centraluseuap" ] }, + "expeditedRollout": { + "enabled": true + }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, "lowTraffic": { "regions": [ "southeastasia" @@ -47,13 +46,6 @@ ], "waitDuration": "PT24H" }, - "highTraffic": { - "regions": [ - "australiasoutheast", - "otherhightraficregions" - ], - "waitDuration": "PT24H" - }, "restOfTheWorldGroupOne": { "regions": [ "koreacentral", @@ -81,25 +73,25 @@ "allcompletedregions" ], "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", "isCheckedIn": true, - "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM.", - "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7" + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." } } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } }, { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", "name": "Microsoft.Contoso/2020week10", "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", "properties": { "provisioningState": "Cancelled", "specification": { @@ -110,6 +102,13 @@ "centraluseuap" ] }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, "lowTraffic": { "regions": [ "southeastasia" @@ -123,13 +122,6 @@ ], "waitDuration": "PT24H" }, - "highTraffic": { - "regions": [ - "australiasoutheast", - "otherhightraficregions" - ], - "waitDuration": "PT24H" - }, "restOfTheWorldGroupOne": { "regions": [ "koreacentral", @@ -163,15 +155,25 @@ } }, "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", "isCheckedIn": true, - "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM.", - "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7" + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." } } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } } ] } } - } + }, + "operationId": "DefaultRollouts_ListByProviderRegistration", + "title": "DefaultRollouts_ListByProviderRegistration" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_Stop.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_Stop.json index 89aa78aad3ed..908a41b1167f 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_Stop.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DefaultRollouts_Stop.json @@ -1,13 +1,15 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", "rolloutName": "2020week10", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "The rollout is stopped successfully." } - } + }, + "operationId": "DefaultRollouts_Stop", + "title": "DefaultRollouts_Stop" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DirectProviderRegistrations_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DirectProviderRegistrations_CreateOrUpdate.json index 4a1a0df37bf3..b09e5e88df2c 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DirectProviderRegistrations_CreateOrUpdate.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DirectProviderRegistrations_CreateOrUpdate.json @@ -1,48 +1,51 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", "properties": { "kind": "Direct", "properties": { - "providerType": "Internal", - "providerVersion": "2.0", - "serviceName": "root", - "services": [ + "capabilities": [ { - "serviceName": "tags", - "status": "Inactive" + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" } ], + "customManifestVersion": "2.0", + "dstsConfiguration": { + "serviceDnsName": "prds.sparta.azure.com", + "serviceName": "prds-shim" + }, + "legacyNamespace": "legacyNamespace", + "legacyRegistrations": [ + "legacyRegistration" + ], "management": { + "incidentContactEmail": "helpme@contoso.com", "incidentRoutingService": "Contoso Resource Provider", "incidentRoutingTeam": "Contoso Triage", - "incidentContactEmail": "helpme@contoso.com", "serviceTreeInfos": [ { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" } ] }, - "capabilities": [ - { - "quotaId": "CSP_2015-05-01", - "effect": "Allow" - }, + "managementGroupGlobalNotificationEndpoints": [ { - "quotaId": "CSP_MG_2017-12-01", - "effect": "Allow" + "endpointUri": "{your_management_group_notification_endpoint}" } ], + "notificationOptions": "EmitSpendingLimit", "notificationSettings": { "subscriberSettings": [ { "filterRules": [ { - "filterQuery": "Resources | where event.eventType in ('Microsoft.Network/IpAddresses/write', 'Microsoft.KeyVault/vaults/move/action')", "endpointInformation": [ { "endpoint": "https://userrp.azure.com/arnnotify", @@ -54,112 +57,107 @@ "endpointType": "Eventhub", "schemaVersion": "3.0" } - ] + ], + "filterQuery": "Resources | where event.eventType in ('Microsoft.Network/IpAddresses/write', 'Microsoft.KeyVault/vaults/move/action')" } ] } ] }, - "dstsConfiguration": { - "serviceName": "prds-shim", - "serviceDnsName": "prds.sparta.azure.com" + "optionalFeatures": [ + "Microsoft.Resources/PlatformSubscription" + ], + "providerType": "Internal", + "providerVersion": "2.0", + "resourceGroupLockOptionDuringMove": { + "blockActionVerb": "Action" }, - "notificationOptions": "EmitSpendingLimit", "resourceHydrationAccounts": [ { - "subscriptionId": "e4eae963-2d15-43e6-a097-98bd75b33edd", - "accountName": "classichydrationprodsn01" + "accountName": "classichydrationprodsn01", + "subscriptionId": "e4eae963-2d15-43e6-a097-98bd75b33edd" }, { - "subscriptionId": "69e69ecb-e69c-41d4-99b8-87dd12781067", - "accountName": "classichydrationprodch01" - } - ], - "managementGroupGlobalNotificationEndpoints": [ - { - "endpointUri": "{your_management_group_notification_endpoint}" + "accountName": "classichydrationprodch01", + "subscriptionId": "69e69ecb-e69c-41d4-99b8-87dd12781067" } ], - "optionalFeatures": [ - "Microsoft.Resources/PlatformSubscription" - ], - "resourceGroupLockOptionDuringMove": { - "blockActionVerb": "Action" - }, "responseOptions": { "serviceClientOptionsType": "DisableAutomaticDecompression" }, - "legacyNamespace": "legacyNamespace", - "legacyRegistrations": [ - "legacyRegistration" - ], - "customManifestVersion": "2.0" + "serviceName": "root", + "services": [ + { + "serviceName": "tags", + "status": "Inactive" + } + ] } - } + }, + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "name": "Microsoft.Contoso", "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "properties": { - "namespace": "Microsoft.Contoso", - "providerAuthorizations": [ + "capabilities": [ { - "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", - "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" } ], + "customManifestVersion": "2.0", + "dstsConfiguration": { + "serviceDnsName": "prds.sparta.azure.com", + "serviceName": "prds-shim" + }, + "legacyNamespace": "legacyNamespace", + "legacyRegistrations": [ + "legacyRegistration" + ], "management": { - "manifestOwners": [ - "manifestOwners-group" - ], "authorizationOwners": [ "authorizationOwners-group" ], + "incidentContactEmail": "helpme@contoso.com", "incidentRoutingService": "", "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", + "manifestOwners": [ + "manifestOwners-group" + ], + "resourceAccessPolicy": "NotSpecified", "serviceTreeInfos": [ { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" } - ], - "resourceAccessPolicy": "NotSpecified" + ] }, - "capabilities": [ - { - "quotaId": "CSP_2015-05-01", - "effect": "Allow" - }, + "managementGroupGlobalNotificationEndpoints": [ { - "quotaId": "CSP_MG_2017-12-01", - "effect": "Allow" + "endpointUri": "{your_management_group_notification_endpoint}" } ], "metadata": { "onboardedVia": "ProviderHub" }, - "providerVersion": "2.0", - "providerType": "Internal, Hidden", - "serviceName": "root", - "services": [ - { - "serviceName": "tags", - "status": "Inactive" - } - ], - "provisioningState": "Succeeded", + "namespace": "Microsoft.Contoso", + "notificationOptions": "EmitSpendingLimit", "notificationSettings": { "subscriberSettings": [ { "filterRules": [ { - "filterQuery": "Resources | where event.eventType in ('Microsoft.Network/IpAddresses/write', 'Microsoft.KeyVault/vaults/move/action')", "endpointInformation": [ { "endpoint": "https://userrp.azure.com/arnnotify", @@ -171,119 +169,119 @@ "endpointType": "Eventhub", "schemaVersion": "3.0" } - ] + ], + "filterQuery": "Resources | where event.eventType in ('Microsoft.Network/IpAddresses/write', 'Microsoft.KeyVault/vaults/move/action')" } ] } ] }, - "dstsConfiguration": { - "serviceName": "prds-shim", - "serviceDnsName": "prds.sparta.azure.com" - }, - "notificationOptions": "EmitSpendingLimit", - "resourceHydrationAccounts": [ - { - "subscriptionId": "e4eae963-2d15-43e6-a097-98bd75b33edd", - "accountName": "classichydrationprodsn01" - }, - { - "subscriptionId": "69e69ecb-e69c-41d4-99b8-87dd12781067", - "accountName": "classichydrationprodch01" - } + "optionalFeatures": [ + "Microsoft.Resources/PlatformSubscription" ], - "managementGroupGlobalNotificationEndpoints": [ + "providerAuthorizations": [ { - "endpointUri": "{your_management_group_notification_endpoint}" + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" } ], - "optionalFeatures": [ - "Microsoft.Resources/PlatformSubscription" - ], + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded", "resourceGroupLockOptionDuringMove": { "blockActionVerb": "Action" }, + "resourceHydrationAccounts": [ + { + "accountName": "classichydrationprodsn01", + "subscriptionId": "e4eae963-2d15-43e6-a097-98bd75b33edd" + }, + { + "accountName": "classichydrationprodch01", + "subscriptionId": "69e69ecb-e69c-41d4-99b8-87dd12781067" + } + ], "responseOptions": { "serviceClientOptionsType": "DisableAutomaticDecompression" }, - "legacyNamespace": "legacyNamespace", - "legacyRegistrations": [ - "legacyRegistration" - ], - "customManifestVersion": "2.0" + "serviceName": "root", + "services": [ + { + "serviceName": "tags", + "status": "Inactive" + } + ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } }, "201": { "description": "Successfully created the provider registration.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "name": "Microsoft.Contoso", "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "properties": { - "namespace": "Microsoft.Contoso", - "providerAuthorizations": [ + "capabilities": [ { - "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", - "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" } ], + "customManifestVersion": "2.0", + "dstsConfiguration": { + "serviceDnsName": "prds.sparta.azure.com", + "serviceName": "prds-shim" + }, + "legacyNamespace": "legacyNamespace", + "legacyRegistrations": [ + "legacyRegistration" + ], "management": { - "manifestOwners": [ - "manifestOwners-group" - ], "authorizationOwners": [ "authorizationOwners-group" ], + "incidentContactEmail": "helpme@contoso.com", "incidentRoutingService": "", "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", + "manifestOwners": [ + "manifestOwners-group" + ], + "resourceAccessPolicy": "NotSpecified", "serviceTreeInfos": [ { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" } - ], - "resourceAccessPolicy": "NotSpecified" + ] }, - "capabilities": [ - { - "quotaId": "CSP_2015-05-01", - "effect": "Allow" - }, + "managementGroupGlobalNotificationEndpoints": [ { - "quotaId": "CSP_MG_2017-12-01", - "effect": "Allow" + "endpointUri": "{your_management_group_notification_endpoint}" } ], "metadata": { "onboardedVia": "ProviderHub" }, - "providerVersion": "2.0", - "providerType": "Internal, Hidden", - "serviceName": "root", - "services": [ - { - "serviceName": "tags", - "status": "Inactive" - } - ], - "provisioningState": "Succeeded", + "namespace": "Microsoft.Contoso", + "notificationOptions": "EmitSpendingLimit", "notificationSettings": { "subscriberSettings": [ { "filterRules": [ { - "filterQuery": "Resources | where event.eventType in ('Microsoft.Network/IpAddresses/write', 'Microsoft.KeyVault/vaults/move/action')", "endpointInformation": [ { "endpoint": "https://userrp.azure.com/arnnotify", @@ -295,56 +293,60 @@ "endpointType": "Eventhub", "schemaVersion": "3.0" } - ] + ], + "filterQuery": "Resources | where event.eventType in ('Microsoft.Network/IpAddresses/write', 'Microsoft.KeyVault/vaults/move/action')" } ] } ] }, - "dstsConfiguration": { - "serviceName": "prds-shim", - "serviceDnsName": "prds.sparta.azure.com" - }, - "notificationOptions": "EmitSpendingLimit", - "resourceHydrationAccounts": [ - { - "subscriptionId": "e4eae963-2d15-43e6-a097-98bd75b33edd", - "accountName": "classichydrationprodsn01" - }, - { - "subscriptionId": "69e69ecb-e69c-41d4-99b8-87dd12781067", - "accountName": "classichydrationprodch01" - } + "optionalFeatures": [ + "Microsoft.Resources/PlatformSubscription" ], - "managementGroupGlobalNotificationEndpoints": [ + "providerAuthorizations": [ { - "endpointUri": "{your_management_group_notification_endpoint}" + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" } ], - "optionalFeatures": [ - "Microsoft.Resources/PlatformSubscription" - ], + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded", "resourceGroupLockOptionDuringMove": { "blockActionVerb": "Action" }, + "resourceHydrationAccounts": [ + { + "accountName": "classichydrationprodsn01", + "subscriptionId": "e4eae963-2d15-43e6-a097-98bd75b33edd" + }, + { + "accountName": "classichydrationprodch01", + "subscriptionId": "69e69ecb-e69c-41d4-99b8-87dd12781067" + } + ], "responseOptions": { "serviceClientOptionsType": "DisableAutomaticDecompression" }, - "legacyNamespace": "legacyNamespace", - "legacyRegistrations": [ - "legacyRegistration" - ], - "customManifestVersion": "2.0" + "serviceName": "root", + "services": [ + { + "serviceName": "tags", + "status": "Inactive" + } + ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "ProviderRegistrations_CreateOrUpdate", + "title": "DirectProviderRegistrations_CreateOrUpdate" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DirectResourceTypeRegistrations_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DirectResourceTypeRegistrations_CreateOrUpdate.json index f6ece360738f..22b9c4e9588b 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DirectResourceTypeRegistrations_CreateOrUpdate.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/DirectResourceTypeRegistrations_CreateOrUpdate.json @@ -1,14 +1,54 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", - "resourceType": "employees", "api-version": "2024-09-01", "properties": { "properties": { - "routingType": "Default", - "regionality": "Regional", + "addResourceListTargetLocations": true, "additionalOptions": "ProtectedAsyncOperationPolling", + "allowEmptyRoleAssignments": false, + "allowedResourceNames": [ + { + "name": "name1", + "getActionVerb": "list" + }, + { + "name": "name2" + } + ], + "allowedTemplateDeploymentReferenceActions": [ + "ListKeys", + "ListSAS" + ], + "apiProfiles": [ + { + "apiVersion": "2018-02-01", + "profileVersion": "2018-03-01-hybrid" + }, + { + "apiVersion": "2016-06-01", + "profileVersion": "2019-03-01-hybrid" + } + ], + "asyncTimeoutRules": [ + { + "actionName": "Microsoft.ClassicCompute/domainNames/write", + "timeout": "PT12H" + } + ], + "availabilityZoneRule": { + "availabilityZonePolicy": "MultiZoned" + }, + "capacityRule": { + "capacityPolicy": "Restricted", + "skuAlias": "incorrectAlias" + }, + "commonApiVersions": [ + "2021-01-01" + ], + "dstsConfiguration": { + "serviceDnsName": "prds.sparta.azure.com", + "serviceName": "prds-shim" + }, "endpoints": [ { "apiVersions": [ @@ -24,47 +64,57 @@ ] } ], - "resourceConcurrencyControlOptions": { - "put": { - "policy": "SynchronizeBeginExtension" - }, - "patch": { - "policy": "SynchronizeBeginExtension" - }, - "post": { - "policy": "SynchronizeBeginExtension" - } + "groupingTag": "groupingTag", + "legacyName": "legacyName", + "legacyNames": [ + "legacyName" + ], + "legacyPolicy": { + "disallowedConditions": [ + { + "disallowedLegacyOperations": [ + "Create", + "Delete" + ], + "feature": "Microsoft.RP/ArmOnlyJobCollections" + } + ], + "disallowedLegacyOperations": [ + "Create" + ] }, - "swaggerSpecifications": [ + "linkedOperationRules": [ { - "apiVersions": [ - "2020-06-01-preview" - ], - "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + "linkedAction": "Blocked", + "linkedOperation": "CrossSubscriptionResourceMove" + }, + { + "linkedAction": "Validate", + "linkedOperation": "CrossResourceGroupResourceMove" } ], - "resourceGraphConfiguration": { - "enabled": true, - "apiVersion": "2019-01-01" - }, "management": { - "manifestOwners": [ - "SPARTA-PlatformServiceAdministrator" - ], "authorizationOwners": [ "RPAAS-PlatformServiceAdministrator" ], + "incidentContactEmail": "helpme@contoso.com", "incidentRoutingService": "", "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "resourceAccessPolicy": "NotSpecified", "serviceTreeInfos": [ { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" } - ], - "resourceAccessPolicy": "NotSpecified" + ] + }, + "manifestLink": "https://azure.com", + "marketplaceOptions": { + "addOnPlanConversionAllowed": true }, "metadata": {}, "notifications": [ @@ -78,99 +128,30 @@ "allowNoncompliantCollectionResponse": true } }, + "policyExecutionType": "BypassPolicies", + "regionality": "Regional", "requestHeaderOptions": { "optOutHeaders": "SystemDataCreatedByLastModifiedBy" }, - "templateDeploymentPolicy": { - "capabilities": "Preflight", - "preflightOptions": "ValidationRequests, DeploymentRequests", - "preflightNotifications": "None" - }, - "allowEmptyRoleAssignments": false, - "policyExecutionType": "BypassPolicies", - "availabilityZoneRule": { - "availabilityZonePolicy": "MultiZoned" - }, - "dstsConfiguration": { - "serviceName": "prds-shim", - "serviceDnsName": "prds.sparta.azure.com" + "resourceCache": { + "enableResourceCache": true, + "resourceCacheExpirationTimespan": "PT2M" }, - "asyncTimeoutRules": [ - { - "actionName": "Microsoft.ClassicCompute/domainNames/write", - "timeout": "PT12H" - } - ], - "commonApiVersions": [ - "2021-01-01" - ], - "apiProfiles": [ - { - "profileVersion": "2018-03-01-hybrid", - "apiVersion": "2018-02-01" - }, - { - "profileVersion": "2019-03-01-hybrid", - "apiVersion": "2016-06-01" - } - ], - "linkedOperationRules": [ - { - "linkedOperation": "CrossSubscriptionResourceMove", - "linkedAction": "Blocked" + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" }, - { - "linkedOperation": "CrossResourceGroupResourceMove", - "linkedAction": "Validate" - } - ], - "legacyName": "legacyName", - "legacyNames": [ - "legacyName" - ], - "allowedTemplateDeploymentReferenceActions": [ - "ListKeys", - "ListSAS" - ], - "legacyPolicy": { - "disallowedLegacyOperations": [ - "Create" - ], - "disallowedConditions": [ - { - "disallowedLegacyOperations": [ - "Create", - "Delete" - ], - "feature": "Microsoft.RP/ArmOnlyJobCollections" - } - ] - }, - "manifestLink": "https://azure.com", - "capacityRule": { - "capacityPolicy": "Restricted", - "skuAlias": "incorrectAlias" - }, - "marketplaceOptions": { - "addOnPlanConversionAllowed": true - }, - "allowedResourceNames": [ - { - "name": "name1", - "getActionVerb": "list" + "post": { + "policy": "SynchronizeBeginExtension" }, - { - "name": "name2" + "put": { + "policy": "SynchronizeBeginExtension" } - ], - "resourceCache": { - "enableResourceCache": true, - "resourceCacheExpirationTimespan": "PT2M" }, - "resourceQueryManagement": { - "filterOption": "EnableSubscriptionFilterOnTenant" + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true }, - "supportsTags": true, "resourceManagementOptions": { "batchProvisioningSupport": { "supportedOperations": "Get, Delete" @@ -181,28 +162,92 @@ } ] }, - "groupingTag": "groupingTag", - "addResourceListTargetLocations": true, + "resourceQueryManagement": { + "filterOption": "EnableSubscriptionFilterOnTenant" + }, "resourceTypeCommonAttributeManagement": { "commonApiVersionsMergeMode": "Merge" }, "routingRule": { "hostResourceType": "servers/databases" + }, + "routingType": "Default", + "supportsTags": true, + "swaggerSpecifications": [ + { + "apiVersions": [ + "2020-06-01-preview" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ], + "templateDeploymentPolicy": { + "capabilities": "Preflight", + "preflightNotifications": "None", + "preflightOptions": "ValidationRequests, DeploymentRequests" } } - } + }, + "providerNamespace": "Microsoft.Contoso", + "resourceType": "employees", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "Successfully updated the resource type.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "name": "Microsoft.Contoso/employees", "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "properties": { - "routingType": "Default", - "regionality": "Regional", + "addResourceListTargetLocations": true, "additionalOptions": "ProtectedAsyncOperationPolling", + "allowEmptyRoleAssignments": false, + "allowedResourceNames": [ + { + "name": "name1", + "getActionVerb": "list" + }, + { + "name": "name2" + } + ], + "allowedTemplateDeploymentReferenceActions": [ + "ListKeys", + "ListSAS" + ], + "apiProfiles": [ + { + "apiVersion": "2018-02-01", + "profileVersion": "2018-03-01-hybrid" + }, + { + "apiVersion": "2016-06-01", + "profileVersion": "2019-03-01-hybrid" + } + ], + "asyncTimeoutRules": [ + { + "actionName": "Microsoft.ClassicCompute/domainNames/write", + "timeout": "PT12H" + } + ], + "availabilityZoneRule": { + "availabilityZonePolicy": "MultiZoned" + }, + "capacityRule": { + "capacityPolicy": "Restricted", + "skuAlias": "incorrectAlias" + }, + "commonApiVersions": [ + "2021-01-01" + ], + "dstsConfiguration": { + "serviceDnsName": "prds.sparta.azure.com", + "serviceName": "prds-shim" + }, + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, "endpoints": [ { "apiVersions": [ @@ -227,50 +272,54 @@ ] } ], - "swaggerSpecifications": [ - { - "apiVersions": [ - "2018-11-01-preview", - "2020-01-01-preview", - "2019-01-01" - ], - "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" - } + "groupingTag": "groupingTag", + "legacyName": "legacyName", + "legacyNames": [ + "legacyName" ], - "enableAsyncOperation": false, - "provisioningState": "Succeeded", - "enableThirdPartyS2S": false, - "resourceDeletionPolicy": "CascadeDeleteProxyOnlyChildren", - "resourceConcurrencyControlOptions": { - "put": { - "policy": "SynchronizeBeginExtension" - }, - "patch": { - "policy": "SynchronizeBeginExtension" + "legacyPolicy": { + "disallowedConditions": [ + { + "disallowedLegacyOperations": [ + "Create", + "Delete" + ], + "feature": "Microsoft.RP/ArmOnlyJobCollections" + } + ], + "disallowedLegacyOperations": [ + "Create" + ] + }, + "linkedOperationRules": [ + { + "linkedAction": "Blocked", + "linkedOperation": "CrossSubscriptionResourceMove" }, - "post": { - "policy": "SynchronizeBeginExtension" + { + "linkedAction": "Validate", + "linkedOperation": "CrossResourceGroupResourceMove" } - }, - "resourceGraphConfiguration": { - "enabled": true, - "apiVersion": "2019-01-01" - }, + ], "management": { + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", "manifestOwners": [ "SPARTA-PlatformServiceAdministrator" ], - "incidentRoutingService": "", - "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", + "resourceAccessPolicy": "NotSpecified", "serviceTreeInfos": [ { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" } - ], - "resourceAccessPolicy": "NotSpecified" + ] + }, + "manifestLink": "https://azure.com", + "marketplaceOptions": { + "addOnPlanConversionAllowed": true }, "metadata": {}, "notifications": [ @@ -284,99 +333,32 @@ "allowNoncompliantCollectionResponse": true } }, + "policyExecutionType": "BypassPolicies", + "provisioningState": "Succeeded", + "regionality": "Regional", "requestHeaderOptions": { "optOutHeaders": "SystemDataCreatedByLastModifiedBy" }, - "templateDeploymentPolicy": { - "capabilities": "Preflight", - "preflightOptions": "ValidationRequests, DeploymentRequests", - "preflightNotifications": "None" - }, - "allowEmptyRoleAssignments": false, - "policyExecutionType": "BypassPolicies", - "availabilityZoneRule": { - "availabilityZonePolicy": "MultiZoned" - }, - "dstsConfiguration": { - "serviceName": "prds-shim", - "serviceDnsName": "prds.sparta.azure.com" + "resourceCache": { + "enableResourceCache": true, + "resourceCacheExpirationTimespan": "PT2M" }, - "asyncTimeoutRules": [ - { - "actionName": "Microsoft.ClassicCompute/domainNames/write", - "timeout": "PT12H" - } - ], - "commonApiVersions": [ - "2021-01-01" - ], - "apiProfiles": [ - { - "profileVersion": "2018-03-01-hybrid", - "apiVersion": "2018-02-01" - }, - { - "profileVersion": "2019-03-01-hybrid", - "apiVersion": "2016-06-01" - } - ], - "linkedOperationRules": [ - { - "linkedOperation": "CrossSubscriptionResourceMove", - "linkedAction": "Blocked" + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" }, - { - "linkedOperation": "CrossResourceGroupResourceMove", - "linkedAction": "Validate" - } - ], - "legacyName": "legacyName", - "legacyNames": [ - "legacyName" - ], - "allowedTemplateDeploymentReferenceActions": [ - "ListKeys", - "ListSAS" - ], - "legacyPolicy": { - "disallowedLegacyOperations": [ - "Create" - ], - "disallowedConditions": [ - { - "disallowedLegacyOperations": [ - "Create", - "Delete" - ], - "feature": "Microsoft.RP/ArmOnlyJobCollections" - } - ] - }, - "manifestLink": "https://azure.com", - "capacityRule": { - "capacityPolicy": "Restricted", - "skuAlias": "incorrectAlias" - }, - "marketplaceOptions": { - "addOnPlanConversionAllowed": true - }, - "allowedResourceNames": [ - { - "name": "name1", - "getActionVerb": "list" + "post": { + "policy": "SynchronizeBeginExtension" }, - { - "name": "name2" + "put": { + "policy": "SynchronizeBeginExtension" } - ], - "resourceCache": { - "enableResourceCache": true, - "resourceCacheExpirationTimespan": "PT2M" }, - "resourceQueryManagement": { - "filterOption": "EnableSubscriptionFilterOnTenant" + "resourceDeletionPolicy": "CascadeDeleteProxyOnlyChildren", + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true }, - "supportsTags": true, "resourceManagementOptions": { "batchProvisioningSupport": { "supportedOperations": "Get, Delete" @@ -387,34 +369,52 @@ } ] }, - "groupingTag": "groupingTag", - "addResourceListTargetLocations": true, + "resourceQueryManagement": { + "filterOption": "EnableSubscriptionFilterOnTenant" + }, "resourceTypeCommonAttributeManagement": { "commonApiVersionsMergeMode": "Merge" }, "routingRule": { "hostResourceType": "servers/databases" + }, + "routingType": "Default", + "supportsTags": true, + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ], + "templateDeploymentPolicy": { + "capabilities": "Preflight", + "preflightNotifications": "None", + "preflightOptions": "ValidationRequests, DeploymentRequests" } }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } }, "201": { "description": "Successfully created the resource type.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "name": "Microsoft.Contoso/employees", "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "properties": { - "routingType": "Default", - "regionality": "Regional", + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, "endpoints": [ { "apiVersions": [ @@ -439,49 +439,21 @@ ] } ], - "swaggerSpecifications": [ - { - "apiVersions": [ - "2018-11-01-preview", - "2020-01-01-preview", - "2019-01-01" - ], - "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" - } - ], - "enableAsyncOperation": false, - "provisioningState": "Succeeded", - "enableThirdPartyS2S": false, - "resourceConcurrencyControlOptions": { - "put": { - "policy": "SynchronizeBeginExtension" - }, - "patch": { - "policy": "SynchronizeBeginExtension" - }, - "post": { - "policy": "SynchronizeBeginExtension" - } - }, - "resourceGraphConfiguration": { - "enabled": true, - "apiVersion": "2019-01-01" - }, "management": { + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", "manifestOwners": [ "SPARTA-PlatformServiceAdministrator" ], - "incidentRoutingService": "", - "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", + "resourceAccessPolicy": "NotSpecified", "serviceTreeInfos": [ { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" } - ], - "resourceAccessPolicy": "NotSpecified" + ] }, "metadata": {}, "openApiConfiguration": { @@ -489,19 +461,49 @@ "allowNoncompliantCollectionResponse": true } }, + "provisioningState": "Succeeded", + "regionality": "Regional", "requestHeaderOptions": { "optOutHeaders": "SystemDataCreatedByLastModifiedBy" - } + }, + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + }, + "put": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true + }, + "routingType": "Default", + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "ResourceTypeRegistrations_CreateOrUpdate", + "title": "DirectResourceTypeRegistrations_CreateOrUpdate.json" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/GenerateManifest.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/GenerateManifest.json index f510a1538293..4a64c2ae1d33 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/GenerateManifest.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/GenerateManifest.json @@ -1,19 +1,58 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "Generates the manifest for the given provider.", "body": { + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "crossTenantTokenValidation": "EnsureSecureValidation", + "globalNotificationEndpoints": [ + { + "enabled": true, + "endpointUri": "https://notificationendpoint.com" + } + ], + "management": { + "authorizationOwners": [ + "authorizationOwners-group" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "manifestOwners-group" + ], + "resourceAccessPolicy": "NotSpecified" + }, + "metadata": { + "onboardedVia": "ProviderHub" + }, + "namespace": "microsoft.contoso", "providerAuthorizations": [ { "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" } ], + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "reRegisterSubscriptionMetadata": { + "concurrencyLimit": 100, + "enabled": true + }, "resourceProviderAuthorizationRules": { "asyncOperationPollingRules": { "authorizationActions": [ @@ -21,22 +60,9 @@ ] } }, - "namespace": "microsoft.contoso", - "serviceName": "root", - "services": [ - { - "serviceName": "tags", - "status": "Inactive" - } - ], - "providerVersion": "2.0", - "providerType": "Internal, Hidden", - "crossTenantTokenValidation": "EnsureSecureValidation", "resourceTypes": [ { "name": "Operations", - "routingType": "ProxyOnly, Tenant", - "resourceValidation": "ReservedWords, ProfaneWords", "allowedUnauthorizedActions": [ "microsoft.contoso/operations/read" ], @@ -64,12 +90,12 @@ "notificationType": "SubscriptionNotification", "skipNotifications": "Disabled" } - ] + ], + "resourceValidation": "ReservedWords, ProfaneWords", + "routingType": "ProxyOnly, Tenant" }, { "name": "Locations", - "routingType": "ProxyOnly", - "resourceValidation": "ReservedWords, ProfaneWords", "endpoints": [ { "apiVersions": [ @@ -82,12 +108,12 @@ "timeout": "PT20S" } ], - "linkedOperationRules": [] + "linkedOperationRules": [], + "resourceValidation": "ReservedWords, ProfaneWords", + "routingType": "ProxyOnly" }, { "name": "Locations/OperationStatuses", - "routingType": "ProxyOnly, LocationBased", - "resourceValidation": "ReservedWords, ProfaneWords", "additionalOptions": "ProtectedAsyncOperationPolling", "endpoints": [ { @@ -101,45 +127,21 @@ "timeout": "PT20S" } ], - "linkedOperationRules": [] - } - ], - "management": { - "manifestOwners": [ - "manifestOwners-group" - ], - "authorizationOwners": [ - "authorizationOwners-group" - ], - "incidentRoutingService": "", - "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", - "resourceAccessPolicy": "NotSpecified" - }, - "capabilities": [ - { - "quotaId": "CSP_2015-05-01", - "effect": "Allow" - }, - { - "quotaId": "CSP_MG_2017-12-01", - "effect": "Allow" + "linkedOperationRules": [], + "resourceValidation": "ReservedWords, ProfaneWords", + "routingType": "ProxyOnly, LocationBased" } ], - "metadata": { - "onboardedVia": "ProviderHub" - }, - "globalNotificationEndpoints": [ + "serviceName": "root", + "services": [ { - "enabled": true, - "endpointUri": "https://notificationendpoint.com" + "serviceName": "tags", + "status": "Inactive" } - ], - "reRegisterSubscriptionMetadata": { - "enabled": true, - "concurrencyLimit": 100 - } + ] } } - } + }, + "operationId": "GenerateManifest", + "title": "GenerateManifest" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_CreateOrUpdate.json index 8f96485c83d9..ce509dfce56f 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_CreateOrUpdate.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_CreateOrUpdate.json @@ -1,81 +1,69 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", - "releaseName": "2020week10", "api-version": "2024-09-01", "properties": { "properties": { - "operationType": "Rollout", - "providerNamespace": "Microsoft.Contoso", - "frontloadLocation": "Israel Central", "copyFromLocation": "eastus", "environmentType": "Prod", - "serviceFeatureFlag": "DoNotCreate", - "includeResourceTypes": [ - "servers" - ], "excludeResourceTypes": [ "monitors" ], - "overrideManifestLevelFields": { - "resourceHydrationAccounts": [ - { - "subscriptionId": "e4eae963-2d15-43e6-a097-98bd75b33edd", - "accountName": "classichydrationprodsn01" - } - ] - }, + "frontloadLocation": "Israel Central", + "ignoreFields": [ + "apiversion" + ], + "includeResourceTypes": [ + "servers" + ], + "operationType": "Rollout", "overrideEndpointLevelFields": { - "enabled": true, + "apiVersion": "2024-04-01-preview", "apiVersions": [ "2024-04-01-preview" ], + "dstsConfiguration": { + "serviceDnsName": "messaging.azure-ppe.net", + "serviceName": "resourceprovider" + }, + "enabled": true, + "endpointType": "Production", "endpointUri": "https://resource-endpoint.com/", + "featuresRule": "Any", "locations": [ "East US" ], "requiredFeatures": [ "" ], - "featuresRule": "Any", - "timeout": "PT20S", - "endpointType": "Production", - "dstsConfiguration": { - "serviceName": "resourceprovider", - "serviceDnsName": "messaging.azure-ppe.net" - }, "skuLink": "http://endpointuri/westus/skus", - "apiVersion": "2024-04-01-preview", + "timeout": "PT20S", "zones": [ "zone1" ] }, - "ignoreFields": [ - "apiversion" - ] + "overrideManifestLevelFields": { + "resourceHydrationAccounts": [ + { + "accountName": "classichydrationprodsn01", + "subscriptionId": "e4eae963-2d15-43e6-a097-98bd75b33edd" + } + ] + }, + "providerNamespace": "Microsoft.Contoso", + "serviceFeatureFlag": "DoNotCreate" } - } + }, + "providerNamespace": "Microsoft.Contoso", + "releaseName": "2020week10", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { - "201": { - "description": "New region frontload release started successfully.", - "headers": { - "location": "https://management.azure.com/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/operationStauses/11111111-f7ef-471a-a2f4-d0ebbf494f77", - "retry-after": "5000" - }, + "200": { + "description": "New region frontload release updated successfully.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", "name": "Microsoft.Contoso/2020week10", "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", "properties": { "provisioningState": "RolloutInProgress", "specification": { @@ -84,11 +72,15 @@ "brazilus", "eastus2euap", "centraluseuap" - ], - "skipRegions": [ - "brazilus" ] }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, "lowTraffic": { "regions": [ "southeastasia" @@ -102,13 +94,6 @@ ], "waitDuration": "PT24H" }, - "highTraffic": { - "regions": [ - "australiasoutheast", - "otherhightraficregions" - ], - "waitDuration": "PT24H" - }, "restOfTheWorldGroupOne": { "regions": [ "koreacentral", @@ -132,33 +117,32 @@ "completedRegions": [ "brazilus", "eastus2euap", - "centraluseuap" + "centraluseuap", + "allcompletedregions" ], - "nextTrafficRegion": "LowTraffic", - "nextTrafficRegionScheduledTime": "2020-03-03T22:00:00Z", "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", "isCheckedIn": true, - "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM.", - "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7" + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." } } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } } }, - "200": { - "description": "New region frontload release updated successfully.", + "201": { + "description": "New region frontload release started successfully.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", "name": "Microsoft.Contoso/2020week10", "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", "properties": { "provisioningState": "RolloutInProgress", "specification": { @@ -167,8 +151,18 @@ "brazilus", "eastus2euap", "centraluseuap" + ], + "skipRegions": [ + "brazilus" ] }, + "highTraffic": { + "regions": [ + "australiasoutheast", + "otherhightraficregions" + ], + "waitDuration": "PT24H" + }, "lowTraffic": { "regions": [ "southeastasia" @@ -182,13 +176,6 @@ ], "waitDuration": "PT24H" }, - "highTraffic": { - "regions": [ - "australiasoutheast", - "otherhightraficregions" - ], - "waitDuration": "PT24H" - }, "restOfTheWorldGroupOne": { "regions": [ "koreacentral", @@ -212,17 +199,32 @@ "completedRegions": [ "brazilus", "eastus2euap", - "centraluseuap", - "allcompletedregions" + "centraluseuap" ], "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", "isCheckedIn": true, - "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM.", - "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7" - } + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + }, + "nextTrafficRegion": "LowTraffic", + "nextTrafficRegionScheduledTime": "2020-03-03T22:00:00Z" } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } + }, + "headers": { + "location": "https://management.azure.com/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/operationStauses/11111111-f7ef-471a-a2f4-d0ebbf494f77", + "retry-after": "5000" } } - } + }, + "operationId": "NewRegionFrontloadRelease_CreateOrUpdate", + "title": "NewRegionFrontloadRelease_CreateOrUpdate" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_GenerateManifest.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_GenerateManifest.json index 70ab8abde84f..43cdfe2cf3e1 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_GenerateManifest.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_GenerateManifest.json @@ -1,72 +1,111 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", - "releaseName": "2020week11", "api-version": "2024-09-01", "properties": { "properties": { - "operationType": "Rollout", - "providerNamespace": "Microsoft.Contoso", - "frontloadLocation": "Israel Central", "copyFromLocation": "eastus", "environmentType": "Prod", - "serviceFeatureFlag": "DoNotCreate", - "includeResourceTypes": [ - "servers" - ], "excludeResourceTypes": [ "monitors" ], - "overrideManifestLevelFields": { - "resourceHydrationAccounts": [ - { - "subscriptionId": "e4eae963-2d15-43e6-a097-98bd75b33edd", - "accountName": "classichydrationprodsn01" - } - ] - }, + "frontloadLocation": "Israel Central", + "ignoreFields": [ + "apiversion" + ], + "includeResourceTypes": [ + "servers" + ], + "operationType": "Rollout", "overrideEndpointLevelFields": { - "enabled": true, + "apiVersion": "2024-04-01-preview", "apiVersions": [ "2024-04-01-preview" ], + "dstsConfiguration": { + "serviceDnsName": "messaging.azure-ppe.net", + "serviceName": "resourceprovider" + }, + "enabled": true, + "endpointType": "Production", "endpointUri": "https://resource-endpoint.com/", + "featuresRule": "Any", "locations": [ "East US" ], "requiredFeatures": [ "" ], - "featuresRule": "Any", - "timeout": "PT20S", - "endpointType": "Production", - "dstsConfiguration": { - "serviceName": "resourceprovider", - "serviceDnsName": "messaging.azure-ppe.net" - }, "skuLink": "http://endpointuri/westus/skus", - "apiVersion": "2024-04-01-preview", + "timeout": "PT20S", "zones": [ "zone1" ] }, - "ignoreFields": [ - "apiversion" - ] + "overrideManifestLevelFields": { + "resourceHydrationAccounts": [ + { + "accountName": "classichydrationprodsn01", + "subscriptionId": "e4eae963-2d15-43e6-a097-98bd75b33edd" + } + ] + }, + "providerNamespace": "Microsoft.Contoso", + "serviceFeatureFlag": "DoNotCreate" } - } + }, + "providerNamespace": "Microsoft.Contoso", + "releaseName": "2020week11", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "New region frontload release resource.", "body": { + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "crossTenantTokenValidation": "EnsureSecureValidation", + "globalNotificationEndpoints": [ + { + "enabled": true, + "endpointUri": "https://notificationendpoint.com" + } + ], + "management": { + "authorizationOwners": [ + "authorizationOwners-group" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "manifestOwners-group" + ], + "resourceAccessPolicy": "NotSpecified" + }, + "metadata": { + "onboardedVia": "ProviderHub" + }, + "namespace": "microsoft.contoso", "providerAuthorizations": [ { "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" } ], + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "reRegisterSubscriptionMetadata": { + "concurrencyLimit": 100, + "enabled": true + }, "resourceProviderAuthorizationRules": { "asyncOperationPollingRules": { "authorizationActions": [ @@ -74,22 +113,9 @@ ] } }, - "namespace": "microsoft.contoso", - "serviceName": "root", - "services": [ - { - "serviceName": "tags", - "status": "Inactive" - } - ], - "providerVersion": "2.0", - "providerType": "Internal, Hidden", - "crossTenantTokenValidation": "EnsureSecureValidation", "resourceTypes": [ { "name": "Operations", - "routingType": "ProxyOnly, Tenant", - "resourceValidation": "ReservedWords, ProfaneWords", "allowedUnauthorizedActions": [ "microsoft.contoso/operations/read" ], @@ -111,12 +137,12 @@ "timeout": "PT20S" } ], - "linkedOperationRules": [] + "linkedOperationRules": [], + "resourceValidation": "ReservedWords, ProfaneWords", + "routingType": "ProxyOnly, Tenant" }, { "name": "Locations", - "routingType": "ProxyOnly", - "resourceValidation": "ReservedWords, ProfaneWords", "endpoints": [ { "apiVersions": [ @@ -129,12 +155,12 @@ "timeout": "PT20S" } ], - "linkedOperationRules": [] + "linkedOperationRules": [], + "resourceValidation": "ReservedWords, ProfaneWords", + "routingType": "ProxyOnly" }, { "name": "Locations/OperationStatuses", - "routingType": "ProxyOnly, LocationBased", - "resourceValidation": "ReservedWords, ProfaneWords", "additionalOptions": "ProtectedAsyncOperationPolling", "endpoints": [ { @@ -148,45 +174,21 @@ "timeout": "PT20S" } ], - "linkedOperationRules": [] - } - ], - "management": { - "manifestOwners": [ - "manifestOwners-group" - ], - "authorizationOwners": [ - "authorizationOwners-group" - ], - "incidentRoutingService": "", - "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", - "resourceAccessPolicy": "NotSpecified" - }, - "capabilities": [ - { - "quotaId": "CSP_2015-05-01", - "effect": "Allow" - }, - { - "quotaId": "CSP_MG_2017-12-01", - "effect": "Allow" + "linkedOperationRules": [], + "resourceValidation": "ReservedWords, ProfaneWords", + "routingType": "ProxyOnly, LocationBased" } ], - "metadata": { - "onboardedVia": "ProviderHub" - }, - "globalNotificationEndpoints": [ + "serviceName": "root", + "services": [ { - "enabled": true, - "endpointUri": "https://notificationendpoint.com" + "serviceName": "tags", + "status": "Inactive" } - ], - "reRegisterSubscriptionMetadata": { - "enabled": true, - "concurrencyLimit": 100 - } + ] } } - } + }, + "operationId": "NewRegionFrontloadRelease_GenerateManifest", + "title": "NewRegionFrontloadRelease_GenerateManifest" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_Get.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_Get.json index f05f3b43484d..1b7f9de0e4f9 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_Get.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_Get.json @@ -1,31 +1,20 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", "releaseName": "2020week10", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "New region frontload release resource.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", "name": "Microsoft.Contoso/2020week10", "type": "Microsoft.ProviderHub/providerRegistrations/defaultRollouts", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/defaultRollouts/2020week10", "properties": { "provisioningState": "Cancelled", "specification": { - "expeditedRollout": { - "enabled": true - }, "canary": { "regions": [ "eastus2euap", @@ -35,18 +24,8 @@ "brazilus" ] }, - "lowTraffic": { - "regions": [ - "southeastasia" - ], - "waitDuration": "PT24H" - }, - "mediumTraffic": { - "regions": [ - "uksouth", - "indiawest" - ], - "waitDuration": "PT24H" + "expeditedRollout": { + "enabled": true }, "highTraffic": { "regions": [ @@ -55,79 +34,74 @@ ], "waitDuration": "PT24H" }, - "restOfTheWorldGroupOne": { + "lowTraffic": { "regions": [ - "koreacentral", - "francecentral", - "australiacentral", - "westus", - "allotherregions" + "southeastasia" ], - "waitDuration": "PT4H" + "waitDuration": "PT24H" }, - "restOfTheWorldGroupTwo": { + "mediumTraffic": { "regions": [ - "germanynorth", - "norwayeast", - "allotherregions" + "uksouth", + "indiawest" ], - "waitDuration": "PT4H" + "waitDuration": "PT24H" }, "providerRegistration": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "name": "Microsoft.Contoso", "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "properties": { - "providerHubMetadata": { - "providerAuthentication": { - "allowedAudiences": [ - "https://management.core.windows.net/" - ] - } - }, - "provisioningState": "Succeeded", - "providerAuthorizations": [ + "capabilities": [ { - "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", - "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" } ], - "namespace": "microsoft.contoso", - "providerVersion": "2.0", - "providerType": "Internal, Hidden", "management": { - "manifestOwners": [ - "SPARTA-PlatformServiceAdministrator" - ], "authorizationOwners": [ "RPAAS-PlatformServiceAdministrator" ], + "incidentContactEmail": "helpme@contoso.com", "incidentRoutingService": "", "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], "resourceAccessPolicy": "NotSpecified" }, - "capabilities": [ - { - "quotaId": "CSP_2015-05-01", - "effect": "Allow" - }, + "metadata": null, + "namespace": "microsoft.contoso", + "providerAuthorizations": [ { - "quotaId": "CSP_MG_2017-12-01", - "effect": "Allow" + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" } ], - "metadata": null + "providerHubMetadata": { + "providerAuthentication": { + "allowedAudiences": [ + "https://management.core.windows.net/" + ] + } + }, + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded" } }, "resourceTypeRegistrations": [ { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "name": "Microsoft.Contoso/employees", "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "properties": { - "routingType": "Default", - "regionality": "Regional", + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, "endpoints": [ { "apiVersions": [ @@ -152,6 +126,9 @@ ] } ], + "provisioningState": "Succeeded", + "regionality": "Regional", + "routingType": "Default", "swaggerSpecifications": [ { "apiVersions": [ @@ -161,13 +138,28 @@ ], "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" } - ], - "enableAsyncOperation": false, - "provisioningState": "Succeeded", - "enableThirdPartyS2S": false + ] } } - ] + ], + "restOfTheWorldGroupOne": { + "regions": [ + "koreacentral", + "francecentral", + "australiacentral", + "westus", + "allotherregions" + ], + "waitDuration": "PT4H" + }, + "restOfTheWorldGroupTwo": { + "regions": [ + "germanynorth", + "norwayeast", + "allotherregions" + ], + "waitDuration": "PT4H" + } }, "status": { "completedRegions": [ @@ -182,15 +174,25 @@ "message": "Rollout was explicitly stopped by the user." } }, - "subscriptionReregistrationResult": "ConditionalUpdate", "manifestCheckinStatus": { + "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7", "isCheckedIn": true, - "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM.", - "commitId": "47317892d4edf22f08704f6b595105c4fd7a8db7" - } + "statusMessage": "Manifest is successfully merged. Use the Default/Custom rollout (http://aka.ms/rpaasrollout) to roll out the manifest in ARM." + }, + "subscriptionReregistrationResult": "ConditionalUpdate" } + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } } } - } + }, + "operationId": "NewRegionFrontloadRelease_Get", + "title": "NewRegionFrontloadRelease_Get" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_Stop.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_Stop.json index 2c597d15104f..7fda2f87e051 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_Stop.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NewRegionFrontloadRelease_Stop.json @@ -1,13 +1,15 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", "releaseName": "2020week10", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "The new region frontload release is stopped successfully." } - } + }, + "operationId": "NewRegionFrontloadRelease_Stop", + "title": "NewRegionFrontloadRelease_Stop" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_CreateOrUpdate.json index 23e09195ba62..0f6eae01532a 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_CreateOrUpdate.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_CreateOrUpdate.json @@ -1,17 +1,14 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", "notificationRegistrationName": "fooNotificationRegistration", "properties": { "properties": { - "notificationMode": "EventHub", - "messageScope": "RegisteredSubscriptions", "includedEvents": [ "*/write", "Microsoft.Contoso/employees/delete" ], + "messageScope": "RegisteredSubscriptions", "notificationEndpoints": [ { "locations": [ @@ -26,32 +23,26 @@ ], "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-northeurope/providers/Microsoft.EventHub/namespaces/europe-mgmtexpint/eventhubs/armlinkednotifications" } - ] + ], + "notificationMode": "EventHub" } - } + }, + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "Gets the notification registration details.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/notificationregistrations/fooNotificationRegistration", - "type": "Microsoft.ProviderHub/providerRegistrations/notificationregistrations", "name": "fooNotificationRegistration", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "type": "Microsoft.ProviderHub/providerRegistrations/notificationregistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/notificationregistrations/fooNotificationRegistration", "properties": { - "notificationMode": "EventHub", - "messageScope": "RegisteredSubscriptions", "includedEvents": [ "*/write", "Microsoft.Contoso/employees/delete" ], + "messageScope": "RegisteredSubscriptions", "notificationEndpoints": [ { "locations": [ @@ -66,9 +57,20 @@ ], "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-northeurope/providers/Microsoft.EventHub/namespaces/europe-mgmtexpint/eventhubs/armlinkednotifications" } - ] + ], + "notificationMode": "EventHub" + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } } } - } + }, + "operationId": "NotificationRegistrations_CreateOrUpdate", + "title": "NotificationRegistrations_CreateOrUpdate" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_Delete.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_Delete.json index ebada0f717a7..311904584a45 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_Delete.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_Delete.json @@ -1,9 +1,9 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", - "notificationRegistrationName": "fooNotificationRegistration" + "notificationRegistrationName": "fooNotificationRegistration", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -12,5 +12,7 @@ "204": { "description": "Resource does not exist." } - } + }, + "operationId": "NotificationRegistrations_Delete", + "title": "NotificationRegistrations_Delete" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_Get.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_Get.json index 149641eea3c7..83f4a098f7f6 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_Get.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_Get.json @@ -1,49 +1,51 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", - "notificationRegistrationName": "fooNotificationRegistration" + "notificationRegistrationName": "fooNotificationRegistration", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "Gets the notification registration details.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/notificationregistrations/fooNotificationRegistration", - "type": "Microsoft.ProviderHub/providerRegistrations/notificationregistrations", "name": "fooNotificationRegistration", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "type": "Microsoft.ProviderHub/providerRegistrations/notificationregistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/notificationregistrations/fooNotificationRegistration", "properties": { - "notificationMode": "EventHub", - "messageScope": "RegisteredSubscriptions", "includedEvents": [ "*/write", "Microsoft.Contoso/employees/delete" ], + "messageScope": "RegisteredSubscriptions", "notificationEndpoints": [ { - "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications", "locations": [ "", "East US" - ] + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications" }, { - "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-northeurope/providers/Microsoft.EventHub/namespaces/europe-mgmtexpint/eventhubs/armlinkednotifications", "locations": [ "North Europe" - ] + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-northeurope/providers/Microsoft.EventHub/namespaces/europe-mgmtexpint/eventhubs/armlinkednotifications" } - ] + ], + "notificationMode": "EventHub" + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } } } - } + }, + "operationId": "NotificationRegistrations_Get", + "title": "NotificationRegistrations_Get" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_ListByProviderRegistration.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_ListByProviderRegistration.json index 7339bac05de1..345d493bacba 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_ListByProviderRegistration.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/NotificationRegistrations_ListByProviderRegistration.json @@ -1,8 +1,8 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -10,71 +10,73 @@ "body": { "value": [ { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/notificationRegistration/2020week01", - "type": "Microsoft.ProviderHub/providerRegistrations/notificationRegistration", "name": "fooNotificationRegistration", - "systemData": { - "createdBy": "string", - "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", - "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "type": "Microsoft.ProviderHub/providerRegistrations/notificationRegistration", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/notificationRegistration/2020week01", "properties": { - "notificationMode": "EventHub", - "messageScope": "RegisteredSubscriptions", "includedEvents": [ "*/write", "Microsoft.Contoso/employees/delete" ], + "messageScope": "RegisteredSubscriptions", "notificationEndpoints": [ { - "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications", "locations": [ "", "East US" - ] + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications" }, { - "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-northeurope/providers/Microsoft.EventHub/namespaces/europe-mgmtexpint/eventhubs/armlinkednotifications", "locations": [ "North Europe" - ] + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-northeurope/providers/Microsoft.EventHub/namespaces/europe-mgmtexpint/eventhubs/armlinkednotifications" } - ] - } - }, - { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/notificationRegistration/2020week01", - "type": "Microsoft.ProviderHub/providerRegistrations/notificationRegistration", - "name": "barNotificationRegistration", + ], + "notificationMode": "EventHub" + }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" - }, + "lastModifiedByType": "User" + } + }, + { + "name": "barNotificationRegistration", + "type": "Microsoft.ProviderHub/providerRegistrations/notificationRegistration", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/notificationRegistration/2020week01", "properties": { - "notificationMode": "EventHub", - "messageScope": "RegisteredSubscriptions", "includedEvents": [ "*/delete" ], + "messageScope": "RegisteredSubscriptions", "notificationEndpoints": [ { - "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications", "locations": [ "" - ] + ], + "notificationDestination": "/subscriptions/ac6bcfb5-3dc1-491f-95a6-646b89bf3e88/resourceGroups/mgmtexp-eastus/providers/Microsoft.EventHub/namespaces/unitedstates-mgmtexpint/eventhubs/armlinkednotifications" } - ] + ], + "notificationMode": "EventHub" + }, + "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", + "createdBy": "string", + "createdByType": "User", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "User" } } ] } } - } + }, + "operationId": "NotificationRegistrations_ListByProviderRegistration", + "title": "NotificationRegistrations_ListByProviderRegistration" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_CreateOrUpdate.json index 574657650593..6e32575d70d7 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_CreateOrUpdate.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_CreateOrUpdate.json @@ -1,98 +1,100 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", - "api-version": "2024-09-01", "OperationsPutContent": { "properties": { "contents": [ { "name": "RP.69C09791/register/action", - "isDataAction": true, + "actionType": "Internal", "display": { "default": { - "provider": "RP.69C09791", - "resource": "Register", + "description": "Registers the subscription for the RP.69C09791 resource provider and enables the creation of RP.69C09791.", "operation": "Registers the RP.69C09791 Resource Provider", - "description": "Registers the subscription for the RP.69C09791 resource provider and enables the creation of RP.69C09791." + "provider": "RP.69C09791", + "resource": "Register" } }, - "actionType": "Internal" + "isDataAction": true }, { "name": "RP.69C09791/unregister/action", - "isDataAction": false, - "origin": "System", "display": { "default": { - "provider": "RP.69C09791", - "resource": "Unregister", + "description": "Unregisters the subscription for the RP.69C09791 resource provider and enables the creation of RP.69C09791.", "operation": "Unregisters the RP.69C09791 Resource Provider", - "description": "Unregisters the subscription for the RP.69C09791 resource provider and enables the creation of RP.69C09791." + "provider": "RP.69C09791", + "resource": "Unregister" }, "en": { - "provider": "RP.69C09791", - "resource": "2e1803d4-417f-492c-b305-148da38b211e", + "description": "ece249f5-b5b9-492d-ac68-b4e1be1677bc", "operation": "d31623d6-8765-42fb-aca2-5a58303e52dd", - "description": "ece249f5-b5b9-492d-ac68-b4e1be1677bc" + "provider": "RP.69C09791", + "resource": "2e1803d4-417f-492c-b305-148da38b211e" } - } + }, + "isDataAction": false, + "origin": "System" } ] } - } + }, + "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/operations/default", - "type": "Microsoft.ProviderHub/providerRegistrations/operations", "name": "operationTest", + "type": "Microsoft.ProviderHub/providerRegistrations/operations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/operations/default", "properties": { "contents": [ { "name": "RP.69C09791/register/action", - "isDataAction": true, + "actionType": "Internal", "display": { "default": { - "provider": "RP.69C09791", - "resource": "Register", + "description": "Registers the subscription for the RP.69C09791 resource provider and enables the creation of RP.69C09791.", "operation": "Registers the RP.69C09791 Resource Provider", - "description": "Registers the subscription for the RP.69C09791 resource provider and enables the creation of RP.69C09791." + "provider": "RP.69C09791", + "resource": "Register" } }, - "actionType": "Internal" + "isDataAction": true }, { "name": "RP.69C09791/unregister/action", - "isDataAction": false, - "origin": "System", "display": { "default": { - "provider": "RP.69C09791", - "resource": "Unregister", + "description": "Unregisters the subscription for the RP.69C09791 resource provider and enables the creation of RP.69C09791.", "operation": "Unregisters the RP.69C09791 Resource Provider", - "description": "Unregisters the subscription for the RP.69C09791 resource provider and enables the creation of RP.69C09791." + "provider": "RP.69C09791", + "resource": "Unregister" }, "en": { - "provider": "RP.69C09791", - "resource": "2e1803d4-417f-492c-b305-148da38b211e", + "description": "ece249f5-b5b9-492d-ac68-b4e1be1677bc", "operation": "d31623d6-8765-42fb-aca2-5a58303e52dd", - "description": "ece249f5-b5b9-492d-ac68-b4e1be1677bc" + "provider": "RP.69C09791", + "resource": "2e1803d4-417f-492c-b305-148da38b211e" } - } + }, + "isDataAction": false, + "origin": "System" } ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "Operations_CreateOrUpdate", + "title": "Operations_CreateOrUpdate" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_Delete.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_Delete.json index 817ac1d66e14..51e081e01fac 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_Delete.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_Delete.json @@ -1,8 +1,8 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -11,5 +11,7 @@ "204": { "description": "Resource does not exist." } - } + }, + "operationId": "Operations_Delete", + "title": "Operations_Delete" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_List.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_List.json index ed977506b1eb..5d2e0cc97bea 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_List.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_List.json @@ -9,76 +9,78 @@ "value": [ { "name": "Microsoft.ProviderHub/register/action", - "isDataAction": false, "display": { - "provider": "Microsoft ProviderHub", - "resource": "register", + "description": "Registers the specified subscription with Microsoft.ProviderHub resource provider", "operation": "Register for Microsoft.ProviderHub", - "description": "Registers the specified subscription with Microsoft.ProviderHub resource provider" - } + "provider": "Microsoft ProviderHub", + "resource": "register" + }, + "isDataAction": false }, { "name": "Microsoft.ProviderHub/defaultRollouts/write", - "isDataAction": false, "display": { - "provider": "Microsoft ProviderHub", - "resource": "defaultRollouts", + "description": "Creates or Updates any rollout", "operation": "Create or Update rollout", - "description": "Creates or Updates any rollout" - } + "provider": "Microsoft ProviderHub", + "resource": "defaultRollouts" + }, + "isDataAction": false }, { "name": "Microsoft.ProviderHub/defaultRollouts/read", - "isDataAction": false, "display": { - "provider": "Microsoft ProviderHub", - "resource": "defaultRollouts", + "description": "Reads any rollout", "operation": "Read rollout", - "description": "Reads any rollout" - } + "provider": "Microsoft ProviderHub", + "resource": "defaultRollouts" + }, + "isDataAction": false }, { "name": "Microsoft.ProviderHub/defaultRollouts/delete", - "isDataAction": false, "display": { - "provider": "Microsoft ProviderHub", - "resource": "defaultRollouts", + "description": "Deletes any rollout", "operation": "Delete rollout", - "description": "Deletes any rollout" - } + "provider": "Microsoft ProviderHub", + "resource": "defaultRollouts" + }, + "isDataAction": false }, { "name": "Microsoft.ProviderHub/defaultRollouts/stop/action", - "isDataAction": false, "display": { - "provider": "Microsoft ProviderHub", - "resource": "defaultRollouts", + "description": "Deletes any rollout", "operation": "Delete rollout", - "description": "Deletes any rollout" - } + "provider": "Microsoft ProviderHub", + "resource": "defaultRollouts" + }, + "isDataAction": false }, { "name": "Microsoft.ProviderHub/customRollouts/write", - "isDataAction": false, "display": { - "provider": "Microsoft ProviderHub", - "resource": "customRollouts", + "description": "Creates or Updates any rollout", "operation": "Create or Update rollout", - "description": "Creates or Updates any rollout" - } + "provider": "Microsoft ProviderHub", + "resource": "customRollouts" + }, + "isDataAction": false }, { "name": "Microsoft.ProviderHub/customRollouts/read", - "isDataAction": false, "display": { - "provider": "Microsoft ProviderHub", - "resource": "customRollouts", + "description": "Reads any rollout", "operation": "Read rollout", - "description": "Reads any rollout" - } + "provider": "Microsoft ProviderHub", + "resource": "customRollouts" + }, + "isDataAction": false } ] } } - } + }, + "operationId": "Operations_List", + "title": "Operations_List" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_ListByProviderRegistration.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_ListByProviderRegistration.json index db208d3b9c05..2dc6beb86fdb 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_ListByProviderRegistration.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Operations_ListByProviderRegistration.json @@ -1,8 +1,8 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -10,47 +10,49 @@ "body": [ { "name": "Microsoft.Contoso/Employees/Read", - "isDataAction": false, "display": { - "provider": "Microsoft.Contoso", - "resource": "Employees", + "description": "Read employees", "operation": "Gets/List employee resources", - "description": "Read employees" - } + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": false }, { "name": "Microsoft.Contoso/Employees/Write", - "isDataAction": false, "display": { - "provider": "Microsoft.Contoso", - "resource": "Employees", + "description": "Writes employees", "operation": "Create/update employee resources", - "description": "Writes employees" - } + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": false }, { "name": "Microsoft.Contoso/Employees/Delete", - "isDataAction": false, - "origin": "User", "display": { - "provider": "Microsoft.Contoso", - "resource": "Employees", + "description": "Deletes employees", "operation": "Deletes employee resource", - "description": "Deletes employees" - } + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": false, + "origin": "User" }, { "name": "Microsoft.Contoso/Employees/Action", - "isDataAction": true, - "origin": "System", "display": { - "provider": "Microsoft.Contoso", - "resource": "Employees", + "description": "Writes employees", "operation": "Create/update employee resources", - "description": "Writes employees" - } + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": true, + "origin": "System" } ] } - } + }, + "operationId": "Operations_ListByProviderRegistration", + "title": "Operations_ListByProviderRegistration" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Create.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Create.json index ecf70329c1b0..14a893458b48 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Create.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Create.json @@ -1,53 +1,55 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "resourceGroupName": "default", - "providerMonitorSettingName": "ContosoMonitorSetting", "api-version": "2024-09-01", "properties": { "location": "eastus" - } + }, + "providerMonitorSettingName": "ContosoMonitorSetting", + "resourceGroupName": "default", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "Successfully updated the provider monitor setting.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", "name": "ContosoMonitorSetting", "type": "Microsoft.ProviderHub/providerMonitorSettings", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", "location": "eastus", "properties": { "provisioningState": "Succeeded" }, "systemData": { + "createdAt": "2024-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2024-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2024-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2024-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } }, "201": { "description": "Successfully created the provider monitor setting.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", "name": "ContosoMonitorSetting", "type": "Microsoft.ProviderHub/providerMonitorSettings", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", "location": "eastus", "properties": { "provisioningState": "Succeeded" }, "systemData": { + "createdAt": "2024-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2024-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2024-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2024-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "ProviderMonitorSettings_Create", + "title": "ProviderMonitorSettings_Create" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Delete.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Delete.json index 40a62cc5c55b..2dd5e9aabd06 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Delete.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Delete.json @@ -1,9 +1,9 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "resourceGroupName": "default", + "api-version": "2024-09-01", "providerMonitorSettingName": "ContosoMonitorSetting", - "api-version": "2024-09-01" + "resourceGroupName": "default", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -12,5 +12,7 @@ "204": { "description": "Resource does not exist." } - } + }, + "operationId": "ProviderMonitorSettings_Delete", + "title": "ProviderMonitorSettings_Delete" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Get.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Get.json index 1dd9caa5d8fd..5a0f08fad314 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Get.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Get.json @@ -1,30 +1,32 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "resourceGroupName": "default", + "api-version": "2024-09-01", "providerMonitorSettingName": "ContosoMonitorSetting", - "api-version": "2024-09-01" + "resourceGroupName": "default", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", "name": "ContosoMonitorSetting", "type": "Microsoft.ProviderHub/providerMonitorSettings", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", "location": "eastus", "properties": { "provisioningState": "Succeeded" }, "systemData": { + "createdAt": "2024-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2024-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2024-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2024-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "ProviderMonitorSettings_Get", + "title": "ProviderMonitorSettings_Get" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_ListByResourceGroup.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_ListByResourceGroup.json index 42773a28beee..035fdb733c6c 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_ListByResourceGroup.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_ListByResourceGroup.json @@ -1,32 +1,34 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "resourceGroupName": "default", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", "name": "ContosoMonitorSetting", "type": "Microsoft.ProviderHub/providerMonitorSettings", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", "location": "eastus", "properties": { "provisioningState": "Succeeded" }, "systemData": { + "createdAt": "2024-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2024-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2024-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2024-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } ] } } - } + }, + "operationId": "ProviderMonitorSettings_ListByResourceGroup", + "title": "ProviderMonitorSettings_ListByResourceGroup" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_ListBySubscription.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_ListBySubscription.json index acdf5af10906..4c47f7e4292f 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_ListBySubscription.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_ListBySubscription.json @@ -1,31 +1,33 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "api-version": "2024-09-01" + "api-version": "2024-09-01", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", "name": "ContosoMonitorSetting", "type": "Microsoft.ProviderHub/providerMonitorSettings", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", "location": "eastus", "properties": { "provisioningState": "Succeeded" }, "systemData": { + "createdAt": "2024-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2024-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2024-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2024-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } ] } } - } + }, + "operationId": "ProviderMonitorSettings_ListBySubscription", + "title": "ProviderMonitorSettings_ListBySubscription" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Update.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Update.json index 24adbbf2209e..55d3959b6ead 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Update.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderMonitorSettings_Update.json @@ -1,30 +1,32 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "resourceGroupName": "default", + "api-version": "2024-09-01", "providerMonitorSettingName": "ContosoMonitorSetting", - "api-version": "2024-09-01" + "resourceGroupName": "default", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "Successfully updated the provider monitor setting.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", "name": "ContosoMonitorSetting", "type": "Microsoft.ProviderHub/providerMonitorSettings", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/resourceGroups/default/providers/Microsoft.ProviderHub/providerMonitorSettings/ContosoMonitorSetting", "location": "eastus", "properties": { "provisioningState": "Succeeded" }, "systemData": { + "createdAt": "2024-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2024-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2024-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2024-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "ProviderMonitorSettings_Update", + "title": "ProviderMonitorSettings_Update" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_CreateOrUpdate.json index 435d0fc102c9..8ec06b9999a9 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_CreateOrUpdate.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_CreateOrUpdate.json @@ -1,286 +1,288 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", "properties": { "properties": { - "providerType": "Internal", - "providerVersion": "2.0", - "serviceName": "root", - "services": [ + "capabilities": [ { - "serviceName": "tags", - "status": "Inactive" + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" } ], "crossTenantTokenValidation": "EnsureSecureValidation", "management": { - "incidentRoutingService": "Contoso Resource Provider", - "incidentRoutingTeam": "Contoso Triage", - "incidentContactEmail": "helpme@contoso.com", - "serviceTreeInfos": [ - { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" - } - ], - "expeditedRolloutSubmitters": [ - "SPARTA-PlatformServiceOperator" + "canaryManifestOwners": [ + "SPARTA-PlatformServiceAdmin" ], + "errorResponseMessageOptions": { + "serverFailureResponseMessageType": "OutageReporting" + }, "expeditedRolloutMetadata": { "enabled": false, "expeditedRolloutIntent": "Hotfix" }, - "errorResponseMessageOptions": { - "serverFailureResponseMessageType": "OutageReporting" - }, - "canaryManifestOwners": [ - "SPARTA-PlatformServiceAdmin" + "expeditedRolloutSubmitters": [ + "SPARTA-PlatformServiceOperator" ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "Contoso Resource Provider", + "incidentRoutingTeam": "Contoso Triage", "pcCode": "P1234", - "profitCenterProgramId": "1234" + "profitCenterProgramId": "1234", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] }, - "capabilities": [ - { - "quotaId": "CSP_2015-05-01", - "effect": "Allow" - }, + "providerType": "Internal", + "providerVersion": "2.0", + "serviceName": "root", + "services": [ { - "quotaId": "CSP_MG_2017-12-01", - "effect": "Allow" + "serviceName": "tags", + "status": "Inactive" } ] } - } + }, + "providerNamespace": "Microsoft.Contoso", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "name": "Microsoft.Contoso", "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "properties": { - "namespace": "Microsoft.Contoso", - "providerAuthorizations": [ + "capabilities": [ { - "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", - "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + "effect": "Allow", + "quotaId": "CSP_2015-05-01" }, { - "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k2", - "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b3", - "managedByAuthorization": { - "managedByResourceRoleDefinitionId": "9e3af657-a8ff-583c-a75c-2fe7c4bcb635", - "allowManagedByInheritance": true, - "additionalAuthorizations": [ - { - "applicationId": "3e5aaca6-6470-4be4-8a17-24ab9519414b", - "roleDefinitionId": "1e86f807-6ec0-40b3-8b5f-686b7e43a0a2" - } - ] - }, - "allowedThirdPartyExtensions": [ - { - "name": "name" - } - ], - "groupingTag": "GroupingTag" + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" } ], - "resourceProviderAuthorizationRules": { - "asyncOperationPollingRules": { - "authorizationActions": [ - "Microsoft.Contoso/classicAdministrators/operationStatuses/read" - ] - } - }, + "crossTenantTokenValidation": "EnsureSecureValidation", "management": { - "manifestOwners": [ - "manifestOwners-group" - ], "authorizationOwners": [ "authorizationOwners-group" ], - "incidentRoutingService": "", - "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", - "serviceTreeInfos": [ - { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" - } - ], - "resourceAccessPolicy": "NotSpecified", - "expeditedRolloutSubmitters": [ - "SPARTA-PlatformServiceOperator" + "canaryManifestOwners": [ + "SPARTA-PlatformServiceAdmin" ], + "errorResponseMessageOptions": { + "serverFailureResponseMessageType": "OutageReporting" + }, "expeditedRolloutMetadata": { "enabled": false, "expeditedRolloutIntent": "Hotfix" }, - "errorResponseMessageOptions": { - "serverFailureResponseMessageType": "OutageReporting" - }, - "canaryManifestOwners": [ - "SPARTA-PlatformServiceAdmin" + "expeditedRolloutSubmitters": [ + "SPARTA-PlatformServiceOperator" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "manifestOwners-group" ], "pcCode": "P1234", - "profitCenterProgramId": "1234" + "profitCenterProgramId": "1234", + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] }, - "capabilities": [ + "metadata": { + "onboardedVia": "ProviderHub" + }, + "namespace": "Microsoft.Contoso", + "providerAuthorizations": [ { - "quotaId": "CSP_2015-05-01", - "effect": "Allow" + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" }, { - "quotaId": "CSP_MG_2017-12-01", - "effect": "Allow" + "allowedThirdPartyExtensions": [ + { + "name": "name" + } + ], + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k2", + "groupingTag": "GroupingTag", + "managedByAuthorization": { + "additionalAuthorizations": [ + { + "applicationId": "3e5aaca6-6470-4be4-8a17-24ab9519414b", + "roleDefinitionId": "1e86f807-6ec0-40b3-8b5f-686b7e43a0a2" + } + ], + "allowManagedByInheritance": true, + "managedByResourceRoleDefinitionId": "9e3af657-a8ff-583c-a75c-2fe7c4bcb635" + }, + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b3" } ], - "metadata": { - "onboardedVia": "ProviderHub" + "providerHubMetadata": { + "directRpRoleDefinitionId": "1x86y807-6zx0-40y3-8z5x-686y7z43x0y2" }, - "providerVersion": "2.0", "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded", + "resourceProviderAuthorizationRules": { + "asyncOperationPollingRules": { + "authorizationActions": [ + "Microsoft.Contoso/classicAdministrators/operationStatuses/read" + ] + } + }, "serviceName": "root", "services": [ { "serviceName": "tags", "status": "Inactive" } - ], - "crossTenantTokenValidation": "EnsureSecureValidation", - "provisioningState": "Succeeded", - "providerHubMetadata": { - "directRpRoleDefinitionId": "1x86y807-6zx0-40y3-8z5x-686y7z43x0y2" - } + ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } }, "201": { "description": "Successfully created the provider registration.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "name": "Microsoft.Contoso", "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "properties": { - "namespace": "Microsoft.Contoso", - "providerAuthorizations": [ + "capabilities": [ { - "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", - "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + "effect": "Allow", + "quotaId": "CSP_2015-05-01" }, { - "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k2", - "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b3", - "managedByAuthorization": { - "managedByResourceRoleDefinitionId": "9e3af657-a8ff-583c-a75c-2fe7c4bcb635", - "allowManagedByInheritance": true, - "additionalAuthorizations": [ - { - "applicationId": "3e5aaca6-6470-4be4-8a17-24ab9519414b", - "roleDefinitionId": "1e86f807-6ec0-40b3-8b5f-686b7e43a0a2" - } - ] - }, - "allowedThirdPartyExtensions": [ - { - "name": "name" - } - ], - "groupingTag": "GroupingTag" + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" } ], - "resourceProviderAuthorizationRules": { - "asyncOperationPollingRules": { - "authorizationActions": [ - "Microsoft.Contoso/classicAdministrators/operationStatuses/read" - ] - } - }, + "crossTenantTokenValidation": "EnsureSecureValidation", "management": { - "manifestOwners": [ - "manifestOwners-group" - ], "authorizationOwners": [ "authorizationOwners-group" ], - "incidentRoutingService": "", - "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", - "serviceTreeInfos": [ - { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" - } - ], - "resourceAccessPolicy": "NotSpecified", - "expeditedRolloutSubmitters": [ - "SPARTA-PlatformServiceOperator" + "canaryManifestOwners": [ + "SPARTA-PlatformServiceAdmin" ], + "errorResponseMessageOptions": { + "serverFailureResponseMessageType": "OutageReporting" + }, "expeditedRolloutMetadata": { "enabled": false, "expeditedRolloutIntent": "Hotfix" }, - "errorResponseMessageOptions": { - "serverFailureResponseMessageType": "OutageReporting" - }, - "canaryManifestOwners": [ - "SPARTA-PlatformServiceAdmin" + "expeditedRolloutSubmitters": [ + "SPARTA-PlatformServiceOperator" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "manifestOwners-group" ], "pcCode": "P1234", - "profitCenterProgramId": "1234" + "profitCenterProgramId": "1234", + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] }, - "capabilities": [ + "metadata": { + "onboardedVia": "ProviderHub" + }, + "namespace": "Microsoft.Contoso", + "providerAuthorizations": [ { - "quotaId": "CSP_2015-05-01", - "effect": "Allow" + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" }, { - "quotaId": "CSP_MG_2017-12-01", - "effect": "Allow" + "allowedThirdPartyExtensions": [ + { + "name": "name" + } + ], + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k2", + "groupingTag": "GroupingTag", + "managedByAuthorization": { + "additionalAuthorizations": [ + { + "applicationId": "3e5aaca6-6470-4be4-8a17-24ab9519414b", + "roleDefinitionId": "1e86f807-6ec0-40b3-8b5f-686b7e43a0a2" + } + ], + "allowManagedByInheritance": true, + "managedByResourceRoleDefinitionId": "9e3af657-a8ff-583c-a75c-2fe7c4bcb635" + }, + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b3" } ], - "metadata": { - "onboardedVia": "ProviderHub" + "providerHubMetadata": { + "directRpRoleDefinitionId": "1x86y807-6zx0-40y3-8z5x-686y7z43x0y2" }, - "providerVersion": "2.0", "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded", + "resourceProviderAuthorizationRules": { + "asyncOperationPollingRules": { + "authorizationActions": [ + "Microsoft.Contoso/classicAdministrators/operationStatuses/read" + ] + } + }, "serviceName": "root", "services": [ { "serviceName": "tags", "status": "Inactive" } - ], - "crossTenantTokenValidation": "EnsureSecureValidation", - "provisioningState": "Succeeded", - "providerHubMetadata": { - "directRpRoleDefinitionId": "1x86y807-6zx0-40y3-8z5x-686y7z43x0y2" - } + ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "ProviderRegistrations_CreateOrUpdate", + "title": "ProviderRegistrations_CreateOrUpdate" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_Delete.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_Delete.json index 19647be53b14..8c5a2f785f55 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_Delete.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_Delete.json @@ -1,8 +1,8 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -11,5 +11,7 @@ "204": { "description": "Resource does not exist." } - } + }, + "operationId": "ProviderRegistrations_Delete", + "title": "ProviderRegistrations_Delete" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_GenerateOperations.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_GenerateOperations.json index e64eeda49d25..6e0dbea90c4e 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_GenerateOperations.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_GenerateOperations.json @@ -1,8 +1,8 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -10,47 +10,49 @@ "body": [ { "name": "Microsoft.Contoso/Employees/Read", - "isDataAction": false, "display": { - "provider": "Microsoft.Contoso", - "resource": "Employees", + "description": "Read employees", "operation": "Gets/List employee resources", - "description": "Read employees" - } + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": false }, { "name": "Microsoft.Contoso/Employees/Write", - "isDataAction": false, "display": { - "provider": "Microsoft.Contoso", - "resource": "Employees", + "description": "Writes employees", "operation": "Create/update employee resources", - "description": "Writes employees" - } + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": false }, { "name": "Microsoft.Contoso/Employees/Delete", - "isDataAction": false, - "origin": "User", "display": { - "provider": "Microsoft.Contoso", - "resource": "Employees", + "description": "Deletes employees", "operation": "Deletes employee resource", - "description": "Deletes employees" - } + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": false, + "origin": "User" }, { "name": "Microsoft.Contoso/Employees/Action", - "isDataAction": true, - "origin": "System", "display": { - "provider": "Microsoft.Contoso", - "resource": "Employees", + "description": "Writes employees", "operation": "Create/update employee resources", - "description": "Writes employees" - } + "provider": "Microsoft.Contoso", + "resource": "Employees" + }, + "isDataAction": true, + "origin": "System" } ] } - } + }, + "operationId": "ProviderRegistrations_GenerateOperations", + "title": "ProviderRegistrations_GenerateOperations" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_Get.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_Get.json index 324483273eab..06c937a0180b 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_Get.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_Get.json @@ -1,32 +1,68 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "name": "Microsoft.Contoso", "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "properties": { - "providerHubMetadata": { - "providerAuthentication": { - "allowedAudiences": [ - "https://management.core.windows.net/" - ] + "capabilities": [ + { + "effect": "Allow", + "quotaId": "CSP_2015-05-01" }, - "directRpRoleDefinitionId": "1x86y807-6zx0-40y3-8z5x-686y7z43x0y2" + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" + } + ], + "crossTenantTokenValidation": "EnsureSecureValidation", + "management": { + "authorizationOwners": [ + "RPAAS-PlatformServiceAdministrator" + ], + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "pcCode": "P1234", + "profitCenterProgramId": "1234", + "resourceAccessPolicy": "NotSpecified", + "serviceTreeInfos": [ + { + "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" + } + ] }, - "provisioningState": "Succeeded", + "metadata": null, + "namespace": "microsoft.contoso", "providerAuthorizations": [ { "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" } ], + "providerHubMetadata": { + "directRpRoleDefinitionId": "1x86y807-6zx0-40y3-8z5x-686y7z43x0y2", + "providerAuthentication": { + "allowedAudiences": [ + "https://management.core.windows.net/" + ] + } + }, + "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded", "resourceProviderAuthorizationRules": { "asyncOperationPollingRules": { "authorizationActions": [ @@ -34,59 +70,25 @@ ] } }, - "namespace": "microsoft.contoso", - "providerVersion": "2.0", - "providerType": "Internal, Hidden", "serviceName": "root", "services": [ { "serviceName": "tags", "status": "Inactive" } - ], - "crossTenantTokenValidation": "EnsureSecureValidation", - "management": { - "manifestOwners": [ - "SPARTA-PlatformServiceAdministrator" - ], - "authorizationOwners": [ - "RPAAS-PlatformServiceAdministrator" - ], - "incidentRoutingService": "", - "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", - "serviceTreeInfos": [ - { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" - } - ], - "resourceAccessPolicy": "NotSpecified", - "pcCode": "P1234", - "profitCenterProgramId": "1234" - }, - "capabilities": [ - { - "quotaId": "CSP_2015-05-01", - "effect": "Allow" - }, - { - "quotaId": "CSP_MG_2017-12-01", - "effect": "Allow" - } - ], - "metadata": null + ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "ProviderRegistrations_Get", + "title": "ProviderRegistrations_Get" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_List.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_List.json index 5ce6b1db1d23..59bd63227584 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_List.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ProviderRegistrations_List.json @@ -1,94 +1,96 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "name": "Microsoft.Contoso", "type": "Microsoft.ProviderHub/providerRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso", "properties": { - "namespace": "microsoft.contoso", - "providerAuthorizations": [ + "capabilities": [ { - "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", - "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + "effect": "Allow", + "quotaId": "CSP_2015-05-01" + }, + { + "effect": "Allow", + "quotaId": "CSP_MG_2017-12-01" } ], - "resourceProviderAuthorizationRules": { - "asyncOperationPollingRules": { - "authorizationActions": [ - "Microsoft.Contoso/classicAdministrators/operationStatuses/read" - ] - } - }, - "providerHubMetadata": { - "providerAuthentication": { - "allowedAudiences": [ - "https://management.core.windows.net/" - ] - }, - "directRpRoleDefinitionId": "1x86y807-6zx0-40y3-8z5x-686y7z43x0y2" - }, "crossTenantTokenValidation": "EnsureSecureValidation", "management": { - "manifestOwners": [ - "manifestOwners-group" - ], "authorizationOwners": [ "authorizationOwners-group" ], + "incidentContactEmail": "helpme@contoso.com", "incidentRoutingService": "", "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", + "manifestOwners": [ + "manifestOwners-group" + ], + "pcCode": "P1234", + "profitCenterProgramId": "1234", + "resourceAccessPolicy": "NotSpecified", "serviceTreeInfos": [ { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" } - ], - "resourceAccessPolicy": "NotSpecified", - "pcCode": "P1234", - "profitCenterProgramId": "1234" + ] + }, + "namespace": "microsoft.contoso", + "providerAuthorizations": [ + { + "applicationId": "1a3b5c7d-8e9f-10g1-1h12-i13j14k1", + "roleDefinitionId": "123456bf-gkur-2098-b890-98da392a00b2" + } + ], + "providerHubMetadata": { + "directRpRoleDefinitionId": "1x86y807-6zx0-40y3-8z5x-686y7z43x0y2", + "providerAuthentication": { + "allowedAudiences": [ + "https://management.core.windows.net/" + ] + } }, "providerType": "Internal, Hidden", + "providerVersion": "2.0", + "provisioningState": "Succeeded", + "resourceProviderAuthorizationRules": { + "asyncOperationPollingRules": { + "authorizationActions": [ + "Microsoft.Contoso/classicAdministrators/operationStatuses/read" + ] + } + }, "serviceName": "root", "services": [ { "serviceName": "tags", "status": "Inactive" } - ], - "providerVersion": "2.0", - "capabilities": [ - { - "quotaId": "CSP_2015-05-01", - "effect": "Allow" - }, - { - "quotaId": "CSP_MG_2017-12-01", - "effect": "Allow" - } - ], - "provisioningState": "Succeeded" + ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } ] } } - } + }, + "operationId": "ProviderRegistrations_List", + "title": "ProviderRegistrations_List" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceActions_DeleteResources.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceActions_DeleteResources.json index a520b3445592..9383191adf0c 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceActions_DeleteResources.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceActions_DeleteResources.json @@ -1,18 +1,18 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", - "resourceActionName": "default", "api-version": "2024-09-01", "properties": { "resources": [ { - "resourceId": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.Contoso/employee/test", + "homeTenantId": "11111111-f7ef-471a-a2f4-d0ebbf494f77", "location": "southeastasia", - "homeTenantId": "11111111-f7ef-471a-a2f4-d0ebbf494f77" + "resourceId": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.Contoso/employee/test" } ] - } + }, + "providerNamespace": "Microsoft.Contoso", + "resourceActionName": "default", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "202": { @@ -22,5 +22,7 @@ "retry-after": "5000" } } - } + }, + "operationId": "ResourceActions_DeleteResources", + "title": "ResourceActions_DeleteResources" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_CreateOrUpdate.json index d60047cf042a..549b0fca9d75 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_CreateOrUpdate.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_CreateOrUpdate.json @@ -1,13 +1,8 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", - "resourceType": "employees", "api-version": "2024-09-01", "properties": { "properties": { - "routingType": "Default", - "regionality": "Regional", "crossTenantTokenValidation": "EnsureSecureValidation", "endpoints": [ { @@ -24,47 +19,24 @@ ] } ], - "resourceConcurrencyControlOptions": { - "put": { - "policy": "SynchronizeBeginExtension" - }, - "patch": { - "policy": "SynchronizeBeginExtension" - }, - "post": { - "policy": "SynchronizeBeginExtension" - } - }, - "swaggerSpecifications": [ - { - "apiVersions": [ - "2020-06-01-preview" - ], - "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" - } - ], - "resourceGraphConfiguration": { - "enabled": true, - "apiVersion": "2019-01-01" - }, "management": { - "manifestOwners": [ - "SPARTA-PlatformServiceAdministrator" - ], "authorizationOwners": [ "RPAAS-PlatformServiceAdministrator" ], + "incidentContactEmail": "helpme@contoso.com", "incidentRoutingService": "", "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "resourceAccessPolicy": "NotSpecified", "serviceTreeInfos": [ { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" } - ], - "resourceAccessPolicy": "NotSpecified" + ] }, "metadata": {}, "notifications": [ @@ -78,23 +50,51 @@ "allowNoncompliantCollectionResponse": true } }, + "regionality": "Regional", "requestHeaderOptions": { "optOutHeaders": "SystemDataCreatedByLastModifiedBy" - } + }, + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + }, + "put": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true + }, + "routingType": "Default", + "swaggerSpecifications": [ + { + "apiVersions": [ + "2020-06-01-preview" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ] } - } + }, + "providerNamespace": "Microsoft.Contoso", + "resourceType": "employees", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "Successfully updated the resource type.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "name": "Microsoft.Contoso/employees", "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "properties": { - "routingType": "Default", - "regionality": "Regional", "crossTenantTokenValidation": "EnsureSecureValidation", + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, "endpoints": [ { "apiVersions": [ @@ -119,50 +119,21 @@ ] } ], - "swaggerSpecifications": [ - { - "apiVersions": [ - "2018-11-01-preview", - "2020-01-01-preview", - "2019-01-01" - ], - "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" - } - ], - "enableAsyncOperation": false, - "provisioningState": "Succeeded", - "enableThirdPartyS2S": false, - "resourceDeletionPolicy": "CascadeDeleteProxyOnlyChildren", - "resourceConcurrencyControlOptions": { - "put": { - "policy": "SynchronizeBeginExtension" - }, - "patch": { - "policy": "SynchronizeBeginExtension" - }, - "post": { - "policy": "SynchronizeBeginExtension" - } - }, - "resourceGraphConfiguration": { - "enabled": true, - "apiVersion": "2019-01-01" - }, "management": { + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", "manifestOwners": [ "SPARTA-PlatformServiceAdministrator" ], - "incidentRoutingService": "", - "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", + "resourceAccessPolicy": "NotSpecified", "serviceTreeInfos": [ { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" } - ], - "resourceAccessPolicy": "NotSpecified" + ] }, "metadata": {}, "notifications": [ @@ -176,30 +147,59 @@ "allowNoncompliantCollectionResponse": true } }, + "provisioningState": "Succeeded", + "regionality": "Regional", "requestHeaderOptions": { "optOutHeaders": "SystemDataCreatedByLastModifiedBy" - } + }, + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + }, + "put": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceDeletionPolicy": "CascadeDeleteProxyOnlyChildren", + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true + }, + "routingType": "Default", + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } }, "201": { "description": "Successfully created the resource type.", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "name": "Microsoft.Contoso/employees", "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "properties": { - "routingType": "Default", - "regionality": "Regional", "crossTenantTokenValidation": "EnsureSecureValidation", + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, "endpoints": [ { "apiVersions": [ @@ -224,49 +224,21 @@ ] } ], - "swaggerSpecifications": [ - { - "apiVersions": [ - "2018-11-01-preview", - "2020-01-01-preview", - "2019-01-01" - ], - "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" - } - ], - "enableAsyncOperation": false, - "provisioningState": "Succeeded", - "enableThirdPartyS2S": false, - "resourceConcurrencyControlOptions": { - "put": { - "policy": "SynchronizeBeginExtension" - }, - "patch": { - "policy": "SynchronizeBeginExtension" - }, - "post": { - "policy": "SynchronizeBeginExtension" - } - }, - "resourceGraphConfiguration": { - "enabled": true, - "apiVersion": "2019-01-01" - }, "management": { + "incidentContactEmail": "helpme@contoso.com", + "incidentRoutingService": "", + "incidentRoutingTeam": "", "manifestOwners": [ "SPARTA-PlatformServiceAdministrator" ], - "incidentRoutingService": "", - "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", + "resourceAccessPolicy": "NotSpecified", "serviceTreeInfos": [ { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" } - ], - "resourceAccessPolicy": "NotSpecified" + ] }, "metadata": {}, "openApiConfiguration": { @@ -274,19 +246,49 @@ "allowNoncompliantCollectionResponse": true } }, + "provisioningState": "Succeeded", + "regionality": "Regional", "requestHeaderOptions": { "optOutHeaders": "SystemDataCreatedByLastModifiedBy" - } + }, + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + }, + "put": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true + }, + "routingType": "Default", + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "ResourceTypeRegistrations_CreateOrUpdate", + "title": "ResourceTypeRegistrations_CreateOrUpdate" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_Delete.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_Delete.json index 9bcc258d7922..872b3553fab5 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_Delete.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_Delete.json @@ -1,20 +1,22 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", - "resourceType": "testResourceType" + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "202": { + "description": "Delete request accepted.", "headers": { "location": "https://management.azure.com/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/operationStauses/11111111-f7ef-471a-a2f4-d0ebbf494f77", "retry-after": "5000" - }, - "description": "Delete request accepted." + } }, "204": { "description": "Resource does not exist." } - } + }, + "operationId": "ResourceTypeRegistrations_Delete", + "title": "ResourceTypeRegistrations_Delete" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_Get.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_Get.json index 37bd04d0d81c..3ab5a53aa629 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_Get.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_Get.json @@ -1,18 +1,21 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", "resourceType": "employees", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "", "body": { + "name": "Microsoft.Contoso/employees", + "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "properties": { - "routingType": "Default", - "regionality": "Regional", "crossTenantTokenValidation": "EnsureSecureValidation", + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, "endpoints": [ { "apiVersions": [ @@ -37,52 +40,24 @@ ] } ], - "swaggerSpecifications": [ - { - "apiVersions": [ - "2018-11-01-preview", - "2020-01-01-preview", - "2019-01-01" - ], - "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" - } - ], - "enableAsyncOperation": false, - "provisioningState": "Succeeded", - "enableThirdPartyS2S": false, - "resourceConcurrencyControlOptions": { - "put": { - "policy": "SynchronizeBeginExtension" - }, - "patch": { - "policy": "SynchronizeBeginExtension" - }, - "post": { - "policy": "SynchronizeBeginExtension" - } - }, - "resourceGraphConfiguration": { - "enabled": true, - "apiVersion": "2019-01-01" - }, "management": { - "manifestOwners": [ - "SPARTA-PlatformServiceAdministrator" - ], "authorizationOwners": [ "RPAAS-PlatformServiceAdministrator" ], + "incidentContactEmail": "helpme@contoso.com", "incidentRoutingService": "", "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "resourceAccessPolicy": "NotSpecified", "serviceTreeInfos": [ { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" } - ], - "resourceAccessPolicy": "NotSpecified" + ] }, "metadata": {}, "notifications": [ @@ -96,22 +71,49 @@ "allowNoncompliantCollectionResponse": false } }, + "provisioningState": "Succeeded", + "regionality": "Regional", "requestHeaderOptions": { "optOutHeaders": "SystemDataCreatedByLastModifiedBy" - } + }, + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + }, + "put": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true + }, + "routingType": "Default", + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ] }, - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", - "name": "Microsoft.Contoso/employees", - "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "ResourceTypeRegistrations_Get", + "title": "ResourceTypeRegistrations_Get" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_ListByProviderRegistration.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_ListByProviderRegistration.json index 382b883d4e38..838f3653631f 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_ListByProviderRegistration.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/ResourceTypeRegistrations_ListByProviderRegistration.json @@ -1,8 +1,8 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", + "api-version": "2024-09-01", "providerNamespace": "Microsoft.Contoso", - "api-version": "2024-09-01" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -10,10 +10,13 @@ "body": { "value": [ { + "name": "Microsoft.Contoso/employees", + "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", "properties": { - "routingType": "Default", - "regionality": "Regional", "crossTenantTokenValidation": "EnsureSecureValidation", + "enableAsyncOperation": false, + "enableThirdPartyS2S": false, "endpoints": [ { "apiVersions": [ @@ -38,52 +41,24 @@ ] } ], - "swaggerSpecifications": [ - { - "apiVersions": [ - "2018-11-01-preview", - "2020-01-01-preview", - "2019-01-01" - ], - "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" - } - ], - "enableAsyncOperation": false, - "provisioningState": "Succeeded", - "enableThirdPartyS2S": false, - "resourceConcurrencyControlOptions": { - "put": { - "policy": "SynchronizeBeginExtension" - }, - "patch": { - "policy": "SynchronizeBeginExtension" - }, - "post": { - "policy": "SynchronizeBeginExtension" - } - }, - "resourceGraphConfiguration": { - "enabled": true, - "apiVersion": "2019-01-01" - }, "management": { - "manifestOwners": [ - "SPARTA-PlatformServiceAdministrator" - ], "authorizationOwners": [ "RPAAS-PlatformServiceAdministrator" ], + "incidentContactEmail": "helpme@contoso.com", "incidentRoutingService": "", "incidentRoutingTeam": "", - "incidentContactEmail": "helpme@contoso.com", + "manifestOwners": [ + "SPARTA-PlatformServiceAdministrator" + ], + "resourceAccessPolicy": "NotSpecified", "serviceTreeInfos": [ { - "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", "componentId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69", - "readiness": "InDevelopment" + "readiness": "InDevelopment", + "serviceId": "d1b7d8ba-05e2-48e6-90d6-d781b99c6e69" } - ], - "resourceAccessPolicy": "NotSpecified" + ] }, "metadata": {}, "notifications": [ @@ -97,24 +72,51 @@ "allowNoncompliantCollectionResponse": false } }, + "provisioningState": "Succeeded", + "regionality": "Regional", "requestHeaderOptions": { "optOutHeaders": "SystemDataCreatedByLastModifiedBy" - } + }, + "resourceConcurrencyControlOptions": { + "patch": { + "policy": "SynchronizeBeginExtension" + }, + "post": { + "policy": "SynchronizeBeginExtension" + }, + "put": { + "policy": "SynchronizeBeginExtension" + } + }, + "resourceGraphConfiguration": { + "apiVersion": "2019-01-01", + "enabled": true + }, + "routingType": "Default", + "swaggerSpecifications": [ + { + "apiVersions": [ + "2018-11-01-preview", + "2020-01-01-preview", + "2019-01-01" + ], + "swaggerSpecFolderUri": "https://github.com/Azure/azure-rest-api-specs/blob/feature/azure/contoso/specification/contoso/resource-manager/Microsoft.SampleRP/" + } + ] }, - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourceTypeRegistrations/employees", - "name": "Microsoft.Contoso/employees", - "type": "Microsoft.ProviderHub/providerRegistrations/resourceTypeRegistrations", "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } ] } } - } + }, + "operationId": "ResourceTypeRegistrations_ListByProviderRegistration", + "title": "ResourceTypeRegistrations_ListByProviderRegistration" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdate.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdate.json index f583e61dca0f..e32bfc0afc7b 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdate.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdate.json @@ -1,48 +1,50 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", - "resourceType": "testResourceType", - "sku": "testSku", "properties": { "properties": { "skuSettings": [ { "name": "freeSku", - "tier": "Tier1", - "kind": "Standard" + "kind": "Standard", + "tier": "Tier1" }, { "name": "premiumSku", - "tier": "Tier2", - "kind": "Premium", "costs": [ { "meterId": "xxx" } - ] + ], + "kind": "Premium", + "tier": "Tier2" } ] } - } + }, + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/skus/sku1", "name": "Microsoft.Contoso/employees/sku1", "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/skus/sku1", "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "Skus_CreateOrUpdate", + "title": "Skus_CreateOrUpdate" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdateNestedResourceTypeFirst.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdateNestedResourceTypeFirst.json index a063d5dbb0fc..88f6c7770f74 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdateNestedResourceTypeFirst.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdateNestedResourceTypeFirst.json @@ -1,49 +1,51 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", - "resourceType": "testResourceType", - "sku": "testSku", "nestedResourceTypeFirst": "nestedResourceTypeFirst", "properties": { "properties": { "skuSettings": [ { "name": "freeSku", - "tier": "Tier1", - "kind": "Standard" + "kind": "Standard", + "tier": "Tier1" }, { "name": "premiumSku", - "tier": "Tier2", - "kind": "Premium", "costs": [ { "meterId": "xxx" } - ] + ], + "kind": "Premium", + "tier": "Tier2" } ] } - } + }, + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/skus/sku1", "name": "Microsoft.Contoso/employees/nestedEmployee/sku1", "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/skus/sku1", "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "Skus_CreateOrUpdateNestedResourceTypeFirst", + "title": "Skus_CreateOrUpdateNestedResourceTypeFirst" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdateNestedResourceTypeSecond.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdateNestedResourceTypeSecond.json index 4b1d192a97e2..29c472385658 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdateNestedResourceTypeSecond.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdateNestedResourceTypeSecond.json @@ -1,10 +1,6 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", - "resourceType": "testResourceType", - "sku": "testSku", "nestedResourceTypeFirst": "nestedResourceTypeFirst", "nestedResourceTypeSecond": "nestedResourceTypeSecond", "properties": { @@ -12,39 +8,45 @@ "skuSettings": [ { "name": "freeSku", - "tier": "Tier1", - "kind": "Standard" + "kind": "Standard", + "tier": "Tier1" }, { "name": "premiumSku", - "tier": "Tier2", - "kind": "Premium", "costs": [ { "meterId": "xxx" } - ] + ], + "kind": "Premium", + "tier": "Tier2" } ] } - } + }, + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/skus/sku1", "name": "Microsoft.Contoso/employees/nestedEmployee/nestedEmployee2/sku1", "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/skus/sku1", "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "Skus_CreateOrUpdateNestedResourceTypeSecond", + "title": "Skus_CreateOrUpdateNestedResourceTypeSecond" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdateNestedResourceTypeThird.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdateNestedResourceTypeThird.json index e7c25450609d..f99471e200ee 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdateNestedResourceTypeThird.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_CreateOrUpdateNestedResourceTypeThird.json @@ -1,10 +1,6 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", - "resourceType": "testResourceType", - "sku": "testSku", "nestedResourceTypeFirst": "nestedResourceTypeFirst", "nestedResourceTypeSecond": "nestedResourceTypeSecond", "nestedResourceTypeThird": "nestedResourceTypeThird", @@ -13,39 +9,45 @@ "skuSettings": [ { "name": "freeSku", - "tier": "Tier1", - "kind": "Standard" + "kind": "Standard", + "tier": "Tier1" }, { "name": "premiumSku", - "tier": "Tier2", - "kind": "Premium", "costs": [ { "meterId": "xxx" } - ] + ], + "kind": "Premium", + "tier": "Tier2" } ] } - } + }, + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "description": "", "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/resourcetypeRegistrations/nestedEmployee3/skus/sku1", "name": "Microsoft.Contoso/employees/nestedEmployee/nestedEmployee2/nestedEmployee3/sku1", "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/resourcetypeRegistrations/nestedEmployee3/skus/sku1", "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "Skus_CreateOrUpdateNestedResourceTypeThird", + "title": "Skus_CreateOrUpdateNestedResourceTypeThird" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_Delete.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_Delete.json index 762621dde176..9e50d95a123b 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_Delete.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_Delete.json @@ -1,10 +1,10 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", "resourceType": "testResourceType", - "sku": "testSku" + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -13,5 +13,7 @@ "204": { "description": "Resource does not exist." } - } + }, + "operationId": "Skus_Delete", + "title": "Skus_Delete" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_DeleteNestedResourceTypeFirst.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_DeleteNestedResourceTypeFirst.json index 32135f569d19..90a09dad8f74 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_DeleteNestedResourceTypeFirst.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_DeleteNestedResourceTypeFirst.json @@ -1,11 +1,11 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "providerNamespace": "Microsoft.Contoso", "resourceType": "testResourceType", "sku": "testSku", - "nestedResourceTypeFirst": "nestedResourceTypeFirst" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -14,5 +14,7 @@ "204": { "description": "Resource does not exist." } - } + }, + "operationId": "Skus_DeleteNestedResourceTypeFirst", + "title": "Skus_DeleteNestedResourceTypeFirst" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_DeleteNestedResourceTypeSecond.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_DeleteNestedResourceTypeSecond.json index 9383f91749d8..ab4b3c07cf87 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_DeleteNestedResourceTypeSecond.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_DeleteNestedResourceTypeSecond.json @@ -1,12 +1,12 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "providerNamespace": "Microsoft.Contoso", "resourceType": "testResourceType", "sku": "testSku", - "nestedResourceTypeFirst": "nestedResourceTypeFirst", - "nestedResourceTypeSecond": "nestedResourceTypeSecond" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -15,5 +15,7 @@ "204": { "description": "Resource does not exist." } - } + }, + "operationId": "Skus_DeleteNestedResourceTypeSecond", + "title": "Skus_DeleteNestedResourceTypeSecond" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_DeleteNestedResourceTypeThird.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_DeleteNestedResourceTypeThird.json index 7a33a840920c..c27a6fa71c41 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_DeleteNestedResourceTypeThird.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_DeleteNestedResourceTypeThird.json @@ -1,13 +1,13 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", - "resourceType": "testResourceType", - "sku": "testSku", "nestedResourceTypeFirst": "nestedResourceTypeFirst", "nestedResourceTypeSecond": "nestedResourceTypeSecond", - "nestedResourceTypeThird": "nestedResourceTypeThird" + "nestedResourceTypeThird": "nestedResourceTypeThird", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { @@ -16,5 +16,7 @@ "204": { "description": "Resource does not exist." } - } + }, + "operationId": "Skus_DeleteNestedResourceTypeThird", + "title": "Skus_DeleteNestedResourceTypeThird" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_Get.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_Get.json index 5bda52cb54af..297bbbb2e8b4 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_Get.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_Get.json @@ -1,45 +1,47 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", + "providerNamespace": "Microsoft.Contoso", "resourceType": "testResourceType", - "sku": "testSku" + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/skus/sku1", "name": "Microsoft.Contoso/employees/sku1", "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/skus/sku1", "properties": { "skuSettings": [ { "name": "freeSku", - "tier": "Tier1", - "kind": "Standard" + "kind": "Standard", + "tier": "Tier1" }, { "name": "premiumSku", - "tier": "Tier2", - "kind": "Premium", "costs": [ { "meterId": "xxx" } - ] + ], + "kind": "Premium", + "tier": "Tier2" } ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "Skus_Get", + "title": "Skus_Get" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_GetNestedResourceTypeFirst.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_GetNestedResourceTypeFirst.json index 20f260ac6bac..7453ab9862ac 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_GetNestedResourceTypeFirst.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_GetNestedResourceTypeFirst.json @@ -1,46 +1,48 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "providerNamespace": "Microsoft.Contoso", "resourceType": "testResourceType", "sku": "testSku", - "nestedResourceTypeFirst": "nestedResourceTypeFirst" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/skus/sku1", "name": "Microsoft.Contoso/employees/nestedEmployee/sku1", "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/skus/sku1", "properties": { "skuSettings": [ { "name": "freeSku", - "tier": "Tier1", - "kind": "Standard" + "kind": "Standard", + "tier": "Tier1" }, { "name": "premiumSku", - "tier": "Tier2", - "kind": "Premium", "costs": [ { "meterId": "xxx" } - ] + ], + "kind": "Premium", + "tier": "Tier2" } ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "Skus_GetNestedResourceTypeFirst", + "title": "Skus_GetNestedResourceTypeFirst" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_GetNestedResourceTypeSecond.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_GetNestedResourceTypeSecond.json index e9a82555401b..7f4fc3de3f04 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_GetNestedResourceTypeSecond.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_GetNestedResourceTypeSecond.json @@ -1,47 +1,49 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "providerNamespace": "Microsoft.Contoso", "resourceType": "testResourceType", "sku": "testSku", - "nestedResourceTypeFirst": "nestedResourceTypeFirst", - "nestedResourceTypeSecond": "nestedResourceTypeSecond" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/skus/sku1", "name": "Microsoft.Contoso/employees/nestedEmployee/nestedEmployee2/sku1", "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/skus/sku1", "properties": { "skuSettings": [ { "name": "freeSku", - "tier": "Tier1", - "kind": "Standard" + "kind": "Standard", + "tier": "Tier1" }, { "name": "premiumSku", - "tier": "Tier2", - "kind": "Premium", "costs": [ { "meterId": "xxx" } - ] + ], + "kind": "Premium", + "tier": "Tier2" } ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "Skus_GetNestedResourceTypeSecond", + "title": "Skus_GetNestedResourceTypeSecond" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_GetNestedResourceTypeThird.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_GetNestedResourceTypeThird.json index 89e1fc27a055..a58a3c76b33b 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_GetNestedResourceTypeThird.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_GetNestedResourceTypeThird.json @@ -1,48 +1,50 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", - "resourceType": "testResourceType", - "sku": "testSku", "nestedResourceTypeFirst": "nestedResourceTypeFirst", "nestedResourceTypeSecond": "nestedResourceTypeSecond", - "nestedResourceTypeThird": "nestedResourceTypeThird" + "nestedResourceTypeThird": "nestedResourceTypeThird", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "body": { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/resourcetypeRegistrations/nestedEmployee3/skus/sku1", "name": "Microsoft.Contoso/employees/nestedEmployee/nestedEmployee2/nestedEmployee3/sku1", "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/resourcetypeRegistrations/nestedEmployee3/skus/sku1", "properties": { "skuSettings": [ { "name": "freeSku", - "tier": "Tier1", - "kind": "Standard" + "kind": "Standard", + "tier": "Tier1" }, { "name": "premiumSku", - "tier": "Tier2", - "kind": "Premium", "costs": [ { "meterId": "xxx" } - ] + ], + "kind": "Premium", + "tier": "Tier2" } ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } } - } + }, + "operationId": "Skus_GetNestedResourceTypeThird", + "title": "Skus_GetNestedResourceTypeThird" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrations.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrations.json index a39a26686ef1..4d6ab4595e3a 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrations.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrations.json @@ -1,48 +1,50 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", - "resourceType": "testResourceType" + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/skus/sku1", "name": "Microsoft.Contoso/employees/sku1", "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/skus/sku1", "properties": { "skuSettings": [ { "name": "freeSku", - "tier": "Tier1", - "kind": "Standard" + "kind": "Standard", + "tier": "Tier1" }, { "name": "premiumSku", - "tier": "Tier2", - "kind": "Premium", "costs": [ { "meterId": "xxx" } - ] + ], + "kind": "Premium", + "tier": "Tier2" } ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } ] } } - } + }, + "operationId": "Skus_ListByResourceTypeRegistrations", + "title": "Skus_ListByResourceTypeRegistrations" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst.json index bf2f3d4d36f1..e158490228b8 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst.json @@ -1,49 +1,51 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "providerNamespace": "Microsoft.Contoso", "resourceType": "testResourceType", - "nestedResourceTypeFirst": "nestedResourceTypeFirst" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/skus/sku1", "name": "Microsoft.Contoso/employees/nestedEmployee/sku1", "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/skus/sku1", "properties": { "skuSettings": [ { "name": "freeSku", - "tier": "Tier1", - "kind": "Standard" + "kind": "Standard", + "tier": "Tier1" }, { "name": "premiumSku", - "tier": "Tier2", - "kind": "Premium", "costs": [ { "meterId": "xxx" } - ] + ], + "kind": "Premium", + "tier": "Tier2" } ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } ] } } - } + }, + "operationId": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst", + "title": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond.json index 7d0f6f8a0762..0980e199c059 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond.json @@ -1,51 +1,53 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", + "nestedResourceTypeFirst": "nestedResourceTypeFirst", + "nestedResourceTypeSecond": "nestedResourceTypeSecond", + "providerNamespace": "Microsoft.Contoso", "resourceType": "testResourceType", "sku": "testSku", - "nestedResourceTypeFirst": "nestedResourceTypeFirst", - "nestedResourceTypeSecond": "nestedResourceTypeSecond" + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/skus/sku1", "name": "Microsoft.Contoso/employees/nestedEmployee/nestedEmployee2/sku1", "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/skus/sku1", "properties": { "skuSettings": [ { "name": "freeSku", - "tier": "Tier1", - "kind": "Standard" + "kind": "Standard", + "tier": "Tier1" }, { "name": "premiumSku", - "tier": "Tier2", - "kind": "Premium", "costs": [ { "meterId": "xxx" } - ] + ], + "kind": "Premium", + "tier": "Tier2" } ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } ] } } - } + }, + "operationId": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond", + "title": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird.json index 44cc543b988d..19ceeb624b9e 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird.json @@ -1,52 +1,54 @@ { "parameters": { - "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77", - "providerNamespace": "Microsoft.Contoso", "api-version": "2024-09-01", - "resourceType": "testResourceType", - "sku": "testSku", "nestedResourceTypeFirst": "nestedResourceTypeFirst", "nestedResourceTypeSecond": "nestedResourceTypeSecond", - "nestedResourceTypeThird": "nestedResourceTypeThird" + "nestedResourceTypeThird": "nestedResourceTypeThird", + "providerNamespace": "Microsoft.Contoso", + "resourceType": "testResourceType", + "sku": "testSku", + "subscriptionId": "ab7a8701-f7ef-471a-a2f4-d0ebbf494f77" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/resourcetypeRegistrations/nestedEmployee3/skus/sku1", "name": "Microsoft.Contoso/employees/nestedEmployee/nestedEmployee2/nestedEmployee3/sku1", "type": "Microsoft.ProviderHub/providerRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/resourcetypeRegistrations/skus", + "id": "/subscriptions/ab7a8701-f7ef-471a-a2f4-d0ebbf494f77/providers/Microsoft.ProviderHub/providerRegistrations/Microsoft.Contoso/resourcetypeRegistrations/employees/resourcetypeRegistrations/nestedEmployee/resourcetypeRegistrations/nestedEmployee2/resourcetypeRegistrations/nestedEmployee3/skus/sku1", "properties": { "skuSettings": [ { "name": "freeSku", - "tier": "Tier1", - "kind": "Standard" + "kind": "Standard", + "tier": "Tier1" }, { "name": "premiumSku", - "tier": "Tier2", - "kind": "Premium", "costs": [ { "meterId": "xxx" } - ] + ], + "kind": "Premium", + "tier": "Tier2" } ] }, "systemData": { + "createdAt": "2020-02-01T01:01:01.1075056Z", "createdBy": "string", "createdByType": "User", - "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z", "lastModifiedBy": "string", - "lastModifiedByType": "User", - "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + "lastModifiedByType": "User" } } ] } } - } + }, + "operationId": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird", + "title": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird" } diff --git a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/providerhub.json b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/providerhub.json index 12d25e365f16..07d9e2f662ae 100644 --- a/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/providerhub.json +++ b/specification/providerhub/resource-manager/Microsoft.ProviderHub/stable/2024-09-01/providerhub.json @@ -2,223 +2,194 @@ "swagger": "2.0", "info": { "title": "ProviderHub", - "description": "Microsoft ProviderHub", "version": "2024-09-01", - "x-ms-code-generation-settings": { - "name": "ProviderHubClient" - } + "description": "Provider Hub", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] }, + "schemes": [ + "https" + ], + "host": "management.azure.com", + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], "securityDefinitions": { "azure_auth": { "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow.", "flow": "implicit", "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", "scopes": { "user_impersonation": "impersonate your user account" - }, - "description": "Azure Active Directory OAuth2 Flow" + } } }, - "security": [ + "tags": [ { - "azure_auth": [ - "user_impersonation" - ] + "name": "Operations" + }, + { + "name": "CustomRollouts" + }, + { + "name": "NewRegionFrontloadRelease" + }, + { + "name": "ProviderRegistrations" + }, + { + "name": "DefaultRollouts" + }, + { + "name": "NotificationRegistrations" + }, + { + "name": "OperationsPutContents" + }, + { + "name": "ResourceTypeRegistrations" + }, + { + "name": "Skus" + }, + { + "name": "SkuResources" + }, + { + "name": "SkuResourceOperations" + }, + { + "name": "SkuResourceOperationGroup" + }, + { + "name": "AuthorizedApplications" + }, + { + "name": "ProviderMonitorSettings" } ], - "host": "management.azure.com", - "schemes": [ - "https" - ], "paths": { - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/customRollouts/{rolloutName}": { + "/providers/Microsoft.ProviderHub/operations": { "get": { + "operationId": "Operations_List", "tags": [ - "CustomRollouts" - ], - "description": "Gets the custom rollout details.", - "operationId": "CustomRollouts_Get", - "produces": [ - "application/json" + "Operations" ], + "description": "List the operations for the provider", "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" - }, - { - "$ref": "#/parameters/GetRolloutNameParameter" - }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" } ], "responses": { "200": { - "description": "Successfully retrieved the rollout details.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/CustomRollout" + "$ref": "#/definitions/OperationsDefinitionArrayResponseWithContinuation" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { - "CustomRollouts_Get": { - "$ref": "./examples/CustomRollouts_Get.json" + "Operations_List": { + "$ref": "./examples/Operations_List.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } - }, - "delete": { + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerMonitorSettings": { + "get": { + "operationId": "ProviderMonitorSettings_ListBySubscription", "tags": [ - "CustomRollouts" - ], - "description": "Deletes the custom rollout resource. Custom rollout must be in terminal state.", - "operationId": "CustomRollouts_Delete", - "produces": [ - "application/json" + "ProviderMonitorSettings" ], + "description": "Gets the list of the provider monitor settings in the subscription.", "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" - }, - { - "$ref": "#/parameters/GetRolloutNameParameter" - }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully deleted the custom rollout resource." - }, - "204": { - "description": "Resource does not exist." }, - "default": { - "description": "Error", - "schema": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" - } - } - }, - "x-ms-examples": { - "providerReleases_Delete": { - "$ref": "./examples/CustomRollouts_Delete.json" - } - } - }, - "put": { - "tags": [ - "CustomRollouts" - ], - "description": "Creates or updates the rollout details.", - "operationId": "CustomRollouts_CreateOrUpdate", - "produces": [ - "application/json" - ], - "parameters": [ { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" - }, - { - "$ref": "#/parameters/GetRolloutNameParameter" - }, - { - "name": "properties", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/CustomRollout" - }, - "description": "The custom rollout properties supplied to the CreateOrUpdate operation." - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" } ], "responses": { "200": { - "description": "Rollout completed successfully.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/CustomRollout" - } - }, - "201": { - "description": "Rollout created successfully.", - "schema": { - "$ref": "#/definitions/CustomRollout" + "$ref": "#/definitions/ProviderMonitorSettingArrayResponseWithContinuation" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { - "CustomRollouts_CreateOrUpdate": { - "$ref": "./examples/CustomRollouts_CreateOrUpdate.json" + "ProviderMonitorSettings_ListBySubscription": { + "$ref": "./examples/ProviderMonitorSettings_ListBySubscription.json" } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/customRollouts": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations": { "get": { + "operationId": "ProviderRegistrations_List", "tags": [ - "CustomRollouts" - ], - "description": "Gets the list of the custom rollouts for the given provider.", - "operationId": "CustomRollouts_ListByProviderRegistration", - "produces": [ - "application/json" + "ProviderRegistrations" ], + "description": "Gets the list of the provider registrations in the subscription.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { "200": { - "description": "Successfully retrieved the list of custom rollouts for given provider.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/CustomRolloutArrayResponseWithContinuation" + "$ref": "#/definitions/ProviderRegistrationArrayResponseWithContinuation" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { - "CustomRollouts_ListByProviderRegistration": { - "$ref": "./examples/CustomRollouts_ListByProviderRegistration.json" + "ProviderRegistrations_List": { + "$ref": "./examples/ProviderRegistrations_List.json" } }, "x-ms-pageable": { @@ -226,590 +197,760 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/customRollouts/{rolloutName}/stop": { - "post": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}": { + "get": { + "operationId": "ProviderRegistrations_Get", "tags": [ - "CustomRollouts" - ], - "description": "Stops or cancels the custom rollout, if in progress.", - "operationId": "CustomRollouts_Stop", - "produces": [ - "application/json" + "ProviderRegistrations" ], + "description": "Gets the provider registration details.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/GetRolloutNameParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" } ], "responses": { "200": { - "description": "Successfully cancelled the custom rollout." + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/ProviderRegistration" + } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { - "CustomRollouts_Stop": { - "$ref": "./examples/CustomRollouts_Stop.json" + "ProviderRegistrations_Get": { + "$ref": "./examples/ProviderRegistrations_Get.json" } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/defaultRollouts/{rolloutName}": { - "get": { + }, + "put": { + "operationId": "ProviderRegistrations_CreateOrUpdate", "tags": [ - "DefaultRollouts" - ], - "description": "Gets the default rollout details.", - "operationId": "DefaultRollouts_Get", - "produces": [ - "application/json" + "ProviderRegistrations" ], + "description": "Creates or updates the provider registration.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/GetRolloutNameParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "properties", + "in": "body", + "description": "The provider registration properties supplied to the CreateOrUpdate operation.", + "required": true, + "schema": { + "$ref": "#/definitions/ProviderRegistration" + } } ], "responses": { "200": { - "description": "Successfully retrieved the default rollout details.", + "description": "Resource 'ProviderRegistration' update operation succeeded", "schema": { - "$ref": "#/definitions/DefaultRollout" + "$ref": "#/definitions/ProviderRegistration" + } + }, + "201": { + "description": "Resource 'ProviderRegistration' create operation succeeded", + "schema": { + "$ref": "#/definitions/ProviderRegistration" + }, + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "description": "A link to the status monitor" + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { - "DefaultRollouts_Get": { - "$ref": "./examples/DefaultRollouts_Get.json" + "DirectProviderRegistrations_CreateOrUpdate": { + "$ref": "./examples/DirectProviderRegistrations_CreateOrUpdate.json" + }, + "ProviderRegistrations_CreateOrUpdate": { + "$ref": "./examples/ProviderRegistrations_CreateOrUpdate.json" } - } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation", + "final-state-schema": "#/definitions/ProviderRegistration" + }, + "x-ms-long-running-operation": true }, "delete": { + "operationId": "ProviderRegistrations_Delete", "tags": [ - "DefaultRollouts" - ], - "description": "Deletes the rollout resource. Rollout must be in terminal state.", - "operationId": "DefaultRollouts_Delete", - "produces": [ - "application/json" + "ProviderRegistrations" ], + "description": "Deletes a provider registration.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/GetRolloutNameParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" } ], "responses": { "200": { - "description": "Successfully deleted the default rollout resource." + "description": "Resource deleted successfully." }, "204": { "description": "Resource does not exist." }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { - "DefaultRollouts_Delete": { - "$ref": "./examples/DefaultRollouts_Delete.json" + "ProviderRegistrations_Delete": { + "$ref": "./examples/ProviderRegistrations_Delete.json" } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/authorizedApplications": { + "get": { + "operationId": "AuthorizedApplications_List", "tags": [ - "DefaultRollouts" - ], - "description": "Creates or updates the rollout details.", - "operationId": "DefaultRollouts_CreateOrUpdate", - "produces": [ - "application/json" + "AuthorizedApplications" ], + "description": "Gets the list of the authorized applications in the provider namespace.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/GetRolloutNameParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "name": "properties", - "in": "body", + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", "required": true, - "schema": { - "$ref": "#/definitions/DefaultRollout" - }, - "description": "The Default rollout properties supplied to the CreateOrUpdate operation." - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "type": "string" } ], "responses": { "200": { - "description": "Default rollout started successfully.", - "schema": { - "$ref": "#/definitions/DefaultRollout" - } - }, - "201": { - "description": "Default rollout completed successfully.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/DefaultRollout" + "$ref": "#/definitions/AuthorizedApplicationArrayResponseWithContinuation" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { - "DefaultRollouts_CreateOrUpdate": { - "$ref": "./examples/DefaultRollouts_CreateOrUpdate.json" + "AuthorizedApplications_List": { + "$ref": "./examples/AuthorizedApplications_List.json" } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/defaultRollouts": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/authorizedApplications/{applicationId}": { "get": { + "operationId": "AuthorizedApplications_Get", "tags": [ - "DefaultRollouts" - ], - "description": "Gets the list of the rollouts for the given provider.", - "operationId": "DefaultRollouts_ListByProviderRegistration", - "produces": [ - "application/json" + "AuthorizedApplications" ], + "description": "Gets the authorized application details.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "applicationId", + "in": "path", + "description": "The application ID.", + "required": true, + "type": "string", + "format": "uuid" } ], "responses": { "200": { - "description": "Successfully retrieved the list of default rollouts.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/DefaultRolloutArrayResponseWithContinuation" + "$ref": "#/definitions/AuthorizedApplication" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { - "DefaultRollouts_ListByProviderRegistration": { - "$ref": "./examples/DefaultRollouts_ListByProviderRegistration.json" + "AuthorizedApplications_Get": { + "$ref": "./examples/AuthorizedApplications_Get.json" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/defaultRollouts/{rolloutName}/stop": { - "post": { + }, + "put": { + "operationId": "AuthorizedApplications_CreateOrUpdate", "tags": [ - "DefaultRollouts" - ], - "description": "Stops or cancels the rollout, if in progress.", - "operationId": "DefaultRollouts_Stop", - "produces": [ - "application/json" + "AuthorizedApplications" ], + "description": "Creates or updates the authorized application.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/GetRolloutNameParameter" + "name": "applicationId", + "in": "path", + "description": "The application ID.", + "required": true, + "type": "string", + "format": "uuid" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "properties", + "in": "body", + "description": "The authorized application properties supplied to the CreateOrUpdate operation.", + "required": true, + "schema": { + "$ref": "#/definitions/AuthorizedApplication" + } } ], "responses": { "200": { - "description": "Successfully cancelled the default rollout." + "description": "Resource 'AuthorizedApplication' update operation succeeded", + "schema": { + "$ref": "#/definitions/AuthorizedApplication" + } + }, + "201": { + "description": "Resource 'AuthorizedApplication' create operation succeeded", + "schema": { + "$ref": "#/definitions/AuthorizedApplication" + }, + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "description": "A link to the status monitor" + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { - "DefaultRollouts_Stop": { - "$ref": "./examples/DefaultRollouts_Stop.json" + "AuthorizedApplications_CreateOrUpdate": { + "$ref": "./examples/AuthorizedApplications_CreateOrUpdate.json" } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/generateManifest": { - "post": { + }, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation", + "final-state-schema": "#/definitions/AuthorizedApplication" + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "AuthorizedApplications_Delete", "tags": [ - "Manifest" - ], - "description": "Generates the manifest for the given provider.", - "operationId": "GenerateManifest", - "produces": [ - "application/json" + "AuthorizedApplications" ], + "description": "Deletes an authorized application.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "applicationId", + "in": "path", + "description": "The application ID.", + "required": true, + "type": "string", + "format": "uuid" } ], - "x-ms-examples": { - "GenerateManifest": { - "$ref": "./examples/GenerateManifest.json" - } - }, "responses": { "200": { - "description": "Manifest generated.", - "schema": { - "$ref": "#/definitions/ResourceProviderManifest" - } + "description": "Resource deleted successfully." + }, + "204": { + "description": "Resource does not exist." }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "AuthorizedApplications_Delete": { + "$ref": "./examples/AuthorizedApplications_Delete.json" + } } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/checkinManifest": { "post": { + "operationId": "CheckinManifest", "tags": [ - "Manifest" + "ProviderRegistrations" ], "description": "Checkin the manifest.", - "operationId": "CheckinManifest", - "produces": [ - "application/json" - ], "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { "name": "checkinManifestParams", "in": "body", + "description": "The required body parameters supplied to the checkin manifest operation.", "required": true, "schema": { "$ref": "#/definitions/CheckinManifestParams" - }, - "description": "The required body parameters supplied to the checkin manifest operation." - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + } } ], - "x-ms-examples": { - "CheckinManifest": { - "$ref": "./examples/CheckinManifest.json" - } - }, "responses": { "200": { - "description": "Successfully checked-in manifest.", + "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/CheckinManifestInfo" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "CheckinManifest": { + "$ref": "./examples/CheckinManifest.json" + } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/notificationRegistrations/{notificationRegistrationName}": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/customRollouts": { "get": { + "operationId": "CustomRollouts_ListByProviderRegistration", "tags": [ - "NotificationRegistration" - ], - "description": "Gets the notification registration details.", - "operationId": "NotificationRegistrations_Get", - "produces": [ - "application/json" + "CustomRollouts" ], + "description": "Gets the list of the custom rollouts for the given provider.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/GetNotificationRegistrationNameParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "NotificationRegistrations_Get": { - "$ref": "./examples/NotificationRegistrations_Get.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the notification registration.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/NotificationRegistration" + "$ref": "#/definitions/CustomRolloutArrayResponseWithContinuation" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "CustomRollouts_ListByProviderRegistration": { + "$ref": "./examples/CustomRollouts_ListByProviderRegistration.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/customRollouts/{rolloutName}": { + "get": { + "operationId": "CustomRollouts_Get", "tags": [ - "NotificationRegistration" - ], - "description": "Creates or updates a notification registration.", - "operationId": "NotificationRegistrations_CreateOrUpdate", - "produces": [ - "application/json" + "CustomRollouts" ], + "description": "Gets the custom rollout details.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/GetNotificationRegistrationNameParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "name": "properties", - "in": "body", + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", "required": true, - "schema": { - "$ref": "#/definitions/NotificationRegistration" - }, - "description": "The required body parameters supplied to the notification registration operation." + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "rolloutName", + "in": "path", + "description": "The rollout name.", + "required": true, + "type": "string", + "maxLength": 260, + "pattern": "^[-\\w\\._\\(\\)]+$" } ], - "x-ms-examples": { - "NotificationRegistrations_CreateOrUpdate": { - "$ref": "./examples/NotificationRegistrations_CreateOrUpdate.json" - } - }, "responses": { "200": { - "description": "Successfully created or updated the notification registration.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/NotificationRegistration" + "$ref": "#/definitions/CustomRollout" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "CustomRollouts_Get": { + "$ref": "./examples/CustomRollouts_Get.json" + } } }, - "delete": { + "put": { + "operationId": "CustomRollouts_CreateOrUpdate", "tags": [ - "NotificationRegistration" - ], - "description": "Deletes a notification registration.", - "operationId": "NotificationRegistrations_Delete", - "produces": [ - "application/json" + "CustomRollouts" ], + "description": "Creates or updates the rollout details.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/GetNotificationRegistrationNameParameter" + "name": "rolloutName", + "in": "path", + "description": "The rollout name.", + "required": true, + "type": "string", + "maxLength": 260, + "pattern": "^[-\\w\\._\\(\\)]+$" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "properties", + "in": "body", + "description": "The custom rollout properties supplied to the CreateOrUpdate operation.", + "required": true, + "schema": { + "$ref": "#/definitions/CustomRollout" + } } ], + "responses": { + "200": { + "description": "Resource 'CustomRollout' update operation succeeded", + "schema": { + "$ref": "#/definitions/CustomRollout" + } + }, + "201": { + "description": "Resource 'CustomRollout' create operation succeeded", + "schema": { + "$ref": "#/definitions/CustomRollout" + }, + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "description": "A link to the status monitor" + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + }, "x-ms-examples": { - "NotificationRegistrations_Delete": { - "$ref": "./examples/NotificationRegistrations_Delete.json" + "CustomRollouts_CreateOrUpdate": { + "$ref": "./examples/CustomRollouts_CreateOrUpdate.json" } }, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation", + "final-state-schema": "#/definitions/CustomRollout" + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "CustomRollouts_Delete", + "tags": [ + "CustomRollouts" + ], + "description": "Deletes the custom rollout resource. Custom rollout must be in terminal state.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" + }, + { + "name": "rolloutName", + "in": "path", + "description": "The rollout name.", + "required": true, + "type": "string", + "maxLength": 260, + "pattern": "^[-\\w\\._\\(\\)]+$" + } + ], "responses": { "200": { - "description": "Successfully deleted the notification registration." + "description": "Resource deleted successfully." }, "204": { "description": "Resource does not exist." }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "providerReleases_Delete": { + "$ref": "./examples/CustomRollouts_Delete.json" + } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/notificationRegistrations": { - "get": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/customRollouts/{rolloutName}/stop": { + "post": { + "operationId": "CustomRollouts_Stop", "tags": [ - "NotificationRegistration" - ], - "description": "Gets the list of the notification registrations for the given provider.", - "operationId": "NotificationRegistrations_ListByProviderRegistration", - "produces": [ - "application/json" + "CustomRollouts" ], + "description": "Stops or cancels the custom rollout, if in progress.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "rolloutName", + "in": "path", + "description": "The rollout name.", + "required": true, + "type": "string", + "maxLength": 260, + "pattern": "^[-\\w\\._\\(\\)]+$" } ], - "x-ms-examples": { - "NotificationRegistrations_ListByProviderRegistration": { - "$ref": "./examples/NotificationRegistrations_ListByProviderRegistration.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the notification registrations.", - "schema": { - "$ref": "#/definitions/NotificationRegistrationArrayResponseWithContinuation" - } + "description": "The request has succeeded." }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" + "x-ms-examples": { + "CustomRollouts_Stop": { + "$ref": "./examples/CustomRollouts_Stop.json" + } } } }, - "/providers/Microsoft.ProviderHub/operations": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/defaultRollouts": { "get": { + "operationId": "DefaultRollouts_ListByProviderRegistration", "tags": [ - "Operations" + "DefaultRollouts" ], - "description": "Lists all the operations supported by Microsoft.ProviderHub.", - "operationId": "Operations_List", - "produces": [ - "application/json" + "description": "Gets the list of the rollouts for the given provider.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" + } ], "responses": { "200": { - "description": "Successfully retrieved the list of supported operations.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/OperationsDefinitionArrayResponseWithContinuation" + "$ref": "#/definitions/DefaultRolloutArrayResponseWithContinuation" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { - "Operations_List": { - "$ref": "./examples/Operations_List.json" + "DefaultRollouts_ListByProviderRegistration": { + "$ref": "./examples/DefaultRollouts_ListByProviderRegistration.json" } }, "x-ms-pageable": { @@ -817,355 +958,358 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/operations/default": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/defaultRollouts/{rolloutName}": { "get": { + "operationId": "DefaultRollouts_Get", "tags": [ - "Operations" - ], - "description": "Gets the operations supported by the given provider.", - "operationId": "Operations_ListByProviderRegistration", - "produces": [ - "application/json" + "DefaultRollouts" ], + "description": "Gets the default rollout details.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "rolloutName", + "in": "path", + "description": "The rollout name.", + "required": true, + "type": "string", + "maxLength": 260, + "pattern": "^[-\\w\\._\\(\\)]+$" } ], - "x-ms-examples": { - "Operations_ListByProviderRegistration": { - "$ref": "./examples/Operations_ListByProviderRegistration.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the supported operations.", + "description": "Azure operation completed successfully.", "schema": { - "type": "array", - "items": { - "$ref": "#/definitions/OperationsDefinition" - } + "$ref": "#/definitions/DefaultRollout" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "DefaultRollouts_Get": { + "$ref": "./examples/DefaultRollouts_Get.json" + } } }, "put": { + "operationId": "DefaultRollouts_CreateOrUpdate", "tags": [ - "Operations" - ], - "description": "Creates or updates the operation supported by the given provider.", - "operationId": "Operations_CreateOrUpdate", - "produces": [ - "application/json" + "DefaultRollouts" ], + "description": "Creates or updates the rollout details.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "name": "OperationsPutContent", - "in": "body", + "name": "rolloutName", + "in": "path", + "description": "The rollout name.", "required": true, - "schema": { - "$ref": "#/definitions/OperationsPutContent" - }, - "description": "The operations content properties supplied to the CreateOrUpdate operation." + "type": "string", + "maxLength": 260, + "pattern": "^[-\\w\\._\\(\\)]+$" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "properties", + "in": "body", + "description": "The Default rollout properties supplied to the CreateOrUpdate operation.", + "required": true, + "schema": { + "$ref": "#/definitions/DefaultRollout" + } } ], - "x-ms-examples": { - "Operations_CreateOrUpdate": { - "$ref": "./examples/Operations_CreateOrUpdate.json" - } - }, "responses": { "200": { - "description": "Successfully created or updated the operation.", + "description": "Resource 'DefaultRollout' update operation succeeded", "schema": { - "$ref": "#/definitions/OperationsPutContent" + "$ref": "#/definitions/DefaultRollout" + } + }, + "201": { + "description": "Resource 'DefaultRollout' create operation succeeded", + "schema": { + "$ref": "#/definitions/DefaultRollout" + }, + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "description": "A link to the status monitor" + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } - } + }, + "x-ms-examples": { + "DefaultRollouts_CreateOrUpdate": { + "$ref": "./examples/DefaultRollouts_CreateOrUpdate.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation", + "final-state-schema": "#/definitions/DefaultRollout" + }, + "x-ms-long-running-operation": true }, "delete": { + "operationId": "DefaultRollouts_Delete", "tags": [ - "Operations" - ], - "description": "Deletes an operation.", - "operationId": "Operations_Delete", - "produces": [ - "application/json" + "DefaultRollouts" ], + "description": "Deletes the rollout resource. Rollout must be in terminal state.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "rolloutName", + "in": "path", + "description": "The rollout name.", + "required": true, + "type": "string", + "maxLength": 260, + "pattern": "^[-\\w\\._\\(\\)]+$" } ], - "x-ms-examples": { - "Operations_Delete": { - "$ref": "./examples/Operations_Delete.json" - } - }, "responses": { "200": { - "description": "Successfully deleted the operation." + "description": "Resource deleted successfully." }, "204": { "description": "Resource does not exist." }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "DefaultRollouts_Delete": { + "$ref": "./examples/DefaultRollouts_Delete.json" + } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}": { - "get": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/defaultRollouts/{rolloutName}/stop": { + "post": { + "operationId": "DefaultRollouts_Stop", "tags": [ - "ProviderRegistration" - ], - "description": "Gets the provider registration details.", - "operationId": "ProviderRegistrations_Get", - "produces": [ - "application/json" + "DefaultRollouts" ], + "description": "Stops or cancels the rollout, if in progress.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "rolloutName", + "in": "path", + "description": "The rollout name.", + "required": true, + "type": "string", + "maxLength": 260, + "pattern": "^[-\\w\\._\\(\\)]+$" } ], - "x-ms-examples": { - "ProviderRegistrations_Get": { - "$ref": "./examples/ProviderRegistrations_Get.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the provider registration.", - "schema": { - "$ref": "#/definitions/ProviderRegistration" - } + "description": "The request has succeeded." }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "DefaultRollouts_Stop": { + "$ref": "./examples/DefaultRollouts_Stop.json" + } } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/generateManifest": { + "post": { + "operationId": "GenerateManifest", "tags": [ - "ProviderRegistration" - ], - "description": "Creates or updates the provider registration.", - "operationId": "ProviderRegistrations_CreateOrUpdate", - "produces": [ - "application/json" + "ProviderRegistrations" ], + "description": "Generates the manifest for the given provider.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "name": "properties", - "in": "body", + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", "required": true, - "schema": { - "$ref": "#/definitions/ProviderRegistration" - }, - "description": "The provider registration properties supplied to the CreateOrUpdate operation." - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "type": "string" } ], - "x-ms-examples": { - "ProviderRegistrations_CreateOrUpdate": { - "$ref": "./examples/ProviderRegistrations_CreateOrUpdate.json" - }, - "DirectProviderRegistrations_CreateOrUpdate": { - "$ref": "./examples/DirectProviderRegistrations_CreateOrUpdate.json" - } - }, "responses": { "200": { - "description": "Successfully updated the provider registration.", - "schema": { - "$ref": "#/definitions/ProviderRegistration" - } - }, - "201": { - "description": "Successfully created the provider registration.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/ProviderRegistration" + "$ref": "#/definitions/ResourceProviderManifest" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" - } - }, - "delete": { - "tags": [ - "ProviderRegistration" - ], - "description": "Deletes a provider registration.", - "operationId": "ProviderRegistrations_Delete", - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - } - ], "x-ms-examples": { - "ProviderRegistrations_Delete": { - "$ref": "./examples/ProviderRegistrations_Delete.json" - } - }, - "responses": { - "200": { - "description": "Successfully deleted the provider registration." - }, - "204": { - "description": "Resource does not exist." - }, - "default": { - "description": "Error", - "schema": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" - } + "GenerateManifest": { + "$ref": "./examples/GenerateManifest.json" } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations": { - "get": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/generateNewRegionFrontloadManifest": { + "post": { + "operationId": "NewRegionFrontloadRelease_GenerateManifest", "tags": [ - "ProviderRegistration" - ], - "description": "Gets the list of the provider registrations in the subscription.", - "operationId": "ProviderRegistrations_List", - "produces": [ - "application/json" + "ProviderRegistrations" ], + "description": "Generates the new region frontload manifest.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" + }, + { + "name": "properties", + "in": "body", + "description": "", + "required": true, + "schema": { + "$ref": "#/definitions/FrontloadPayload" + } } ], - "x-ms-examples": { - "ProviderRegistrations_List": { - "$ref": "./examples/ProviderRegistrations_List.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the provider registrations.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/ProviderRegistrationArrayResponseWithContinuation" + "$ref": "#/definitions/ResourceProviderManifest" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" + "x-ms-examples": { + "NewRegionFrontloadRelease_GenerateManifest": { + "$ref": "./examples/NewRegionFrontloadRelease_GenerateManifest.json" + } } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/generateOperations": { "post": { + "operationId": "ProviderRegistrations_GenerateOperations", "tags": [ - "ProviderRegistration" + "ProviderRegistrations" ], "description": "Generates the operations api for the given provider.", - "operationId": "ProviderRegistrations_GenerateOperations", - "produces": [ - "application/json" - ], "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "ProviderRegistrations_GenerateOperations": { - "$ref": "./examples/ProviderRegistrations_GenerateOperations.json" - } - }, "responses": { "200": { - "description": "The operations api has been generated successfully.", + "description": "Azure operation completed successfully.", "schema": { "type": "array", "items": { @@ -1174,3914 +1318,4149 @@ } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "ProviderRegistrations_GenerateOperations": { + "$ref": "./examples/ProviderRegistrations_GenerateOperations.json" + } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/newRegionFrontloadRelease/{releaseName}": { "get": { + "operationId": "NewRegionFrontloadRelease_Get", "tags": [ - "ResourceTypeRegistration" - ], - "description": "Gets a resource type details in the given subscription and provider.", - "operationId": "ResourceTypeRegistrations_Get", - "produces": [ - "application/json" + "NewRegionFrontloadRelease" ], + "description": "Gets a new region frontload release.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/GetResourceTypeParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "releaseName", + "in": "path", + "description": "The name of the release.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$" } ], - "x-ms-examples": { - "ResourceTypeRegistrations_Get": { - "$ref": "./examples/ResourceTypeRegistrations_Get.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the resource type.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/ResourceTypeRegistration" + "$ref": "#/definitions/DefaultRollout" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "NewRegionFrontloadRelease_Get": { + "$ref": "./examples/NewRegionFrontloadRelease_Get.json" + } } }, "put": { + "operationId": "NewRegionFrontloadRelease_CreateOrUpdate", "tags": [ - "ResourceTypeRegistration" - ], - "description": "Creates or updates a resource type.", - "operationId": "ResourceTypeRegistrations_CreateOrUpdate", - "produces": [ - "application/json" + "NewRegionFrontloadRelease" ], + "description": "Creates or updates a new region frontload release.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/GetResourceTypeParameter" + "name": "releaseName", + "in": "path", + "description": "The name of the release.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$" }, { "name": "properties", "in": "body", + "description": "", "required": true, "schema": { - "$ref": "#/definitions/ResourceTypeRegistration" - }, - "description": "The required request body parameters supplied to the resource type registration CreateOrUpdate operation." - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "$ref": "#/definitions/FrontloadPayload" + } } ], - "x-ms-examples": { - "ResourceTypeRegistrations_CreateOrUpdate": { - "$ref": "./examples/ResourceTypeRegistrations_CreateOrUpdate.json" - }, - "DirectResourceTypeRegistrations_CreateOrUpdate.json": { - "$ref": "./examples/DirectResourceTypeRegistrations_CreateOrUpdate.json" - } - }, "responses": { "200": { - "description": "Successfully updated the resource type.", + "description": "The request has succeeded.", "schema": { - "$ref": "#/definitions/ResourceTypeRegistration" + "$ref": "#/definitions/DefaultRollout" } }, "201": { - "description": "Successfully created the resource type.", + "description": "Azure create operation completed successfully.", "schema": { - "$ref": "#/definitions/ResourceTypeRegistration" + "$ref": "#/definitions/DefaultRollout" + }, + "headers": { + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" + "x-ms-examples": { + "NewRegionFrontloadRelease_CreateOrUpdate": { + "$ref": "./examples/NewRegionFrontloadRelease_CreateOrUpdate.json" + } } - }, - "delete": { + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/newRegionFrontloadRelease/{releaseName}/stop": { + "post": { + "operationId": "NewRegionFrontloadRelease_Stop", "tags": [ - "ResourceTypeRegistration" - ], - "description": "Deletes a resource type", - "operationId": "ResourceTypeRegistrations_Delete", - "produces": [ - "application/json" + "NewRegionFrontloadRelease" ], + "description": "Stops a new region frontload release.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/GetResourceTypeParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "releaseName", + "in": "path", + "description": "The name of the release.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$" } ], - "x-ms-examples": { - "ResourceTypeRegistrations_Delete": { - "$ref": "./examples/ResourceTypeRegistrations_Delete.json" - } - }, "responses": { - "202": { - "description": "Delete request accepted.", - "headers": { - "Location": { - "type": "string" - } - } - }, - "204": { - "description": "Resource does not exist." + "200": { + "description": "The request has succeeded." }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" + "x-ms-examples": { + "NewRegionFrontloadRelease_Stop": { + "$ref": "./examples/NewRegionFrontloadRelease_Stop.json" + } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/notificationRegistrations": { "get": { + "operationId": "NotificationRegistrations_ListByProviderRegistration", "tags": [ - "ResourceTypeRegistration" - ], - "description": "Gets the list of the resource types for the given provider.", - "operationId": "ResourceTypeRegistrations_ListByProviderRegistration", - "produces": [ - "application/json" + "NotificationRegistrations" ], + "description": "Gets the list of the notification registrations for the given provider.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "ResourceTypeRegistrations_ListByProviderRegistration": { - "$ref": "./examples/ResourceTypeRegistrations_ListByProviderRegistration.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the resource types.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/ResourceTypeRegistrationArrayResponseWithContinuation" + "$ref": "#/definitions/NotificationRegistrationArrayResponseWithContinuation" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, + "x-ms-examples": { + "NotificationRegistrations_ListByProviderRegistration": { + "$ref": "./examples/NotificationRegistrations_ListByProviderRegistration.json" + } + }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/skus/{sku}": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/notificationRegistrations/{notificationRegistrationName}": { "get": { + "operationId": "NotificationRegistrations_Get", "tags": [ - "ResourceTypeSku" - ], - "description": "Gets the sku details for the given resource type and sku name.", - "operationId": "Skus_Get", - "produces": [ - "application/json" + "NotificationRegistrations" ], + "description": "Gets the notification registration details.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/GetResourceTypeParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/SkuParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "notificationRegistrationName", + "in": "path", + "description": "The notification registration.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "Skus_Get": { - "$ref": "./examples/Skus_Get.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the resource type sku.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/SkuResource" + "$ref": "#/definitions/NotificationRegistration" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "NotificationRegistrations_Get": { + "$ref": "./examples/NotificationRegistrations_Get.json" + } } }, "put": { + "operationId": "NotificationRegistrations_CreateOrUpdate", "tags": [ - "ResourceTypeSku" - ], - "description": "Creates or updates the resource type skus in the given resource type.", - "operationId": "Skus_CreateOrUpdate", - "produces": [ - "application/json" + "NotificationRegistrations" ], + "description": "Creates or updates a notification registration.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/GetResourceTypeParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/SkuParameter" + "name": "notificationRegistrationName", + "in": "path", + "description": "The notification registration.", + "required": true, + "type": "string" }, { "name": "properties", "in": "body", + "description": "The required body parameters supplied to the notification registration operation.", "required": true, "schema": { - "$ref": "#/definitions/SkuResource" - }, - "description": "The required body parameters supplied to the resource sku operation." - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "$ref": "#/definitions/NotificationRegistration" + } } ], - "x-ms-examples": { - "Skus_CreateOrUpdate": { - "$ref": "./examples/Skus_CreateOrUpdate.json" - } - }, "responses": { "200": { - "description": "Successfully created or updated the resource type sku.", + "description": "Resource 'NotificationRegistration' update operation succeeded", "schema": { - "$ref": "#/definitions/SkuResource" + "$ref": "#/definitions/NotificationRegistration" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "NotificationRegistrations_CreateOrUpdate": { + "$ref": "./examples/NotificationRegistrations_CreateOrUpdate.json" + } } }, "delete": { + "operationId": "NotificationRegistrations_Delete", "tags": [ - "ResourceTypeSku" - ], - "description": "Deletes a resource type sku.", - "operationId": "Skus_Delete", - "produces": [ - "application/json" + "NotificationRegistrations" ], + "description": "Deletes a notification registration.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/GetResourceTypeParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/SkuParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "notificationRegistrationName", + "in": "path", + "description": "The notification registration.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "Skus_Delete": { - "$ref": "./examples/Skus_Delete.json" - } - }, "responses": { "200": { - "description": "Successfully deleted the resource type sku." + "description": "Resource deleted successfully." }, "204": { "description": "Resource does not exist." }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "NotificationRegistrations_Delete": { + "$ref": "./examples/NotificationRegistrations_Delete.json" + } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/skus/{sku}": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/operations/default": { "get": { + "operationId": "Operations_ListByProviderRegistration", "tags": [ - "ResourceTypeSku" - ], - "description": "Gets the sku details for the given resource type and sku name.", - "operationId": "Skus_GetNestedResourceTypeFirst", - "produces": [ - "application/json" + "OperationsPutContents" ], + "description": "Gets the operations supported by the given provider.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" - }, - { - "$ref": "#/parameters/GetResourceTypeParameter" - }, - { - "$ref": "#/parameters/NestedResourceTypeFirstParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SkuParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "Skus_GetNestedResourceTypeFirst": { - "$ref": "./examples/Skus_GetNestedResourceTypeFirst.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the resource type sku.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/SkuResource" + "type": "array", + "items": { + "$ref": "#/definitions/OperationsDefinition" + } } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "Operations_ListByProviderRegistration": { + "$ref": "./examples/Operations_ListByProviderRegistration.json" + } } }, "put": { + "operationId": "Operations_CreateOrUpdate", "tags": [ - "ResourceTypeSku" - ], - "description": "Creates or updates the resource type skus in the given resource type.", - "operationId": "Skus_CreateOrUpdateNestedResourceTypeFirst", - "produces": [ - "application/json" + "OperationsPutContents" ], + "description": "Creates or updates the operation supported by the given provider.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" - }, - { - "$ref": "#/parameters/GetResourceTypeParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NestedResourceTypeFirstParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/SkuParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "name": "properties", + "name": "OperationsPutContent", "in": "body", + "description": "The operations content properties supplied to the CreateOrUpdate operation.", "required": true, "schema": { - "$ref": "#/definitions/SkuResource" - }, - "description": "The required body parameters supplied to the resource sku operation." - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "$ref": "#/definitions/OperationsPutContent" + } } ], - "x-ms-examples": { - "Skus_CreateOrUpdateNestedResourceTypeFirst": { - "$ref": "./examples/Skus_CreateOrUpdateNestedResourceTypeFirst.json" - } - }, "responses": { "200": { - "description": "Successfully created or updated the resource type sku.", + "description": "Resource 'OperationsPutContent' update operation succeeded", "schema": { - "$ref": "#/definitions/SkuResource" + "$ref": "#/definitions/OperationsPutContent" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "Operations_CreateOrUpdate": { + "$ref": "./examples/Operations_CreateOrUpdate.json" + } } }, "delete": { + "operationId": "Operations_Delete", "tags": [ - "ResourceTypeSku" - ], - "description": "Deletes a resource type sku.", - "operationId": "Skus_DeleteNestedResourceTypeFirst", - "produces": [ - "application/json" + "OperationsPutContents" ], + "description": "Deletes an operation.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" - }, - { - "$ref": "#/parameters/GetResourceTypeParameter" - }, - { - "$ref": "#/parameters/NestedResourceTypeFirstParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SkuParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "Skus_DeleteNestedResourceTypeFirst": { - "$ref": "./examples/Skus_DeleteNestedResourceTypeFirst.json" - } - }, "responses": { "200": { - "description": "Successfully deleted the resource type sku." + "description": "Resource deleted successfully." }, "204": { "description": "Resource does not exist." }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "Operations_Delete": { + "$ref": "./examples/Operations_Delete.json" + } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/resourcetypeRegistrations/{nestedResourceTypeSecond}/skus/{sku}": { - "get": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourceActions/{resourceActionName}/deleteResources": { + "post": { + "operationId": "ResourceActions_DeleteResources", "tags": [ - "ResourceTypeSku" - ], - "description": "Gets the sku details for the given resource type and sku name.", - "operationId": "Skus_GetNestedResourceTypeSecond", - "produces": [ - "application/json" + "ProviderRegistrations" ], + "description": "Deletes resources.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" - }, - { - "$ref": "#/parameters/GetResourceTypeParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NestedResourceTypeFirstParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/NestedResourceTypeSecondParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/SkuParameter" + "name": "resourceActionName", + "in": "path", + "description": "The resource action name.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 63, + "pattern": "^[a-z][a-z0-9]*$" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "properties", + "in": "body", + "description": "The properties supplied to the DeleteResources operation.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceManagementAction" + } } ], - "x-ms-examples": { - "Skus_GetNestedResourceTypeSecond": { - "$ref": "./examples/Skus_GetNestedResourceTypeSecond.json" - } - }, "responses": { - "200": { - "description": "Successfully retrieved the resource type sku.", - "schema": { - "$ref": "#/definitions/SkuResource" + "202": { + "description": "Resource operation accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } - } - }, - "put": { + }, + "x-ms-examples": { + "ResourceActions_DeleteResources": { + "$ref": "./examples/ResourceActions_DeleteResources.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations": { + "get": { + "operationId": "ResourceTypeRegistrations_ListByProviderRegistration", "tags": [ - "ResourceTypeSku" - ], - "description": "Creates or updates the resource type skus in the given resource type.", - "operationId": "Skus_CreateOrUpdateNestedResourceTypeSecond", - "produces": [ - "application/json" + "ResourceTypeRegistrations" ], + "description": "Gets the list of the resource types for the given provider.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" - }, - { - "$ref": "#/parameters/GetResourceTypeParameter" - }, - { - "$ref": "#/parameters/NestedResourceTypeFirstParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NestedResourceTypeSecondParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/SkuParameter" - }, - { - "name": "properties", - "in": "body", + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", "required": true, - "schema": { - "$ref": "#/definitions/SkuResource" - }, - "description": "The required body parameters supplied to the resource sku operation." - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "type": "string" } ], - "x-ms-examples": { - "Skus_CreateOrUpdateNestedResourceTypeSecond": { - "$ref": "./examples/Skus_CreateOrUpdateNestedResourceTypeSecond.json" - } - }, "responses": { "200": { - "description": "Successfully created or updated the resource type sku.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/SkuResource" + "$ref": "#/definitions/ResourceTypeRegistrationArrayResponseWithContinuation" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } - } - }, - "delete": { - "tags": [ - "ResourceTypeSku" - ], - "description": "Deletes a resource type sku.", - "operationId": "Skus_DeleteNestedResourceTypeSecond", - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" - }, - { - "$ref": "#/parameters/GetResourceTypeParameter" - }, - { - "$ref": "#/parameters/NestedResourceTypeFirstParameter" - }, - { - "$ref": "#/parameters/NestedResourceTypeSecondParameter" - }, - { - "$ref": "#/parameters/SkuParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - } - ], + }, "x-ms-examples": { - "Skus_DeleteNestedResourceTypeSecond": { - "$ref": "./examples/Skus_DeleteNestedResourceTypeSecond.json" + "ResourceTypeRegistrations_ListByProviderRegistration": { + "$ref": "./examples/ResourceTypeRegistrations_ListByProviderRegistration.json" } }, - "responses": { - "200": { - "description": "Successfully deleted the resource type sku." - }, - "204": { - "description": "Resource does not exist." - }, - "default": { - "description": "Error", - "schema": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" - } - } + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/resourcetypeRegistrations/{nestedResourceTypeSecond}/resourcetypeRegistrations/{nestedResourceTypeThird}/skus/{sku}": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}": { "get": { + "operationId": "ResourceTypeRegistrations_Get", "tags": [ - "ResourceTypeSku" - ], - "description": "Gets the sku details for the given resource type and sku name.", - "operationId": "Skus_GetNestedResourceTypeThird", - "produces": [ - "application/json" + "ResourceTypeRegistrations" ], + "description": "Gets a resource type details in the given subscription and provider.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" - }, - { - "$ref": "#/parameters/GetResourceTypeParameter" - }, - { - "$ref": "#/parameters/NestedResourceTypeFirstParameter" - }, - { - "$ref": "#/parameters/NestedResourceTypeSecondParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NestedResourceTypeThirdParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/SkuParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "Skus_GetNestedResourceTypeThird": { - "$ref": "./examples/Skus_GetNestedResourceTypeThird.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the resource type sku.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/SkuResource" + "$ref": "#/definitions/ResourceTypeRegistration" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "ResourceTypeRegistrations_Get": { + "$ref": "./examples/ResourceTypeRegistrations_Get.json" + } } }, "put": { + "operationId": "ResourceTypeRegistrations_CreateOrUpdate", "tags": [ - "ResourceTypeSku" - ], - "description": "Creates or updates the resource type skus in the given resource type.", - "operationId": "Skus_CreateOrUpdateNestedResourceTypeThird", - "produces": [ - "application/json" + "ResourceTypeRegistrations" ], + "description": "Creates or updates a resource type.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" - }, - { - "$ref": "#/parameters/GetResourceTypeParameter" - }, - { - "$ref": "#/parameters/NestedResourceTypeFirstParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NestedResourceTypeSecondParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/NestedResourceTypeThirdParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/SkuParameter" + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" }, { "name": "properties", "in": "body", + "description": "The required request body parameters supplied to the resource type registration CreateOrUpdate operation.", "required": true, "schema": { - "$ref": "#/definitions/SkuResource" - }, - "description": "The required body parameters supplied to the resource sku operation." - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "$ref": "#/definitions/ResourceTypeRegistration" + } } ], - "x-ms-examples": { - "Skus_CreateOrUpdateNestedResourceTypeThird": { - "$ref": "./examples/Skus_CreateOrUpdateNestedResourceTypeThird.json" - } - }, "responses": { "200": { - "description": "Successfully created or updated the resource type sku.", + "description": "Resource 'ResourceTypeRegistration' update operation succeeded", "schema": { - "$ref": "#/definitions/SkuResource" + "$ref": "#/definitions/ResourceTypeRegistration" + } + }, + "201": { + "description": "Resource 'ResourceTypeRegistration' create operation succeeded", + "schema": { + "$ref": "#/definitions/ResourceTypeRegistration" + }, + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "description": "A link to the status monitor" + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } - } + }, + "x-ms-examples": { + "DirectResourceTypeRegistrations_CreateOrUpdate.json": { + "$ref": "./examples/DirectResourceTypeRegistrations_CreateOrUpdate.json" + }, + "ResourceTypeRegistrations_CreateOrUpdate": { + "$ref": "./examples/ResourceTypeRegistrations_CreateOrUpdate.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation", + "final-state-schema": "#/definitions/ResourceTypeRegistration" + }, + "x-ms-long-running-operation": true }, "delete": { + "operationId": "ResourceTypeRegistrations_Delete", "tags": [ - "ResourceTypeSku" - ], - "description": "Deletes a resource type sku.", - "operationId": "Skus_DeleteNestedResourceTypeThird", - "produces": [ - "application/json" + "ResourceTypeRegistrations" ], + "description": "Deletes a resource type", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ProviderNamespaceParameter" - }, - { - "$ref": "#/parameters/GetResourceTypeParameter" - }, - { - "$ref": "#/parameters/NestedResourceTypeFirstParameter" - }, - { - "$ref": "#/parameters/NestedResourceTypeSecondParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NestedResourceTypeThirdParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/SkuParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "Skus_DeleteNestedResourceTypeThird": { - "$ref": "./examples/Skus_DeleteNestedResourceTypeThird.json" - } - }, "responses": { - "200": { - "description": "Successfully deleted the resource type sku." + "202": { + "description": "Resource deletion accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } }, "204": { "description": "Resource does not exist." }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } - } + }, + "x-ms-examples": { + "ResourceTypeRegistrations_Delete": { + "$ref": "./examples/ResourceTypeRegistrations_Delete.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/skus": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/resourcetypeRegistrations/{nestedResourceTypeSecond}/resourcetypeRegistrations/{nestedResourceTypeThird}/skus": { "get": { + "operationId": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird", "tags": [ - "ResourceTypeSku" + "SkuResourceOperationGroup" ], "description": "Gets the list of skus for the given resource type.", - "operationId": "Skus_ListByResourceTypeRegistrations", - "produces": [ - "application/json" - ], "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/GetResourceTypeParameter" + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "nestedResourceTypeFirst", + "in": "path", + "description": "The first child resource type.", + "required": true, + "type": "string" + }, + { + "name": "nestedResourceTypeSecond", + "in": "path", + "description": "The second child resource type.", + "required": true, + "type": "string" + }, + { + "name": "nestedResourceTypeThird", + "in": "path", + "description": "The third child resource type.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "Skus_ListByResourceTypeRegistrations": { - "$ref": "./examples/Skus_ListByResourceTypeRegistrations.json" - } - }, "responses": { "200": { - "description": "SUccessfully retrieved the resource type skus.", + "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/SkuResourceArrayResponseWithContinuation" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, + "x-ms-examples": { + "Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird": { + "$ref": "./examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird.json" + } + }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/skus": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/resourcetypeRegistrations/{nestedResourceTypeSecond}/resourcetypeRegistrations/{nestedResourceTypeThird}/skus/{sku}": { "get": { + "operationId": "Skus_GetNestedResourceTypeThird", "tags": [ - "ResourceTypeSku" - ], - "description": "Gets the list of skus for the given resource type.", - "operationId": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst", - "produces": [ - "application/json" + "SkuResourceOperationGroup" ], + "description": "Gets the sku details for the given resource type and sku name.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/GetResourceTypeParameter" + "name": "nestedResourceTypeFirst", + "in": "path", + "description": "The first child resource type.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/NestedResourceTypeFirstParameter" + "name": "nestedResourceTypeSecond", + "in": "path", + "description": "The second child resource type.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "nestedResourceTypeThird", + "in": "path", + "description": "The third child resource type.", + "required": true, + "type": "string" + }, + { + "name": "sku", + "in": "path", + "description": "The SKU.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst": { - "$ref": "./examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst.json" - } - }, "responses": { "200": { - "description": "SUccessfully retrieved the resource type skus.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/SkuResourceArrayResponseWithContinuation" + "$ref": "#/definitions/SkuResource" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" + "x-ms-examples": { + "Skus_GetNestedResourceTypeThird": { + "$ref": "./examples/Skus_GetNestedResourceTypeThird.json" + } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/resourcetypeRegistrations/{nestedResourceTypeSecond}/skus": { - "get": { + }, + "put": { + "operationId": "Skus_CreateOrUpdateNestedResourceTypeThird", "tags": [ - "ResourceTypeSku" - ], - "description": "Gets the list of skus for the given resource type.", - "operationId": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond", - "produces": [ - "application/json" + "SkuResourceOperationGroup" ], + "description": "Creates or updates the resource type skus in the given resource type.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" + }, + { + "name": "nestedResourceTypeFirst", + "in": "path", + "description": "The first child resource type.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/GetResourceTypeParameter" + "name": "nestedResourceTypeSecond", + "in": "path", + "description": "The second child resource type.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/NestedResourceTypeFirstParameter" + "name": "nestedResourceTypeThird", + "in": "path", + "description": "The third child resource type.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/NestedResourceTypeSecondParameter" + "name": "sku", + "in": "path", + "description": "The SKU.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "properties", + "in": "body", + "description": "The required body parameters supplied to the resource sku operation.", + "required": true, + "schema": { + "$ref": "#/definitions/SkuResource" + } } ], - "x-ms-examples": { - "Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond": { - "$ref": "./examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond.json" - } - }, "responses": { "200": { - "description": "SUccessfully retrieved the resource type skus.", + "description": "Resource 'SkuResource' update operation succeeded", "schema": { - "$ref": "#/definitions/SkuResourceArrayResponseWithContinuation" + "$ref": "#/definitions/SkuResource" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" + "x-ms-examples": { + "Skus_CreateOrUpdateNestedResourceTypeThird": { + "$ref": "./examples/Skus_CreateOrUpdateNestedResourceTypeThird.json" + } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/resourcetypeRegistrations/{nestedResourceTypeSecond}/resourcetypeRegistrations/{nestedResourceTypeThird}/skus": { - "get": { + }, + "delete": { + "operationId": "Skus_DeleteNestedResourceTypeThird", "tags": [ - "ResourceTypeSku" - ], - "description": "Gets the list of skus for the given resource type.", - "operationId": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird", - "produces": [ - "application/json" + "SkuResourceOperationGroup" ], + "description": "Deletes a resource type sku.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/GetResourceTypeParameter" + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/NestedResourceTypeFirstParameter" + "name": "nestedResourceTypeFirst", + "in": "path", + "description": "The first child resource type.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/NestedResourceTypeSecondParameter" + "name": "nestedResourceTypeSecond", + "in": "path", + "description": "The second child resource type.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/NestedResourceTypeThirdParameter" + "name": "nestedResourceTypeThird", + "in": "path", + "description": "The third child resource type.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "sku", + "in": "path", + "description": "The SKU.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird": { - "$ref": "./examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeThird.json" - } - }, "responses": { "200": { - "description": "SUccessfully retrieved the resource type skus.", - "schema": { - "$ref": "#/definitions/SkuResourceArrayResponseWithContinuation" - } + "description": "Resource deleted successfully." + }, + "204": { + "description": "Resource does not exist." }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" + "x-ms-examples": { + "Skus_DeleteNestedResourceTypeThird": { + "$ref": "./examples/Skus_DeleteNestedResourceTypeThird.json" + } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourceActions/{resourceActionName}/deleteResources": { - "post": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/resourcetypeRegistrations/{nestedResourceTypeSecond}/skus": { + "get": { + "operationId": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond", "tags": [ - "ResourceActions" - ], - "description": "Deletes resources.", - "operationId": "ResourceActions_DeleteResources", - "produces": [ - "application/json" + "SkuResourceOperations" ], + "description": "Gets the list of skus for the given resource type.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/ResourceActionParameter" + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" }, { - "name": "properties", - "in": "body", + "name": "nestedResourceTypeFirst", + "in": "path", + "description": "The first child resource type.", "required": true, - "schema": { - "$ref": "#/definitions/ResourceManagementAction" - }, - "description": "The properties supplied to the DeleteResources operation." + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "nestedResourceTypeSecond", + "in": "path", + "description": "The second child resource type.", + "required": true, + "type": "string" } ], "responses": { - "202": { - "description": "Resource management action started.", - "headers": { - "Location": { - "type": "string" - } + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/SkuResourceArrayResponseWithContinuation" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { - "ResourceActions_DeleteResources": { - "$ref": "./examples/ResourceActions_DeleteResources.json" + "Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond": { + "$ref": "./examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeSecond.json" } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/authorizedApplications/{applicationId}": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/resourcetypeRegistrations/{nestedResourceTypeSecond}/skus/{sku}": { "get": { + "operationId": "Skus_GetNestedResourceTypeSecond", "tags": [ - "AuthorizedApplication" - ], - "description": "Gets the authorized application details.", - "operationId": "AuthorizedApplications_Get", - "produces": [ - "application/json" + "SkuResourceOperations" ], + "description": "Gets the sku details for the given resource type and sku name.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" + }, + { + "name": "nestedResourceTypeFirst", + "in": "path", + "description": "The first child resource type.", + "required": true, + "type": "string" + }, + { + "name": "nestedResourceTypeSecond", + "in": "path", + "description": "The second child resource type.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/ApplicationIdParameter" + "name": "sku", + "in": "path", + "description": "The SKU.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "AuthorizedApplications_Get": { - "$ref": "./examples/AuthorizedApplications_Get.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the authorized application details.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/AuthorizedApplication" + "$ref": "#/definitions/SkuResource" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "Skus_GetNestedResourceTypeSecond": { + "$ref": "./examples/Skus_GetNestedResourceTypeSecond.json" + } } }, "put": { + "operationId": "Skus_CreateOrUpdateNestedResourceTypeSecond", "tags": [ - "AuthorizedApplication" - ], - "description": "Creates or updates the authorized application.", - "operationId": "AuthorizedApplications_CreateOrUpdate", - "produces": [ - "application/json" + "SkuResourceOperations" ], + "description": "Creates or updates the resource type skus in the given resource type.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" + }, + { + "name": "nestedResourceTypeFirst", + "in": "path", + "description": "The first child resource type.", + "required": true, + "type": "string" + }, + { + "name": "nestedResourceTypeSecond", + "in": "path", + "description": "The second child resource type.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/ApplicationIdParameter" + "name": "sku", + "in": "path", + "description": "The SKU.", + "required": true, + "type": "string" }, { "name": "properties", "in": "body", + "description": "The required body parameters supplied to the resource sku operation.", "required": true, "schema": { - "$ref": "#/definitions/AuthorizedApplication" - }, - "description": "The authorized application properties supplied to the CreateOrUpdate operation." - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "$ref": "#/definitions/SkuResource" + } } ], - "x-ms-examples": { - "AuthorizedApplications_CreateOrUpdate": { - "$ref": "./examples/AuthorizedApplications_CreateOrUpdate.json" - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" - }, "responses": { "200": { - "description": "Successfully updated the authorized application.", - "schema": { - "$ref": "#/definitions/AuthorizedApplication" - } - }, - "201": { - "description": "Successfully created the authorized application.", + "description": "Resource 'SkuResource' update operation succeeded", "schema": { - "$ref": "#/definitions/AuthorizedApplication" + "$ref": "#/definitions/SkuResource" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "Skus_CreateOrUpdateNestedResourceTypeSecond": { + "$ref": "./examples/Skus_CreateOrUpdateNestedResourceTypeSecond.json" + } } }, "delete": { + "operationId": "Skus_DeleteNestedResourceTypeSecond", "tags": [ - "AuthorizedApplication" - ], - "description": "Deletes an authorized application.", - "operationId": "AuthorizedApplications_Delete", - "produces": [ - "application/json" + "SkuResourceOperations" ], + "description": "Deletes a resource type sku.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "nestedResourceTypeFirst", + "in": "path", + "description": "The first child resource type.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/ApplicationIdParameter" + "name": "nestedResourceTypeSecond", + "in": "path", + "description": "The second child resource type.", + "required": true, + "type": "string" + }, + { + "name": "sku", + "in": "path", + "description": "The SKU.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "AuthorizedApplications_Delete": { - "$ref": "./examples/AuthorizedApplications_Delete.json" - } - }, "responses": { "200": { - "description": "Successfully deleted the authorized application." + "description": "Resource deleted successfully." }, "204": { "description": "Resource does not exist." }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "Skus_DeleteNestedResourceTypeSecond": { + "$ref": "./examples/Skus_DeleteNestedResourceTypeSecond.json" + } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/authorizedApplications": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/skus": { "get": { + "operationId": "Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst", "tags": [ - "AuthorizedApplication" - ], - "description": "Gets the list of the authorized applications in the provider namespace.", - "operationId": "AuthorizedApplications_List", - "produces": [ - "application/json" + "Skus" ], + "description": "Gets the list of skus for the given resource type.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" + }, + { + "name": "nestedResourceTypeFirst", + "in": "path", + "description": "The first child resource type.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "AuthorizedApplications_List": { - "$ref": "./examples/AuthorizedApplications_List.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the authorized applications.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/AuthorizedApplicationArrayResponseWithContinuation" + "$ref": "#/definitions/SkuResourceArrayResponseWithContinuation" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, + "x-ms-examples": { + "Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst": { + "$ref": "./examples/Skus_ListByResourceTypeRegistrationsNestedResourceTypeFirst.json" + } + }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ProviderHub/providerMonitorSettings/{providerMonitorSettingName}": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/resourcetypeRegistrations/{nestedResourceTypeFirst}/skus/{sku}": { "get": { + "operationId": "Skus_GetNestedResourceTypeFirst", "tags": [ - "ProviderMonitorSetting" - ], - "description": "Gets the provider monitor setting details.", - "operationId": "ProviderMonitorSettings_Get", - "produces": [ - "application/json" + "Skus" ], + "description": "Gets the sku details for the given resource type and sku name.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/ProviderMonitorSettingNameParameter" + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "nestedResourceTypeFirst", + "in": "path", + "description": "The first child resource type.", + "required": true, + "type": "string" + }, + { + "name": "sku", + "in": "path", + "description": "The SKU.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "ProviderMonitorSettings_Get": { - "$ref": "./examples/ProviderMonitorSettings_Get.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the provider monitor setting.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/ProviderMonitorSetting" + "$ref": "#/definitions/SkuResource" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "Skus_GetNestedResourceTypeFirst": { + "$ref": "./examples/Skus_GetNestedResourceTypeFirst.json" + } } }, "put": { + "operationId": "Skus_CreateOrUpdateNestedResourceTypeFirst", "tags": [ - "ProviderMonitorSetting" - ], - "description": "Creates the provider monitor setting.", - "operationId": "ProviderMonitorSettings_Create", - "produces": [ - "application/json" + "Skus" ], + "description": "Creates or updates the resource type skus in the given resource type.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/ProviderMonitorSettingNameParameter" + "name": "nestedResourceTypeFirst", + "in": "path", + "description": "The first child resource type.", + "required": true, + "type": "string" + }, + { + "name": "sku", + "in": "path", + "description": "The SKU.", + "required": true, + "type": "string" }, { "name": "properties", "in": "body", + "description": "The required body parameters supplied to the resource sku operation.", "required": true, "schema": { - "$ref": "#/definitions/ProviderMonitorSetting" - }, - "description": "The provider monitor setting properties supplied to the create operation." - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "$ref": "#/definitions/SkuResource" + } } ], - "x-ms-examples": { - "ProviderMonitorSettings_Create": { - "$ref": "./examples/ProviderMonitorSettings_Create.json" - } - }, "responses": { "200": { - "description": "Successfully updated the provider monitor setting.", - "schema": { - "$ref": "#/definitions/ProviderMonitorSetting" - } - }, - "201": { - "description": "Successfully created the provider monitor setting.", + "description": "Resource 'SkuResource' update operation succeeded", "schema": { - "$ref": "#/definitions/ProviderMonitorSetting" + "$ref": "#/definitions/SkuResource" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" - } - }, - "patch": { - "tags": [ - "ProviderMonitorSetting" - ], - "description": "Updates the provider monitor setting properties as specified in the request body. Update fails if the specified provider monitor setting does not already exist.", - "operationId": "ProviderMonitorSettings_Update", - "produces": [ - "application/json" - ], - "parameters": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ProviderMonitorSettingNameParameter" - }, - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" - } - ], "x-ms-examples": { - "ProviderMonitorSettings_Update": { - "$ref": "./examples/ProviderMonitorSettings_Update.json" - } - }, - "responses": { - "200": { - "description": "Successfully updated the provider monitor setting.", - "schema": { - "$ref": "#/definitions/ProviderMonitorSetting" - } - }, - "default": { - "description": "Error", - "schema": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" - } + "Skus_CreateOrUpdateNestedResourceTypeFirst": { + "$ref": "./examples/Skus_CreateOrUpdateNestedResourceTypeFirst.json" } } }, "delete": { + "operationId": "Skus_DeleteNestedResourceTypeFirst", "tags": [ - "ProviderMonitorSetting" - ], - "description": "Deletes a provider monitor setting.", - "operationId": "ProviderMonitorSettings_Delete", - "produces": [ - "application/json" + "Skus" ], + "description": "Deletes a resource type sku.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/ProviderMonitorSettingNameParameter" + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "nestedResourceTypeFirst", + "in": "path", + "description": "The first child resource type.", + "required": true, + "type": "string" + }, + { + "name": "sku", + "in": "path", + "description": "The SKU.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "ProviderMonitorSettings_Delete": { - "$ref": "./examples/ProviderMonitorSettings_Delete.json" - } - }, "responses": { "200": { - "description": "Successfully deleted the provider monitor setting." + "description": "Resource deleted successfully." }, "204": { "description": "Resource does not exist." }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "Skus_DeleteNestedResourceTypeFirst": { + "$ref": "./examples/Skus_DeleteNestedResourceTypeFirst.json" + } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ProviderHub/providerMonitorSettings": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/skus": { "get": { + "operationId": "Skus_ListByResourceTypeRegistrations", "tags": [ - "ProviderMonitorSetting" - ], - "description": "Gets the list of the provider monitor settings in the resource group.", - "operationId": "ProviderMonitorSettings_ListByResourceGroup", - "produces": [ - "application/json" + "SkuResources" ], + "description": "Gets the list of skus for the given resource type.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "ProviderMonitorSettings_ListByResourceGroup": { - "$ref": "./examples/ProviderMonitorSettings_ListByResourceGroup.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the provider monitor settings.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/ProviderMonitorSettingArrayResponseWithContinuation" + "$ref": "#/definitions/SkuResourceArrayResponseWithContinuation" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, + "x-ms-examples": { + "Skus_ListByResourceTypeRegistrations": { + "$ref": "./examples/Skus_ListByResourceTypeRegistrations.json" + } + }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerMonitorSettings": { + "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/resourcetypeRegistrations/{resourceType}/skus/{sku}": { "get": { + "operationId": "Skus_Get", "tags": [ - "ProviderMonitorSetting" - ], - "description": "Gets the list of the provider monitor settings in the subscription.", - "operationId": "ProviderMonitorSettings_ListBySubscription", - "produces": [ - "application/json" + "SkuResources" ], + "description": "Gets the sku details for the given resource type and sku name.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" + }, + { + "name": "sku", + "in": "path", + "description": "The SKU.", + "required": true, + "type": "string" } ], - "x-ms-examples": { - "ProviderMonitorSettings_ListBySubscription": { - "$ref": "./examples/ProviderMonitorSettings_ListBySubscription.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the provider monitor settings.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/ProviderMonitorSettingArrayResponseWithContinuation" + "$ref": "#/definitions/SkuResource" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" + "x-ms-examples": { + "Skus_Get": { + "$ref": "./examples/Skus_Get.json" + } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/generateNewRegionFrontloadManifest": { - "post": { + }, + "put": { + "operationId": "Skus_CreateOrUpdate", "tags": [ - "NewRegionFrontloadRelease" - ], - "description": "Generates the new region frontload manifest.", - "operationId": "NewRegionFrontloadRelease_GenerateManifest", - "produces": [ - "application/json" + "SkuResources" ], + "description": "Creates or updates the resource type skus in the given resource type.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" + }, + { + "name": "sku", + "in": "path", + "description": "The SKU.", + "required": true, + "type": "string" }, { "name": "properties", "in": "body", + "description": "The required body parameters supplied to the resource sku operation.", "required": true, "schema": { - "$ref": "#/definitions/FrontloadPayload" + "$ref": "#/definitions/SkuResource" } } ], + "responses": { + "200": { + "description": "Resource 'SkuResource' update operation succeeded", + "schema": { + "$ref": "#/definitions/SkuResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + }, "x-ms-examples": { - "NewRegionFrontloadRelease_GenerateManifest": { - "$ref": "./examples/NewRegionFrontloadRelease_GenerateManifest.json" + "Skus_CreateOrUpdate": { + "$ref": "./examples/Skus_CreateOrUpdate.json" + } + } + }, + "delete": { + "operationId": "Skus_Delete", + "tags": [ + "SkuResources" + ], + "description": "Deletes a resource type sku.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "providerNamespace", + "in": "path", + "description": "The name of the resource provider hosted within ProviderHub.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The resource type.", + "required": true, + "type": "string" + }, + { + "name": "sku", + "in": "path", + "description": "The SKU.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Resource deleted successfully." + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } } }, + "x-ms-examples": { + "Skus_Delete": { + "$ref": "./examples/Skus_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ProviderHub/providerMonitorSettings": { + "get": { + "operationId": "ProviderMonitorSettings_ListByResourceGroup", + "tags": [ + "ProviderMonitorSettings" + ], + "description": "Gets the list of the provider monitor settings in the resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + } + ], "responses": { "200": { - "description": "Manifest generated.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/ResourceProviderManifest" + "$ref": "#/definitions/ProviderMonitorSettingArrayResponseWithContinuation" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "ProviderMonitorSettings_ListByResourceGroup": { + "$ref": "./examples/ProviderMonitorSettings_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/newRegionFrontloadRelease/{releaseName}": { - "put": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ProviderHub/providerMonitorSettings/{providerMonitorSettingName}": { + "get": { + "operationId": "ProviderMonitorSettings_Get", "tags": [ - "NewRegionFrontloadRelease" - ], - "description": "Creates or updates a new region frontload release.", - "operationId": "NewRegionFrontloadRelease_CreateOrUpdate", - "produces": [ - "application/json" + "ProviderMonitorSettings" ], + "description": "Gets the provider monitor setting details.", "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + }, { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "#/parameters/ReleaseNameParameter" + "name": "providerMonitorSettingName", + "in": "path", + "description": "The name of the provider monitor setting.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/ProviderMonitorSetting" + } }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ProviderMonitorSettings_Get": { + "$ref": "./examples/ProviderMonitorSettings_Get.json" + } + } + }, + "put": { + "operationId": "ProviderMonitorSettings_Create", + "tags": [ + "ProviderMonitorSettings" + ], + "description": "Creates the provider monitor setting.", + "parameters": [ { "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "providerMonitorSettingName", + "in": "path", + "description": "The name of the provider monitor setting.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$" + }, { "name": "properties", "in": "body", + "description": "The provider monitor setting properties supplied to the create operation.", "required": true, "schema": { - "$ref": "#/definitions/FrontloadPayload" + "$ref": "#/definitions/ProviderMonitorSetting" } } ], - "x-ms-examples": { - "NewRegionFrontloadRelease_CreateOrUpdate": { - "$ref": "./examples/NewRegionFrontloadRelease_CreateOrUpdate.json" - } - }, "responses": { "200": { - "description": "New region frontload release started successfully.", + "description": "Resource 'ProviderMonitorSetting' update operation succeeded", "schema": { - "$ref": "#/definitions/DefaultRollout" + "$ref": "#/definitions/ProviderMonitorSetting" } }, "201": { - "description": "New region frontload release completed successfully.", + "description": "Resource 'ProviderMonitorSetting' create operation succeeded", "schema": { - "$ref": "#/definitions/DefaultRollout" + "$ref": "#/definitions/ProviderMonitorSetting" + }, + "headers": { + "Azure-AsyncOperation": { + "type": "string", + "description": "A link to the status monitor" + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } - } + }, + "x-ms-examples": { + "ProviderMonitorSettings_Create": { + "$ref": "./examples/ProviderMonitorSettings_Create.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation", + "final-state-schema": "#/definitions/ProviderMonitorSetting" + }, + "x-ms-long-running-operation": true }, - "get": { + "patch": { + "operationId": "ProviderMonitorSettings_Update", "tags": [ - "NewRegionFrontloadRelease" - ], - "description": "Gets a new region frontload release.", - "operationId": "NewRegionFrontloadRelease_Get", - "produces": [ - "application/json" + "ProviderMonitorSettings" ], + "description": "Updates the provider monitor setting properties as specified in the request body. Update fails if the specified provider monitor setting does not already exist.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ReleaseNameParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "providerMonitorSettingName", + "in": "path", + "description": "The name of the provider monitor setting.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$" } ], - "x-ms-examples": { - "NewRegionFrontloadRelease_Get": { - "$ref": "./examples/NewRegionFrontloadRelease_Get.json" - } - }, "responses": { "200": { - "description": "Successfully retrieved the new region frontload release details.", + "description": "Azure operation completed successfully.", "schema": { - "$ref": "#/definitions/DefaultRollout" + "$ref": "#/definitions/ProviderMonitorSetting" } }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "ProviderMonitorSettings_Update": { + "$ref": "./examples/ProviderMonitorSettings_Update.json" + } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.ProviderHub/providerRegistrations/{providerNamespace}/newRegionFrontloadRelease/{releaseName}/stop": { - "post": { + }, + "delete": { + "operationId": "ProviderMonitorSettings_Delete", "tags": [ - "NewRegionFrontloadRelease" - ], - "description": "Stops a new region frontload release.", - "operationId": "NewRegionFrontloadRelease_Stop", - "produces": [ - "application/json" + "ProviderMonitorSettings" ], + "description": "Deletes a provider monitor setting.", "parameters": [ { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ProviderNamespaceParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ReleaseNameParameter" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter" + "name": "providerMonitorSettingName", + "in": "path", + "description": "The name of the provider monitor setting.", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$" } ], - "x-ms-examples": { - "NewRegionFrontloadRelease_Stop": { - "$ref": "./examples/NewRegionFrontloadRelease_Stop.json" - } - }, "responses": { "200": { - "description": "Successfully cancelled the new region frontload release." + "description": "Resource deleted successfully." + }, + "204": { + "description": "Resource does not exist." }, "default": { - "description": "Error", + "description": "An unexpected error response.", "schema": { "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse" } } + }, + "x-ms-examples": { + "ProviderMonitorSettings_Delete": { + "$ref": "./examples/ProviderMonitorSettings_Delete.json" + } } } } }, "definitions": { - "ProvisioningState": { + "AdditionalAuthorization": { + "type": "object", + "properties": { + "applicationId": { + "type": "string" + }, + "roleDefinitionId": { + "type": "string" + } + } + }, + "AdditionalOptions": { + "type": "string", + "description": "The additional options.", "enum": [ - "NotSpecified", - "Accepted", - "Running", - "Creating", - "Created", - "Deleting", - "Deleted", - "Canceled", - "Failed", - "Succeeded", - "MovingResources", - "TransientFailure", - "RolloutInProgress" + "ProtectedAsyncOperationPolling", + "ProtectedAsyncOperationPollingAuditOnly" ], - "type": "string", - "readOnly": true, "x-ms-enum": { - "name": "ProvisioningState", - "modelAsString": true + "name": "AdditionalOptions", + "modelAsString": true, + "values": [ + { + "name": "ProtectedAsyncOperationPolling", + "value": "ProtectedAsyncOperationPolling" + }, + { + "name": "ProtectedAsyncOperationPollingAuditOnly", + "value": "ProtectedAsyncOperationPollingAuditOnly" + } + ] } }, - "QuotaPolicy": { + "AdditionalOptionsAsyncOperation": { + "type": "string", + "description": "The additional options.", "enum": [ - "Default", - "None", - "Restricted" + "ProtectedAsyncOperationPolling", + "ProtectedAsyncOperationPollingAuditOnly" ], + "x-ms-enum": { + "name": "AdditionalOptionsAsyncOperation", + "modelAsString": true, + "values": [ + { + "name": "ProtectedAsyncOperationPolling", + "value": "ProtectedAsyncOperationPolling" + }, + { + "name": "ProtectedAsyncOperationPollingAuditOnly", + "value": "ProtectedAsyncOperationPollingAuditOnly" + } + ] + } + }, + "AdditionalOptionsResourceTypeRegistration": { "type": "string", + "description": "The additional options.", + "enum": [ + "ProtectedAsyncOperationPolling", + "ProtectedAsyncOperationPollingAuditOnly" + ], "x-ms-enum": { - "name": "QuotaPolicy", - "modelAsString": true + "name": "AdditionalOptionsResourceTypeRegistration", + "modelAsString": true, + "values": [ + { + "name": "ProtectedAsyncOperationPolling", + "value": "ProtectedAsyncOperationPolling" + }, + { + "name": "ProtectedAsyncOperationPollingAuditOnly", + "value": "ProtectedAsyncOperationPollingAuditOnly" + } + ] } }, - "TrafficRegions": { + "AllowedResourceName": { "type": "object", "properties": { - "regions": { - "type": "array", - "items": { - "type": "string" - } + "name": { + "type": "string", + "description": "Resource name." + }, + "getActionVerb": { + "type": "string", + "description": "Get action verb." } } }, - "CustomRolloutSpecification": { + "AllowedUnauthorizedActionsExtension": { "type": "object", "properties": { - "autoProvisionConfig": { - "type": "object", - "properties": { - "storage": { - "type": "boolean" - }, - "resourceGraph": { - "type": "boolean" - } - }, - "description": "The auto provisioning configuration." - }, - "canary": { - "allOf": [ - { - "$ref": "#/definitions/TrafficRegions" - } - ], - "description": "The canary region configuration." - }, - "releaseScopes": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of ARM regions scoped for the release." - }, - "refreshSubscriptionRegistration": { - "type": "boolean", - "description": "Whether refreshing subscription registration is enabled or disabled." - }, - "skipReleaseScopeValidation": { - "type": "boolean", - "description": "Whether release scope validation should be skipped." - }, - "providerRegistration": { - "allOf": [ - { - "$ref": "#/definitions/ProviderRegistration" - } - ], - "description": "The provider registration." + "action": { + "type": "string", + "description": "The action." }, - "resourceTypeRegistrations": { - "type": "array", - "items": { - "$ref": "#/definitions/ResourceTypeRegistration" - }, - "description": "The resource type registrations." + "intent": { + "$ref": "#/definitions/Intent", + "description": "The intent." } } }, - "TypedErrorInfo": { - "required": [ - "type" - ], + "ApiProfile": { "type": "object", - "description": "Error information.", "properties": { - "type": { + "profileVersion": { "type": "string", - "description": "The type of the error." + "description": "Profile version." }, - "info": { - "type": "object", - "description": "The error information.", - "readOnly": true + "apiVersion": { + "type": "string", + "description": "Api version." } } }, - "ExtendedErrorInfo": { + "ApplicationDataAuthorization": { "type": "object", - "description": "Error information.", "properties": { - "code": { - "description": "The error code.", - "type": "string" - }, - "target": { - "description": "The target of the error.", - "type": "string" - }, - "message": { - "description": "The error message.", - "type": "string" - }, - "details": { - "description": "The error details.", - "type": "array", - "items": { - "$ref": "#/definitions/ExtendedErrorInfo" - }, - "x-ms-identifiers": [ - "code" - ] + "role": { + "$ref": "#/definitions/Role", + "description": "The ownership role the application has on the resource types. The service owner role gives the application owner permissions. The limited owner role gives elevated permissions but does not allow all the permissions of a service owner, such as read/write on internal metadata." }, - "additionalInfo": { - "description": "The additional error information.", + "resourceTypes": { "type": "array", + "description": "The resource types from the defined resource types in the provider namespace that the application can access. If no resource types are specified and the role is service owner, the default is * which is all resource types", "items": { - "$ref": "#/definitions/TypedErrorInfo" - }, - "x-ms-identifiers": [ - "type" - ] + "type": "string" + } } - } + }, + "required": [ + "role" + ] }, - "CheckinManifestParams": { + "ApplicationProviderAuthorization": { "type": "object", "properties": { - "environment": { + "roleDefinitionId": { "type": "string", - "description": "The environment supplied to the checkin manifest operation." + "description": "The role definition ID for the application." }, - "baselineArmManifestLocation": { + "managedByRoleDefinitionId": { "type": "string", - "description": "The baseline ARM manifest location supplied to the checkin manifest operation." + "description": "The managed by role definition ID for the application." } - }, - "required": [ - "baselineArmManifestLocation", - "environment" - ] + } }, - "RolloutStatusBase": { + "AsyncOperationPollingRules": { "type": "object", "properties": { - "completedRegions": { + "authorizationActions": { "type": "array", + "description": "The authorization actions.", "items": { "type": "string" - }, - "description": "The completed regions." + } }, - "failedOrSkippedRegions": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ExtendedErrorInfo" - }, - "description": "The failed or skipped regions." + "additionalOptions": { + "$ref": "#/definitions/AdditionalOptionsAsyncOperation", + "description": "The additional options." } } }, - "CustomRolloutProperties": { + "AsyncTimeoutRule": { "type": "object", - "required": [ - "specification" - ], "properties": { - "provisioningState": { - "$ref": "#/definitions/ProvisioningState", - "description": "The provisioned state of the resource." - }, - "specification": { - "allOf": [ - { - "$ref": "#/definitions/CustomRolloutSpecification" - } - ], - "description": "The specification." + "actionName": { + "type": "string" }, - "status": { - "allOf": [ - { - "$ref": "#/definitions/CustomRolloutStatus" - } - ], - "description": "The status." + "timeout": { + "type": "string", + "description": "This is a TimeSpan property" } } }, - "CustomRollout": { - "type": "object", - "required": [ - "properties" + "AuthenticationScheme": { + "type": "string", + "description": "The authentication scheme.", + "enum": [ + "PoP", + "Bearer" ], - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource" + "x-ms-enum": { + "name": "AuthenticationScheme", + "modelAsString": true, + "values": [ + { + "name": "PoP", + "value": "PoP" + }, + { + "name": "Bearer", + "value": "Bearer" + } + ] + } + }, + "AuthorizationActionMapping": { + "type": "object", + "properties": { + "original": { + "type": "string", + "description": "The original action name." + }, + "desired": { + "type": "string", + "description": "The desired action name." } - ], + } + }, + "AuthorizedApplication": { + "type": "object", + "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.", "properties": { "properties": { - "$ref": "#/definitions/CustomRolloutProperties", - "description": "Properties of the rollout." - }, - "systemData": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/systemData", - "readOnly": true + "$ref": "#/definitions/AuthorizedApplicationProperties" } }, - "x-ms-azure-resource": true + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource" + } + ] }, - "CustomRolloutArrayResponseWithContinuation": { + "AuthorizedApplicationArrayResponseWithContinuation": { "type": "object", + "description": "Paged collection of AuthorizedApplication items", "properties": { "value": { "type": "array", + "description": "The AuthorizedApplication items on this page", "items": { - "$ref": "#/definitions/CustomRollout" + "$ref": "#/definitions/AuthorizedApplication" } }, "nextLink": { - "description": "The URL to get to the next set of results, if there are any.", - "type": "string" + "type": "string", + "format": "uri", + "description": "The link to the next page of items" } - } + }, + "required": [ + "value" + ] }, - "TrafficRegionRolloutConfiguration": { - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/TrafficRegions" - } - ], - "properties": { - "waitDuration": { - "format": "duration", - "type": "string", - "description": "The wait duration." - } - } - }, - "ExpeditedRolloutDefinition": { - "type": "object", - "properties": { - "enabled": { - "description": "Indicates whether expedited rollout is enabled/disabled", - "type": "boolean" - } - } - }, - "DefaultRolloutSpecification": { + "AuthorizedApplicationProperties": { "type": "object", "properties": { - "expeditedRollout": { - "allOf": [ - { - "$ref": "#/definitions/ExpeditedRolloutDefinition" - } - ], - "description": "The expedited rollout definition." - }, - "canary": { - "allOf": [ - { - "$ref": "#/definitions/CanaryTrafficRegionRolloutConfiguration" - } - ], - "description": "The canary traffic region configuration." - }, - "lowTraffic": { - "allOf": [ - { - "$ref": "#/definitions/TrafficRegionRolloutConfiguration" - } - ], - "description": "The low traffic region configuration." - }, - "mediumTraffic": { - "allOf": [ - { - "$ref": "#/definitions/TrafficRegionRolloutConfiguration" - } - ], - "description": "The medium traffic region configuration." - }, - "highTraffic": { - "allOf": [ - { - "$ref": "#/definitions/TrafficRegionRolloutConfiguration" - } - ], - "description": "The high traffic region configuration." - }, - "restOfTheWorldGroupOne": { - "allOf": [ - { - "$ref": "#/definitions/TrafficRegionRolloutConfiguration" - } - ], - "description": "The rest of the world group one region configuration." - }, - "restOfTheWorldGroupTwo": { - "allOf": [ - { - "$ref": "#/definitions/TrafficRegionRolloutConfiguration" - } - ], - "description": "The rest of the world group two region configuration." - }, - "providerRegistration": { - "allOf": [ - { - "$ref": "#/definitions/ProviderRegistration" - } - ], - "description": "The provider registration." + "providerAuthorization": { + "$ref": "#/definitions/ApplicationProviderAuthorization" }, - "resourceTypeRegistrations": { + "dataAuthorizations": { "type": "array", + "description": "The authorizations that determine the level of data access permissions on the specified resource types.", "items": { - "$ref": "#/definitions/ResourceTypeRegistration" + "$ref": "#/definitions/ApplicationDataAuthorization" }, - "description": "The resource type registrations." + "x-ms-identifiers": [ + "role" + ] }, - "autoProvisionConfig": { - "type": "object", - "properties": { - "storage": { - "type": "boolean", - "description": "Whether auto provisioning for storage is enabled." - }, - "resourceGraph": { - "type": "boolean", - "description": "Whether auto provisioning for resource graph is enabled." - } - }, - "description": "The auto provisioning config." + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioning state.", + "readOnly": true } } }, - "DefaultRolloutStatus": { - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/RolloutStatusBase" - } + "AvailabilityZonePolicy": { + "type": "string", + "enum": [ + "NotSpecified", + "SingleZoned", + "MultiZoned" ], - "properties": { - "nextTrafficRegion": { - "enum": [ - "NotSpecified", - "Canary", - "LowTraffic", - "MediumTraffic", - "HighTraffic", - "None", - "RestOfTheWorldGroupOne", - "RestOfTheWorldGroupTwo" - ], - "type": "string", - "description": "The next traffic region.", - "x-ms-enum": { - "name": "TrafficRegionCategory", - "modelAsString": true - } - }, - "nextTrafficRegionScheduledTime": { - "format": "date-time", - "type": "string", - "description": "The next traffic region scheduled time." - }, - "subscriptionReregistrationResult": { - "enum": [ - "NotApplicable", - "ConditionalUpdate", - "ForcedUpdate", - "Failed" - ], - "type": "string", - "x-ms-enum": { - "name": "SubscriptionReregistrationResult", - "modelAsString": true + "x-ms-enum": { + "name": "AvailabilityZonePolicy", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" }, - "description": "The subscription reregistration result." - }, - "manifestCheckinStatus": { - "allOf": [ - { - "$ref": "#/definitions/CheckinManifestInfo" - } - ], - "description": "The manifest checkin status." - } + { + "name": "SingleZoned", + "value": "SingleZoned" + }, + { + "name": "MultiZoned", + "value": "MultiZoned" + } + ] } }, - "DefaultRolloutProperties": { - "type": "object", - "properties": { - "provisioningState": { - "$ref": "#/definitions/ProvisioningState", - "description": "The provisioned state of the resource." - }, - "specification": { - "allOf": [ - { - "$ref": "#/definitions/DefaultRolloutSpecification" - } - ], - "description": "The default rollout specification." - }, - "status": { - "allOf": [ - { - "$ref": "#/definitions/DefaultRolloutStatus" - } - ], - "description": "The default rollout status." - } + "AvailableCheckInManifestEnvironment": { + "type": "string", + "description": "The environment type.", + "enum": [ + "NotSpecified", + "Canary", + "Prod", + "All", + "Mooncake", + "Fairfax" + ], + "x-ms-enum": { + "name": "AvailableCheckInManifestEnvironment", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "Canary", + "value": "Canary" + }, + { + "name": "Prod", + "value": "Prod" + }, + { + "name": "All", + "value": "All" + }, + { + "name": "Mooncake", + "value": "Mooncake" + }, + { + "name": "Fairfax", + "value": "Fairfax" + } + ] } }, - "DefaultRollout": { - "type": "object", - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource" - } + "BlockActionVerb": { + "type": "string", + "description": "The action verb that will be blocked when the resource group is locked during move.", + "enum": [ + "NotSpecified", + "Read", + "Write", + "Action", + "Delete", + "Unrecognized" ], - "properties": { - "properties": { - "$ref": "#/definitions/DefaultRolloutProperties", - "description": "Properties of the rollout." - }, - "systemData": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/systemData", - "readOnly": true - } - }, - "x-ms-azure-resource": true + "x-ms-enum": { + "name": "BlockActionVerb", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "Read", + "value": "Read" + }, + { + "name": "Write", + "value": "Write" + }, + { + "name": "Action", + "value": "Action" + }, + { + "name": "Delete", + "value": "Delete" + }, + { + "name": "Unrecognized", + "value": "Unrecognized" + } + ] + } }, - "DefaultRolloutArrayResponseWithContinuation": { + "CanaryTrafficRegionRolloutConfiguration": { "type": "object", "properties": { - "value": { + "skipRegions": { "type": "array", + "description": "The skip regions.", "items": { - "$ref": "#/definitions/DefaultRollout" + "type": "string" } }, - "nextLink": { - "description": "The URL to get to the next set of results, if there are any.", - "type": "string" + "regions": { + "type": "array", + "description": "The regions.", + "items": { + "type": "string" + } } } }, - "ResourceProviderAuthentication": { - "required": [ - "allowedAudiences" + "CapacityPolicy": { + "type": "string", + "description": "Capacity policy.", + "enum": [ + "Default", + "Restricted" ], + "x-ms-enum": { + "name": "CapacityPolicy", + "modelAsString": true, + "values": [ + { + "name": "Default", + "value": "Default" + }, + { + "name": "Restricted", + "value": "Restricted" + } + ] + } + }, + "CheckNameAvailabilitySpecifications": { "type": "object", "properties": { - "allowedAudiences": { + "enableDefaultValidation": { + "type": "boolean", + "description": "Whether default validation is enabled." + }, + "resourceTypesWithCustomValidation": { "type": "array", + "description": "The resource types with custom validation.", "items": { "type": "string" - }, - "description": "The allowed audiences." + } } } }, - "ResourceProviderAuthorization": { + "CheckinManifestInfo": { "type": "object", "properties": { - "applicationId": { - "description": "The application id.", - "type": "string" + "isCheckedIn": { + "type": "boolean", + "description": "Whether the manifest is checked in." }, - "roleDefinitionId": { - "description": "The role definition id.", - "type": "string" + "statusMessage": { + "type": "string", + "description": "The status message." }, - "managedByRoleDefinitionId": { - "description": "The managed by role definition id.", - "type": "string" - }, - "managedByAuthorization": { - "type": "object", - "description": "Managed by authorization.", - "properties": { - "additionalAuthorizations": { - "type": "array", - "items": { - "$ref": "#/definitions/AdditionalAuthorization", - "description": "The additional authorizations." - }, - "x-ms-identifiers": [ - "applicationId", - "roleDefinitionId" - ] - }, - "managedByResourceRoleDefinitionId": { - "type": "string", - "description": "The managed by resource role definition ID for the application." - }, - "allowManagedByInheritance": { - "type": "boolean", - "description": "Indicates whether the managed by resource role definition ID should be inherited." - } - } - }, - "allowedThirdPartyExtensions": { - "type": "array", - "items": { - "$ref": "#/definitions/ThirdPartyExtension" - }, - "x-ms-identifiers": [ - "name" - ], - "description": "The allowed third party extensions." - }, - "groupingTag": { - "type": "string", - "description": "The grouping tag." - } - } - }, - "ApplicationProviderAuthorization": { - "type": "object", - "properties": { - "roleDefinitionId": { + "pullRequest": { "type": "string", - "description": "The role definition ID for the application." + "description": "The pull request." }, - "managedByRoleDefinitionId": { + "commitId": { "type": "string", - "description": "The managed by role definition ID for the application." + "description": "The commit id." } - } + }, + "required": [ + "isCheckedIn", + "statusMessage" + ] }, - "ResourceProviderService": { + "CheckinManifestParams": { "type": "object", "properties": { - "serviceName": { + "environment": { "type": "string", - "description": "The service name." + "description": "The environment supplied to the checkin manifest operation." }, - "status": { - "enum": [ - "Active", - "Inactive" - ], + "baselineArmManifestLocation": { "type": "string", - "x-ms-enum": { - "name": "ServiceStatus", - "modelAsString": true - }, - "description": "The status." + "description": "The baseline ARM manifest location supplied to the checkin manifest operation." } }, - "description": "Resource provider service." - }, - "ApplicationDataAuthorization": { "required": [ - "role" + "environment", + "baselineArmManifestLocation" + ] + }, + "CommonApiVersionsMergeMode": { + "type": "string", + "description": "Common api versions merge mode.", + "enum": [ + "Merge", + "Overwrite" ], - "type": "object", - "properties": { - "role": { - "enum": [ - "ServiceOwner", - "LimitedOwner" - ], - "type": "string", - "description": "The ownership role the application has on the resource types. The service owner role gives the application owner permissions. The limited owner role gives elevated permissions but does not allow all the permissions of a service owner, such as read/write on internal metadata.", - "x-ms-enum": { - "name": "Role", - "modelAsString": true + "x-ms-enum": { + "name": "CommonApiVersionsMergeMode", + "modelAsString": true, + "values": [ + { + "name": "Merge", + "value": "Merge" + }, + { + "name": "Overwrite", + "value": "Overwrite" } - }, - "resourceTypes": { - "type": "array", - "description": "The resource types from the defined resource types in the provider namespace that the application can access. If no resource types are specified and the role is service owner, the default is * which is all resource types", - "items": { - "type": "string" + ] + } + }, + "CreatedByType": { + "type": "string", + "description": "The type of identity that created the resource.", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ], + "x-ms-enum": { + "name": "CreatedByType", + "modelAsString": true, + "values": [ + { + "name": "User", + "value": "User" + }, + { + "name": "Application", + "value": "Application" + }, + { + "name": "ManagedIdentity", + "value": "ManagedIdentity" + }, + { + "name": "Key", + "value": "Key" } - } + ] } }, - "FeaturesRule": { - "required": [ - "requiredFeaturesPolicy" + "CrossTenantTokenValidation": { + "type": "string", + "description": "The cross tenant token validation.", + "enum": [ + "EnsureSecureValidation", + "PassthroughInsecureToken" ], - "type": "object", - "properties": { - "requiredFeaturesPolicy": { - "description": "The required feature policy.", - "enum": [ - "Any", - "All" - ], - "type": "string", - "x-ms-enum": { - "name": "FeaturesPolicy", - "modelAsString": true + "x-ms-enum": { + "name": "CrossTenantTokenValidation", + "modelAsString": true, + "values": [ + { + "name": "EnsureSecureValidation", + "value": "EnsureSecureValidation" + }, + { + "name": "PassthroughInsecureToken", + "value": "PassthroughInsecureToken" } - } + ] } }, - "RequestHeaderOptions": { + "CustomRollout": { "type": "object", + "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.", "properties": { - "optInHeaders": { - "enum": [ - "NotSpecified", - "SignedUserToken", - "ClientGroupMembership", - "SignedAuxiliaryTokens", - "UnboundedClientGroupMembership", - "PrivateLinkId", - "PrivateLinkResourceId", - "ManagementGroupAncestorsEncoded", - "PrivateLinkVnetTrafficTag", - "ResourceGroupLocation", - "ClientPrincipalNameEncoded", - "MSIResourceIdEncoded" - ], - "type": "string", - "x-ms-enum": { - "name": "OptInHeaderType", - "modelAsString": true - }, - "description": "The opt in headers." - }, - "optOutHeaders": { - "enum": [ - "NotSpecified", - "SystemDataCreatedByLastModifiedBy" - ], - "type": "string", - "x-ms-enum": { - "name": "OptOutHeaderType", - "modelAsString": true - }, - "description": "The opt out headers." + "properties": { + "$ref": "#/definitions/CustomRolloutProperties", + "description": "Properties of the rollout." } - } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource" + } + ] }, - "PrivateResourceProviderConfiguration": { + "CustomRolloutArrayResponseWithContinuation": { "type": "object", + "description": "Paged collection of CustomRollout items", "properties": { - "allowedSubscriptions": { + "value": { "type": "array", + "description": "The CustomRollout items on this page", "items": { - "type": "string" - }, - "x-ms-identifiers": [], - "description": "The allowed subscriptions." + "$ref": "#/definitions/CustomRollout" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" } - } + }, + "required": [ + "value" + ] }, - "AuthorizationActionMapping": { + "CustomRolloutProperties": { "type": "object", "properties": { - "original": { - "type": "string", - "description": "The original action name." + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource.", + "readOnly": true }, - "desired": { - "type": "string", - "description": "The desired action name." + "specification": { + "$ref": "#/definitions/CustomRolloutPropertiesSpecification", + "description": "The specification." + }, + "status": { + "$ref": "#/definitions/CustomRolloutPropertiesStatus", + "description": "The status." } - } + }, + "required": [ + "specification" + ] }, - "AllowedUnauthorizedActionsExtension": { + "CustomRolloutPropertiesSpecification": { "type": "object", - "properties": { - "action": { - "type": "string", - "description": "The action." - }, - "intent": { - "description": "The intent.", - "enum": [ - "NOT_SPECIFIED", - "LOW_PRIVILEGE", - "DEFERRED_ACCESS_CHECK", - "RP_CONTRACT" - ], - "type": "string", - "x-ms-enum": { - "name": "Intent", - "modelAsString": true, - "values": [ - { - "value": "NOT_SPECIFIED", - "description": "Default value." - }, - { - "value": "LOW_PRIVILEGE", - "description": "Data is not sensitive and ok to access." - }, - { - "value": "DEFERRED_ACCESS_CHECK", - "description": "Used for RP's using a custom authorization check outside of ARM." - }, - { - "value": "RP_CONTRACT", - "description": "RP contract allows certain operations to be unauthorized action." - } - ] - } + "description": "The specification.", + "allOf": [ + { + "$ref": "#/definitions/CustomRolloutSpecification" } - } + ] }, - "LinkedAccessCheck": { + "CustomRolloutPropertiesStatus": { "type": "object", - "properties": { - "actionName": { - "description": "The action name.", - "type": "string" - }, - "linkedProperty": { - "description": "The linked property.", - "type": "string" - }, - "linkedAction": { - "description": "The linked action.", - "type": "string" - }, - "linkedActionVerb": { - "description": "The linked action verb.", - "type": "string" - }, - "linkedType": { - "description": "The linked type.", - "type": "string" + "description": "The status.", + "allOf": [ + { + "$ref": "#/definitions/CustomRolloutStatus" } - } + ] }, - "LoggingHiddenPropertyPath": { + "CustomRolloutSpecification": { "type": "object", "properties": { - "hiddenPathsOnRequest": { - "description": "The hidden paths on request.", - "type": "array", - "items": { - "type": "string" - } + "autoProvisionConfig": { + "$ref": "#/definitions/CustomRolloutSpecificationAutoProvisionConfig", + "description": "The auto provisioning configuration." }, - "hiddenPathsOnResponse": { - "description": "The hidden paths on response.", + "canary": { + "$ref": "#/definitions/CustomRolloutSpecificationCanary", + "description": "The canary region configuration." + }, + "releaseScopes": { "type": "array", + "description": "The list of ARM regions scoped for the release.", "items": { "type": "string" } - } - } - }, - "LoggingRule": { - "required": [ - "action", - "detailLevel", - "direction" - ], - "type": "object", - "properties": { - "action": { - "description": "The action.", - "type": "string" }, - "direction": { - "description": "The direction.", - "enum": [ - "None", - "Request", - "Response" - ], - "type": "string", - "x-ms-enum": { - "name": "LoggingDirections", - "modelAsString": true - } + "refreshSubscriptionRegistration": { + "type": "boolean", + "description": "Whether refreshing subscription registration is enabled or disabled." }, - "detailLevel": { - "description": "The detail level.", - "enum": [ - "None", - "Body" - ], - "type": "string", - "x-ms-enum": { - "name": "LoggingDetails", - "modelAsString": true - } + "skipReleaseScopeValidation": { + "type": "boolean", + "description": "Whether release scope validation should be skipped." }, - "hiddenPropertyPaths": { - "description": "The hidden property paths.", - "allOf": [ - { - "$ref": "#/definitions/LoggingHiddenPropertyPath" - } - ] + "providerRegistration": { + "$ref": "#/definitions/CustomRolloutSpecificationProviderRegistration", + "description": "The provider registration." + }, + "resourceTypeRegistrations": { + "type": "array", + "description": "The resource type registrations.", + "items": { + "$ref": "#/definitions/ResourceTypeRegistration" + } } } }, - "ThrottlingMetric": { - "required": [ - "limit", - "type" - ], + "CustomRolloutSpecificationAutoProvisionConfig": { "type": "object", + "description": "The auto provisioning configuration.", "properties": { - "type": { - "description": "The throttling metric type", - "enum": [ - "NotSpecified", - "NumberOfRequests", - "NumberOfResources" - ], - "type": "string", - "x-ms-enum": { - "name": "ThrottlingMetricType", - "modelAsString": true - } - }, - "limit": { - "description": "The limit.", - "format": "int64", - "type": "integer" + "storage": { + "type": "boolean" }, - "interval": { - "description": "The interval.", - "format": "duration", - "type": "string" + "resourceGraph": { + "type": "boolean" } } }, - "ThrottlingRule": { - "required": [ - "action", - "metrics" - ], + "CustomRolloutSpecificationCanary": { "type": "object", - "properties": { - "action": { - "description": "The action.", - "type": "string" - }, - "metrics": { - "description": "The metrics.", - "type": "array", - "items": { - "$ref": "#/definitions/ThrottlingMetric" - }, - "x-ms-identifiers": [] - }, - "requiredFeatures": { - "description": "The required features.", - "type": "array", - "items": { - "type": "string" - } - }, - "applicationId": { - "description": "The application id.", - "type": "array", - "items": { - "type": "string" - } + "description": "The canary region configuration.", + "allOf": [ + { + "$ref": "#/definitions/TrafficRegions" } - } + ] }, - "ResourceProviderEndpoint": { + "CustomRolloutSpecificationProviderRegistration": { + "type": "object", + "description": "The provider registration.", + "allOf": [ + { + "$ref": "#/definitions/ProviderRegistration" + } + ] + }, + "CustomRolloutStatus": { "type": "object", "properties": { - "enabled": { - "description": "Whether the endpoint is enabled.", - "type": "boolean" - }, - "apiVersions": { - "description": "The api versions.", - "type": "array", - "items": { - "type": "string" - } - }, - "endpointUri": { - "description": "The endpoint uri.", - "type": "string" - }, - "locations": { - "description": "The locations.", - "type": "array", - "items": { - "type": "string" - } - }, - "requiredFeatures": { - "description": "The required features.", + "completedRegions": { "type": "array", + "description": "The completed regions.", "items": { "type": "string" } }, - "featuresRule": { - "description": "The feature rules.", - "allOf": [ - { - "$ref": "#/definitions/FeaturesRule" - } - ] - }, - "timeout": { - "description": "The timeout.", - "format": "duration", - "type": "string" - }, - "endpointType": { - "description": "The endpoint type.", - "enum": [ - "NotSpecified", - "Canary", - "Production", - "TestInProduction" - ], - "type": "string", - "x-ms-enum": { - "name": "EndpointType", - "modelAsString": true + "failedOrSkippedRegions": { + "type": "object", + "description": "The failed or skipped regions.", + "additionalProperties": { + "$ref": "#/definitions/ExtendedErrorInfo" } }, - "skuLink": { - "description": "The sku link.", - "type": "string" + "manifestCheckinStatus": { + "$ref": "#/definitions/CustomRolloutStatusManifestCheckinStatus", + "description": "The manifest checkin status." } } }, - "IdentityManagementProperties": { + "CustomRolloutStatusManifestCheckinStatus": { "type": "object", - "properties": { - "type": { - "description": "The type.", - "enum": [ - "NotSpecified", - "SystemAssigned", - "UserAssigned", - "Actor", - "DelegatedResourceIdentity" - ], - "type": "string", - "x-ms-enum": { - "name": "IdentityManagementTypes", - "modelAsString": true - } - }, - "applicationId": { - "description": "The application id.", - "type": "string" - }, - "applicationIds": { - "description": "The application ids.", - "type": "array", - "items": { - "type": "string" + "description": "The manifest checkin status.", + "allOf": [ + { + "$ref": "#/definitions/CheckinManifestInfo" + } + ] + }, + "DataBoundary": { + "type": "string", + "description": "The data boundary.", + "enum": [ + "NotDefined", + "Global", + "EU", + "US" + ], + "x-ms-enum": { + "name": "DataBoundary", + "modelAsString": true, + "values": [ + { + "name": "NotDefined", + "value": "NotDefined" }, - "x-ms-identifiers": [] - }, - "delegationAppIds": { - "description": "The delegation app ids.", - "type": "array", - "items": { - "type": "string" + { + "name": "Global", + "value": "Global" }, - "x-ms-identifiers": [] - } + { + "name": "EU", + "value": "EU" + }, + { + "name": "US", + "value": "US" + } + ] } }, - "IdentityManagement": { + "DefaultRollout": { "type": "object", + "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.", "properties": { - "type": { - "description": "The type.", - "enum": [ - "NotSpecified", - "SystemAssigned", - "UserAssigned", - "Actor", - "DelegatedResourceIdentity" - ], - "type": "string", - "x-ms-enum": { - "name": "IdentityManagementTypes", - "modelAsString": true - } + "properties": { + "$ref": "#/definitions/DefaultRolloutProperties", + "description": "Properties of the rollout." } - } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource" + } + ] }, - "SubscriptionStateRule": { + "DefaultRolloutArrayResponseWithContinuation": { "type": "object", + "description": "Paged collection of DefaultRollout items", "properties": { - "state": { - "description": "The subscription state.", - "enum": [ - "NotDefined", - "Enabled", - "Warned", - "PastDue", - "Disabled", - "Deleted" - ], - "type": "string", - "x-ms-enum": { - "name": "SubscriptionState", - "modelAsString": true - } - }, - "allowedActions": { - "description": "The allowed actions.", + "value": { "type": "array", + "description": "The DefaultRollout items on this page", "items": { - "type": "string" + "$ref": "#/definitions/DefaultRollout" } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" } - } + }, + "required": [ + "value" + ] }, - "CustomRolloutStatus": { + "DefaultRolloutProperties": { "type": "object", "properties": { - "completedRegions": { - "description": "The completed regions.", - "type": "array", - "items": { - "type": "string" - } + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource.", + "readOnly": true }, - "failedOrSkippedRegions": { - "description": "The failed or skipped regions.", - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ExtendedErrorInfo" - } + "specification": { + "$ref": "#/definitions/DefaultRolloutPropertiesSpecification", + "description": "The default rollout specification." }, - "manifestCheckinStatus": { - "description": "The manifest checkin status.", - "allOf": [ - { - "$ref": "#/definitions/CheckinManifestInfo" - } - ] + "status": { + "$ref": "#/definitions/DefaultRolloutPropertiesStatus", + "description": "The default rollout status." } } }, - "CanaryTrafficRegionRolloutConfiguration": { + "DefaultRolloutPropertiesSpecification": { "type": "object", - "properties": { - "skipRegions": { - "description": "The skip regions.", - "type": "array", - "items": { - "type": "string" - } + "description": "The default rollout specification.", + "allOf": [ + { + "$ref": "#/definitions/DefaultRolloutSpecification" + } + ] + }, + "DefaultRolloutPropertiesStatus": { + "type": "object", + "description": "The default rollout status.", + "allOf": [ + { + "$ref": "#/definitions/DefaultRolloutStatus" + } + ] + }, + "DefaultRolloutSpecification": { + "type": "object", + "properties": { + "expeditedRollout": { + "$ref": "#/definitions/DefaultRolloutSpecificationExpeditedRollout", + "description": "The expedited rollout definition." }, - "regions": { - "description": "The regions.", + "canary": { + "$ref": "#/definitions/DefaultRolloutSpecificationCanary", + "description": "The canary traffic region configuration." + }, + "lowTraffic": { + "$ref": "#/definitions/TrafficRegionRolloutConfigurationProperties", + "description": "The low traffic region configuration." + }, + "mediumTraffic": { + "$ref": "#/definitions/TrafficRegionRolloutConfigurationProperties", + "description": "The medium traffic region configuration." + }, + "highTraffic": { + "$ref": "#/definitions/TrafficRegionRolloutConfigurationProperties", + "description": "The high traffic region configuration." + }, + "restOfTheWorldGroupOne": { + "$ref": "#/definitions/TrafficRegionRolloutConfigurationProperties", + "description": "The rest of the world group one region configuration." + }, + "restOfTheWorldGroupTwo": { + "$ref": "#/definitions/TrafficRegionRolloutConfigurationProperties", + "description": "The rest of the world group two region configuration." + }, + "providerRegistration": { + "$ref": "#/definitions/DefaultRolloutSpecificationProviderRegistration", + "description": "The provider registration." + }, + "resourceTypeRegistrations": { "type": "array", + "description": "The resource type registrations.", "items": { - "type": "string" + "$ref": "#/definitions/ResourceTypeRegistration" } + }, + "autoProvisionConfig": { + "$ref": "#/definitions/DefaultRolloutSpecificationAutoProvisionConfig", + "description": "The auto provisioning config." } } }, - "ServiceTreeInfo": { + "DefaultRolloutSpecificationAutoProvisionConfig": { "type": "object", + "description": "The auto provisioning config.", "properties": { - "serviceId": { - "description": "The service id.", - "type": "string" + "storage": { + "type": "boolean", + "description": "Whether auto provisioning for storage is enabled." }, - "componentId": { - "description": "The component id.", - "type": "string" + "resourceGraph": { + "type": "boolean", + "description": "Whether auto provisioning for resource graph is enabled." + } + } + }, + "DefaultRolloutSpecificationCanary": { + "type": "object", + "description": "The canary traffic region configuration.", + "allOf": [ + { + "$ref": "#/definitions/CanaryTrafficRegionRolloutConfiguration" + } + ] + }, + "DefaultRolloutSpecificationExpeditedRollout": { + "type": "object", + "description": "The expedited rollout definition.", + "allOf": [ + { + "$ref": "#/definitions/ExpeditedRolloutDefinition" + } + ] + }, + "DefaultRolloutSpecificationProviderRegistration": { + "type": "object", + "description": "The provider registration.", + "allOf": [ + { + "$ref": "#/definitions/ProviderRegistration" + } + ] + }, + "DefaultRolloutStatus": { + "type": "object", + "properties": { + "nextTrafficRegion": { + "$ref": "#/definitions/TrafficRegionCategory", + "description": "The next traffic region." }, - "readiness": { - "description": "The readiness.", - "enum": [ - "ClosingDown", - "Deprecated", - "GA", - "InDevelopment", - "InternalOnly", - "PrivatePreview", - "PublicPreview", - "RemovedFromARM", - "Retired" - ], + "nextTrafficRegionScheduledTime": { "type": "string", - "x-ms-enum": { - "name": "Readiness", - "modelAsString": true + "format": "date-time", + "description": "The next traffic region scheduled time." + }, + "subscriptionReregistrationResult": { + "$ref": "#/definitions/SubscriptionReregistrationResult", + "description": "The subscription reregistration result." + }, + "manifestCheckinStatus": { + "$ref": "#/definitions/DefaultRolloutStatusManifestCheckinStatus", + "description": "The manifest checkin status." + } + }, + "allOf": [ + { + "$ref": "#/definitions/RolloutStatusBase" + } + ] + }, + "DefaultRolloutStatusManifestCheckinStatus": { + "type": "object", + "description": "The manifest checkin status.", + "allOf": [ + { + "$ref": "#/definitions/CheckinManifestInfo" + } + ] + }, + "DeleteDependency": { + "type": "object", + "properties": { + "requiredFeatures": { + "type": "array", + "description": "Required features.", + "items": { + "type": "string" } + }, + "linkedProperty": { + "type": "string", + "description": "Linked property." + }, + "linkedType": { + "type": "string", + "description": "Linked type." } } }, - "TemplateDeploymentPolicy": { - "required": [ - "capabilities", - "preflightOptions" - ], + "DstsConfiguration": { "type": "object", "properties": { - "capabilities": { - "description": "The capabilities.", - "enum": [ - "Default", - "Preflight" - ], + "serviceName": { "type": "string", - "x-ms-enum": { - "name": "TemplateDeploymentCapabilities", - "modelAsString": true - } + "description": "The service name." }, - "preflightOptions": { - "description": "The preflight options.", - "enum": [ - "None", - "ValidationRequests", - "DeploymentRequests", - "TestOnly", - "RegisteredOnly" - ], + "serviceDnsName": { "type": "string", - "x-ms-enum": { - "name": "TemplateDeploymentPreflightOptions", - "modelAsString": true - } + "description": "This is a URI property." + } + }, + "required": [ + "serviceName" + ] + }, + "DstsConfigurationProperties": { + "type": "object", + "description": "The dsts configuration.", + "allOf": [ + { + "$ref": "#/definitions/DstsConfiguration" + } + ] + }, + "EndpointInformation": { + "type": "object", + "properties": { + "endpoint": { + "type": "string", + "description": "The endpoint." }, - "preflightNotifications": { - "description": "The preflight notifications.", + "endpointType": { + "$ref": "#/definitions/NotificationEndpointType", + "description": "The endpoint type." + }, + "schemaVersion": { "type": "string", - "enum": [ - "None", - "UnregisteredSubscriptions" - ], - "x-ms-enum": { - "name": "TemplateDeploymentPreflightNotifications", - "modelAsString": true - } + "description": "The schema version." } } }, - "ExtendedLocationType": { + "EndpointType": { "type": "string", - "description": "The extended location type.", + "description": "The endpoint type.", "enum": [ "NotSpecified", - "CustomLocation", - "EdgeZone", - "ArcZone" + "Canary", + "Production", + "TestInProduction" ], "x-ms-enum": { - "name": "ExtendedLocationType", + "name": "EndpointType", "modelAsString": true, "values": [ { - "description": "The extended location type is not specified.", + "name": "NotSpecified", "value": "NotSpecified" }, { - "description": "The extended location type is custom location.", - "value": "CustomLocation" + "name": "Canary", + "value": "Canary" }, { - "description": "The extended location type is edge zone.", - "value": "EdgeZone" + "name": "Production", + "value": "Production" }, { - "description": "The extended location type is arc zone.", - "value": "ArcZone" + "name": "TestInProduction", + "value": "TestInProduction" } ] } }, - "ExtendedLocationOptions": { - "type": "object", - "properties": { - "type": { - "$ref": "#/definitions/ExtendedLocationType", - "description": "The type." - }, - "supportedPolicy": { - "enum": [ - "NotSpecified", - "All" - ], - "type": "string", - "x-ms-enum": { - "name": "ResourceTypeExtendedLocationPolicy", - "modelAsString": true + "EndpointTypeResourceType": { + "type": "string", + "description": "The endpoint type.", + "enum": [ + "NotSpecified", + "Canary", + "Production", + "TestInProduction" + ], + "x-ms-enum": { + "name": "EndpointTypeResourceType", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "Canary", + "value": "Canary" + }, + { + "name": "Production", + "value": "Production" + }, + { + "name": "TestInProduction", + "value": "TestInProduction" } - } + ] } }, - "LinkedOperationRule": { - "required": [ - "linkedAction", - "linkedOperation" - ], + "ExpeditedRolloutDefinition": { "type": "object", "properties": { - "linkedOperation": { - "description": "The linked operation.", - "enum": [ - "None", - "CrossResourceGroupResourceMove", - "CrossSubscriptionResourceMove" - ], - "type": "string", - "x-ms-enum": { - "name": "LinkedOperation", - "modelAsString": true - } - }, - "linkedAction": { - "description": "The linked action.", - "enum": [ - "NotSpecified", - "Blocked", - "Validate", - "Enabled" - ], - "type": "string", - "x-ms-enum": { - "name": "LinkedAction", - "modelAsString": true - } - }, - "dependsOnTypes": { - "description": "Depends on types.", - "type": "array", - "items": { - "type": "string" - } + "enabled": { + "type": "boolean", + "description": "Indicates whether expedited rollout is enabled/disabled" } } }, - "RoutingType": { + "ExpeditedRolloutIntent": { "type": "string", - "description": "The routing type.", + "description": "Expedited rollout intent.", "enum": [ - "Default", - "ProxyOnly", - "HostBased", - "Extension", - "Tenant", - "Fanout", - "LocationBased", - "Failover", - "CascadeExtension", - "ChildFanout", - "CascadeAuthorizedExtension", - "BypassEndpointSelectionOptimization", - "LocationMapping", - "ServiceFanout" + "NotSpecified", + "Hotfix" ], "x-ms-enum": { - "name": "RoutingType", + "name": "ExpeditedRolloutIntent", "modelAsString": true, "values": [ { - "description": "The resource routing type is default.", - "value": "Default" - }, - { - "description": "The resource routing type is proxy only.", - "value": "ProxyOnly" - }, - { - "description": "The resource routing type is host based.", - "value": "HostBased" + "name": "NotSpecified", + "value": "NotSpecified" }, { - "description": "The resource routing type is extension.", - "value": "Extension" - }, + "name": "Hotfix", + "value": "Hotfix" + } + ] + } + }, + "ExtendedErrorInfo": { + "type": "object", + "description": "Error information.", + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the error." + }, + "message": { + "type": "string", + "description": "The error message." + }, + "details": { + "type": "array", + "description": "The error details.", + "items": { + "$ref": "#/definitions/ExtendedErrorInfo" + }, + "x-ms-identifiers": [ + "code" + ] + }, + "additionalInfo": { + "type": "array", + "description": "The additional error information.", + "items": { + "$ref": "#/definitions/TypedErrorInfo" + }, + "x-ms-identifiers": [ + "type" + ] + } + } + }, + "ExtendedLocationOptions": { + "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/ExtendedLocationType", + "description": "The type." + }, + "supportedPolicy": { + "$ref": "#/definitions/ResourceTypeExtendedLocationPolicy" + } + } + }, + "ExtendedLocationType": { + "type": "string", + "description": "The extended location type.", + "enum": [ + "NotSpecified", + "CustomLocation", + "EdgeZone", + "ArcZone" + ], + "x-ms-enum": { + "name": "ExtendedLocationType", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified", + "description": "The extended location type is not specified." + }, + { + "name": "CustomLocation", + "value": "CustomLocation", + "description": "The extended location type is custom location." + }, + { + "name": "EdgeZone", + "value": "EdgeZone", + "description": "The extended location type is edge zone." + }, + { + "name": "ArcZone", + "value": "ArcZone", + "description": "The extended location type is arc zone." + } + ] + } + }, + "ExtensionCategory": { + "type": "string", + "enum": [ + "NotSpecified", + "ResourceCreationValidate", + "ResourceCreationBegin", + "ResourceCreationCompleted", + "ResourceReadValidate", + "ResourceReadBegin", + "ResourcePatchValidate", + "ResourcePatchCompleted", + "ResourceDeletionValidate", + "ResourceDeletionBegin", + "ResourceDeletionCompleted", + "ResourcePostAction", + "SubscriptionLifecycleNotification", + "ResourcePatchBegin", + "ResourceMoveBegin", + "ResourceMoveCompleted", + "BestMatchOperationBegin", + "SubscriptionLifecycleNotificationDeletion" + ], + "x-ms-enum": { + "name": "ExtensionCategory", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "ResourceCreationValidate", + "value": "ResourceCreationValidate" + }, + { + "name": "ResourceCreationBegin", + "value": "ResourceCreationBegin" + }, + { + "name": "ResourceCreationCompleted", + "value": "ResourceCreationCompleted" + }, + { + "name": "ResourceReadValidate", + "value": "ResourceReadValidate" + }, + { + "name": "ResourceReadBegin", + "value": "ResourceReadBegin" + }, + { + "name": "ResourcePatchValidate", + "value": "ResourcePatchValidate" + }, { - "description": "The resource routing type is tenant.", - "value": "Tenant" + "name": "ResourcePatchCompleted", + "value": "ResourcePatchCompleted" }, { - "description": "The resource routing type is fanout.", - "value": "Fanout" + "name": "ResourceDeletionValidate", + "value": "ResourceDeletionValidate" }, { - "description": "The resource routing type is location based.", - "value": "LocationBased" + "name": "ResourceDeletionBegin", + "value": "ResourceDeletionBegin" }, { - "description": "The resource routing type is failover.", - "value": "Failover" + "name": "ResourceDeletionCompleted", + "value": "ResourceDeletionCompleted" }, { - "description": "The resource routing type is cascade extension.", - "value": "CascadeExtension" + "name": "ResourcePostAction", + "value": "ResourcePostAction" }, { - "description": "The resource routing type is child fanout.", - "value": "ChildFanout" + "name": "SubscriptionLifecycleNotification", + "value": "SubscriptionLifecycleNotification" }, { - "description": "The resource routing type is cascade authorized extension.", - "value": "CascadeAuthorizedExtension" + "name": "ResourcePatchBegin", + "value": "ResourcePatchBegin" }, { - "description": "The resource routing type is bypass endpoint selection optimization.", - "value": "BypassEndpointSelectionOptimization" + "name": "ResourceMoveBegin", + "value": "ResourceMoveBegin" }, { - "description": "The resource routing type is location mapping.", - "value": "LocationMapping" + "name": "ResourceMoveCompleted", + "value": "ResourceMoveCompleted" }, { - "description": "The resource routing type is service fanout.", - "value": "ServiceFanout" + "name": "BestMatchOperationBegin", + "value": "BestMatchOperationBegin" + }, + { + "name": "SubscriptionLifecycleNotificationDeletion", + "value": "SubscriptionLifecycleNotificationDeletion" } ] } }, - "ResourceType": { + "ExtensionOptionType": { + "type": "string", + "enum": [ + "NotSpecified", + "DoNotMergeExistingReadOnlyAndSecretProperties", + "IncludeInternalMetadata" + ], + "x-ms-enum": { + "name": "ExtensionOptionType", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "DoNotMergeExistingReadOnlyAndSecretProperties", + "value": "DoNotMergeExistingReadOnlyAndSecretProperties" + }, + { + "name": "IncludeInternalMetadata", + "value": "IncludeInternalMetadata" + } + ] + } + }, + "ExtensionOptions": { "type": "object", "properties": { - "name": { - "description": "The resource type name.", - "type": "string" - }, - "routingType": { - "$ref": "#/definitions/RoutingType", - "description": "The resource routing type." - }, - "additionalOptions": { - "description": "The additional options.", - "enum": [ - "ProtectedAsyncOperationPolling", - "ProtectedAsyncOperationPollingAuditOnly" - ], - "type": "string", - "x-ms-enum": { - "name": "AdditionalOptions", - "modelAsString": true - } - }, - "crossTenantTokenValidation": { - "description": "The cross tenant token validation.", - "enum": [ - "EnsureSecureValidation", - "PassthroughInsecureToken" - ], - "type": "string", - "x-ms-enum": { - "name": "CrossTenantTokenValidation", - "modelAsString": true - } - }, - "resourceValidation": { - "description": "The resource validation.", - "enum": [ - "NotSpecified", - "ReservedWords", - "ProfaneWords" - ], - "type": "string", - "x-ms-enum": { - "name": "ResourceValidation", - "modelAsString": true - } - }, - "allowedUnauthorizedActions": { - "description": "The allowed unauthorized actions.", + "request": { "type": "array", + "description": "The request.", "items": { - "type": "string" + "$ref": "#/definitions/ExtensionOptionType" } }, - "allowedUnauthorizedActionsExtensions": { - "description": "The allowed unauthorized actions extensions.", + "response": { "type": "array", + "description": "The response.", "items": { - "$ref": "#/definitions/AllowedUnauthorizedActionsExtension" + "$ref": "#/definitions/ExtensionOptionType" } + } + } + }, + "FanoutLinkedNotificationRule": { + "type": "object", + "properties": { + "tokenAuthConfiguration": { + "$ref": "#/definitions/TokenAuthConfiguration", + "description": "The token auth configuration." }, - "authorizationActionMappings": { - "description": "The authorization action mappings.", + "actions": { "type": "array", + "description": "The actions.", "items": { - "$ref": "#/definitions/AuthorizationActionMapping" - }, - "x-ms-identifiers": [ - "original" - ] + "type": "string" + } }, - "linkedAccessChecks": { - "description": "The linked access checks.", + "endpoints": { "type": "array", + "description": "The endpoints.", "items": { - "$ref": "#/definitions/LinkedAccessCheck" + "$ref": "#/definitions/ResourceProviderEndpoint" }, "x-ms-identifiers": [] }, - "defaultApiVersion": { - "description": "The default api version.", - "type": "string" - }, - "loggingRules": { - "description": "The logging rules.", - "type": "array", - "items": { - "$ref": "#/definitions/LoggingRule" + "dstsConfiguration": { + "$ref": "#/definitions/DstsConfigurationProperties", + "description": "The dsts configuration." + } + } + }, + "FeaturesPolicy": { + "type": "string", + "description": "The required feature policy.", + "enum": [ + "Any", + "All" + ], + "x-ms-enum": { + "name": "FeaturesPolicy", + "modelAsString": true, + "values": [ + { + "name": "Any", + "value": "Any" }, - "x-ms-identifiers": [] - }, - "throttlingRules": { - "description": "The throttling rules.", - "type": "array", - "items": { - "$ref": "#/definitions/ThrottlingRule" + { + "name": "All", + "value": "All" + } + ] + } + }, + "FeaturesRule": { + "type": "object", + "properties": { + "requiredFeaturesPolicy": { + "$ref": "#/definitions/FeaturesPolicy", + "description": "The required feature policy." + } + }, + "required": [ + "requiredFeaturesPolicy" + ] + }, + "FeaturesRuleProperties": { + "type": "object", + "description": "The features rule.", + "allOf": [ + { + "$ref": "#/definitions/FeaturesRule" + } + ] + }, + "FilterOption": { + "type": "string", + "description": "Filter option.", + "enum": [ + "NotSpecified", + "EnableSubscriptionFilterOnTenant" + ], + "x-ms-enum": { + "name": "FilterOption", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" }, - "x-ms-identifiers": [] + { + "name": "EnableSubscriptionFilterOnTenant", + "value": "EnableSubscriptionFilterOnTenant" + } + ] + } + }, + "FilterRule": { + "type": "object", + "properties": { + "filterQuery": { + "type": "string", + "description": "The filter query." }, - "endpoints": { - "description": "The endpoints.", + "endpointInformation": { "type": "array", + "description": "The endpoint information.", "items": { - "$ref": "#/definitions/ResourceProviderEndpoint" + "$ref": "#/definitions/EndpointInformation" }, "x-ms-identifiers": [] - }, - "marketplaceType": { - "description": "The marketplace type.", - "enum": [ - "NotSpecified", - "AddOn", - "Bypass", - "Store" - ], - "type": "string", - "x-ms-enum": { - "name": "MarketplaceType" - } - }, - "identityManagement": { - "description": "The identity management.", - "allOf": [ - { - "$ref": "#/definitions/IdentityManagement" - } - ] - }, - "metadata": { - "description": "The metadata.", - "type": "object" - }, - "requiredFeatures": { - "description": "The required features.", - "type": "array", - "items": { - "type": "string" + } + } + }, + "FrontdoorRequestMode": { + "type": "string", + "description": "The frontdoor request mode.", + "enum": [ + "NotSpecified", + "UseManifest" + ], + "x-ms-enum": { + "name": "FrontdoorRequestMode", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "UseManifest", + "value": "UseManifest" } + ] + } + }, + "FrontloadPayload": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/FrontloadPayloadProperties", + "description": "Properties of the frontload payload." + } + }, + "required": [ + "properties" + ] + }, + "FrontloadPayloadProperties": { + "type": "object", + "properties": { + "operationType": { + "type": "string", + "description": "The operation type." }, - "featuresRule": { - "description": "The features rule.", - "allOf": [ - { - "$ref": "#/definitions/FeaturesRule" - } - ] + "providerNamespace": { + "type": "string", + "description": "The provider namespace." }, - "subscriptionStateRules": { - "description": "The subscription state rules.", - "type": "array", - "items": { - "$ref": "#/definitions/SubscriptionStateRule" - }, - "x-ms-identifiers": [] + "frontloadLocation": { + "type": "string", + "description": "The frontload location." }, - "serviceTreeInfos": { - "description": "The service tree infos.", - "type": "array", - "items": { - "$ref": "#/definitions/ServiceTreeInfo" - }, - "x-ms-identifiers": [] + "copyFromLocation": { + "type": "string", + "description": "The copy from location." }, - "requestHeaderOptions": { - "description": "The request header options.", - "allOf": [ - { - "$ref": "#/definitions/RequestHeaderOptions" - } - ] + "environmentType": { + "$ref": "#/definitions/AvailableCheckInManifestEnvironment", + "description": "The environment type." }, - "skuLink": { - "description": "The sku link.", - "type": "string" + "serviceFeatureFlag": { + "$ref": "#/definitions/ServiceFeatureFlagAction", + "description": "The service feature flag." }, - "disallowedActionVerbs": { - "description": "The disallowed action verbs.", + "includeResourceTypes": { "type": "array", + "description": "The resource types to include.", "items": { "type": "string" } }, - "templateDeploymentPolicy": { - "description": "The template deployment policy.", - "allOf": [ - { - "$ref": "#/definitions/TemplateDeploymentPolicy" - } - ] - }, - "extendedLocations": { - "description": "The extended locations.", - "type": "array", - "items": { - "$ref": "#/definitions/ExtendedLocationOptions" - }, - "x-ms-identifiers": [] - }, - "linkedOperationRules": { - "description": "The linked operation rules.", + "excludeResourceTypes": { "type": "array", + "description": "The resource types to exclude.", "items": { - "$ref": "#/definitions/LinkedOperationRule" - }, - "x-ms-identifiers": [] - }, - "resourceDeletionPolicy": { - "description": "The resource deletion policy.", - "enum": [ - "NotSpecified", - "Cascade", - "Force" - ], - "type": "string", - "x-ms-enum": { - "name": "ManifestResourceDeletionPolicy", - "modelAsString": true + "type": "string" } }, - "quotaRule": { - "description": "The quota rule.", - "$ref": "#/definitions/QuotaRule" + "overrideManifestLevelFields": { + "$ref": "#/definitions/FrontloadPayloadPropertiesOverrideManifestLevelFields", + "description": "The manifest level fields to override." }, - "notifications": { - "description": "The notifications.", - "$ref": "#/definitions/Notifications" + "overrideEndpointLevelFields": { + "$ref": "#/definitions/FrontloadPayloadPropertiesOverrideEndpointLevelFields", + "description": "The endpoint level fields to override." }, - "linkedNotificationRules": { - "description": "The linked notification rules.", + "ignoreFields": { "type": "array", + "description": "The fields to ignore.", "items": { - "$ref": "#/definitions/LinkedNotificationRule" - }, - "x-ms-identifiers": [] - }, - "resourceProviderAuthorizationRules": { - "description": "The resource provider authorization rules.", - "$ref": "#/definitions/ResourceProviderAuthorizationRules" + "type": "string" + } } - } + }, + "required": [ + "operationType", + "providerNamespace", + "frontloadLocation", + "copyFromLocation", + "environmentType", + "serviceFeatureFlag", + "includeResourceTypes", + "excludeResourceTypes", + "overrideManifestLevelFields", + "overrideEndpointLevelFields", + "ignoreFields" + ] }, - "ResourceProviderManagement": { + "FrontloadPayloadPropertiesOverrideEndpointLevelFields": { + "type": "object", + "description": "The endpoint level fields to override.", + "allOf": [ + { + "$ref": "#/definitions/ResourceTypeEndpointBase" + } + ] + }, + "FrontloadPayloadPropertiesOverrideManifestLevelFields": { + "type": "object", + "description": "The manifest level fields to override.", + "allOf": [ + { + "$ref": "#/definitions/ManifestLevelPropertyBag" + } + ] + }, + "GroupConnectivityInformation": { "type": "object", "properties": { - "schemaOwners": { - "description": "The schema owners.", - "type": "array", - "items": { - "type": "string" - } + "groupId": { + "type": "string", + "description": "The group id." }, - "manifestOwners": { - "description": "The manifest owners.", + "requiredMembers": { "type": "array", + "description": "List of required members for the group id.", "items": { "type": "string" } }, - "authorizationOwners": { - "description": "The authorization owners.", + "requiredZoneNames": { "type": "array", + "description": "List of required zone names for the group id.", "items": { "type": "string" } }, - "incidentRoutingService": { - "description": "The incident routing service.", - "type": "string" - }, - "incidentRoutingTeam": { - "description": "The incident routing team.", - "type": "string" - }, - "incidentContactEmail": { - "description": "The incident contact email.", - "type": "string" - }, - "serviceTreeInfos": { - "description": "The service tree infos.", - "type": "array", - "items": { - "$ref": "#/definitions/ServiceTreeInfo" - }, - "x-ms-identifiers": [] - }, - "resourceAccessPolicy": { - "description": "The resource access policy.", - "enum": [ - "NotSpecified", - "AcisReadAllowed", - "AcisActionAllowed" - ], + "redirectMapId": { "type": "string", - "x-ms-enum": { - "name": "ResourceAccessPolicy" - } + "description": "The redirect map id." + } + }, + "required": [ + "groupId", + "requiredMembers", + "requiredZoneNames" + ] + }, + "IdentityManagement": { + "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/IdentityManagementTypes", + "description": "The type." + } + } + }, + "IdentityManagementProperties": { + "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/IdentityManagementTypes", + "description": "The type." }, - "resourceAccessRoles": { - "description": "The resource access roles.", - "type": "array", - "items": { - "$ref": "#/definitions/ResourceAccessRole" - }, - "x-ms-identifiers": [] + "applicationId": { + "type": "string", + "description": "The application id." }, - "expeditedRolloutSubmitters": { + "applicationIds": { "type": "array", - "description": "List of expedited rollout submitters.", + "description": "The application ids.", "items": { "type": "string" - }, - "x-ms-identifiers": [] - }, - "errorResponseMessageOptions": { - "type": "object", - "description": "Options for error response messages.", - "properties": { - "serverFailureResponseMessageType": { - "type": "string", - "enum": [ - "NotSpecified", - "OutageReporting" - ], - "description": "Type of server failure response message.", - "x-ms-enum": { - "name": "ServerFailureResponseMessageType", - "modelAsString": true - } - } - } - }, - "expeditedRolloutMetadata": { - "type": "object", - "description": "Metadata for expedited rollout.", - "properties": { - "enabled": { - "type": "boolean", - "description": "Expedited rollout enabled?" - }, - "expeditedRolloutIntent": { - "type": "string", - "enum": [ - "NotSpecified", - "Hotfix" - ], - "description": "Expedited rollout intent.", - "x-ms-enum": { - "name": "ExpeditedRolloutIntent", - "modelAsString": true - } - } } }, - "canaryManifestOwners": { + "delegationAppIds": { "type": "array", - "description": "List of manifest owners for canary.", + "description": "The delegation app ids.", "items": { "type": "string" - }, - "x-ms-identifiers": [] - }, - "pcCode": { - "type": "string", - "description": "The profit center code for the subscription." - }, - "profitCenterProgramId": { - "type": "string", - "description": "The profit center program id for the subscription." + } } } }, - "ResourceProviderCapabilities": { - "required": [ - "effect", - "quotaId" + "IdentityManagementTypes": { + "type": "string", + "description": "The type.", + "enum": [ + "NotSpecified", + "SystemAssigned", + "UserAssigned", + "Actor", + "DelegatedResourceIdentity" + ], + "x-ms-enum": { + "name": "IdentityManagementTypes", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "SystemAssigned", + "value": "SystemAssigned" + }, + { + "name": "UserAssigned", + "value": "UserAssigned" + }, + { + "name": "Actor", + "value": "Actor" + }, + { + "name": "DelegatedResourceIdentity", + "value": "DelegatedResourceIdentity" + } + ] + } + }, + "Intent": { + "type": "string", + "description": "The intent.", + "enum": [ + "NOT_SPECIFIED", + "LOW_PRIVILEGE", + "DEFERRED_ACCESS_CHECK", + "RP_CONTRACT" ], + "x-ms-enum": { + "name": "Intent", + "modelAsString": true, + "values": [ + { + "name": "NOT_SPECIFIED", + "value": "NOT_SPECIFIED", + "description": "Default value." + }, + { + "name": "LOW_PRIVILEGE", + "value": "LOW_PRIVILEGE", + "description": "Data is not sensitive and ok to access." + }, + { + "name": "DEFERRED_ACCESS_CHECK", + "value": "DEFERRED_ACCESS_CHECK", + "description": "Used for RP's using a custom authorization check outside of ARM." + }, + { + "name": "RP_CONTRACT", + "value": "RP_CONTRACT", + "description": "RP contract allows certain operations to be unauthorized action." + } + ] + } + }, + "LegacyDisallowedCondition": { "type": "object", "properties": { - "quotaId": { - "description": "The quota id.", - "type": "string" - }, - "effect": { - "description": "The effect.", - "enum": [ - "NotSpecified", - "Allow", - "Disallow" - ], - "type": "string", - "x-ms-enum": { - "name": "ResourceProviderCapabilitiesEffect", - "modelAsString": true - } - }, - "requiredFeatures": { - "description": "The required features.", + "disallowedLegacyOperations": { "type": "array", + "description": "The disallowed legacy operations.", "items": { - "type": "string" + "$ref": "#/definitions/LegacyOperation" } + }, + "feature": { + "type": "string", + "description": "Feature string." } } }, - "ReRegisterSubscriptionMetadata": { - "required": [ - "enabled" + "LegacyOperation": { + "type": "string", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" ], + "x-ms-enum": { + "name": "LegacyOperation", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "Create", + "value": "Create" + }, + { + "name": "Delete", + "value": "Delete" + }, + { + "name": "Waiting", + "value": "Waiting" + }, + { + "name": "AzureAsyncOperationWaiting", + "value": "AzureAsyncOperationWaiting" + }, + { + "name": "ResourceCacheWaiting", + "value": "ResourceCacheWaiting" + }, + { + "name": "Action", + "value": "Action" + }, + { + "name": "Read", + "value": "Read" + }, + { + "name": "EvaluateDeploymentOutput", + "value": "EvaluateDeploymentOutput" + }, + { + "name": "DeploymentCleanup", + "value": "DeploymentCleanup" + } + ] + } + }, + "LightHouseAuthorization": { "type": "object", "properties": { - "enabled": { - "description": "Whether it's enabled or not.", - "type": "boolean" + "principalId": { + "type": "string", + "description": "The principal id." }, - "concurrencyLimit": { - "description": "The concurrency limit.", - "format": "int32", - "type": "integer" + "roleDefinitionId": { + "type": "string", + "description": "The role definition id." } - } + }, + "required": [ + "principalId", + "roleDefinitionId" + ] }, - "ResourceProviderManifest": { + "LinkedAccessCheck": { "type": "object", "properties": { - "providerAuthentication": { - "description": "The provider authentication.", - "allOf": [ - { - "$ref": "#/definitions/ResourceProviderAuthentication" - } - ] - }, - "providerAuthorizations": { - "description": "The provider authorizations.", - "type": "array", - "items": { - "$ref": "#/definitions/ResourceProviderAuthorization" - }, - "x-ms-identifiers": [] - }, - "namespace": { - "description": "The namespace.", - "type": "string" + "actionName": { + "type": "string", + "description": "The action name." }, - "services": { - "description": "The services.", - "type": "array", - "items": { - "$ref": "#/definitions/ResourceProviderService" - }, - "x-ms-identifiers": [] + "linkedProperty": { + "type": "string", + "description": "The linked property." }, - "serviceName": { - "description": "The service name.", - "type": "string" + "linkedAction": { + "type": "string", + "description": "The linked action." }, - "providerVersion": { - "description": "The provider version.", - "type": "string" + "linkedActionVerb": { + "type": "string", + "description": "The linked action verb." }, - "providerType": { - "description": "The provider type.", - "enum": [ - "NotSpecified", - "Internal", - "External", - "Hidden", - "RegistrationFree", - "LegacyRegistrationRequired", - "TenantOnly", - "AuthorizationFree" - ], + "linkedType": { "type": "string", - "x-ms-enum": { - "name": "ResourceProviderType", - "modelAsString": true + "description": "The linked type." + } + } + }, + "LinkedAction": { + "type": "string", + "description": "The linked action.", + "enum": [ + "NotSpecified", + "Blocked", + "Validate", + "Enabled" + ], + "x-ms-enum": { + "name": "LinkedAction", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "Blocked", + "value": "Blocked" + }, + { + "name": "Validate", + "value": "Validate" + }, + { + "name": "Enabled", + "value": "Enabled" } - }, - "requiredFeatures": { - "description": "The required features.", + ] + } + }, + "LinkedNotificationRule": { + "type": "object", + "properties": { + "actions": { "type": "array", + "description": "The actions.", "items": { "type": "string" } }, - "featuresRule": { - "description": "The features rule.", - "allOf": [ - { - "$ref": "#/definitions/FeaturesRule" - } - ] - }, - "requestHeaderOptions": { - "description": "The request header options.", - "allOf": [ - { - "$ref": "#/definitions/RequestHeaderOptions" - } - ] - }, - "resourceTypes": { - "description": "The resource types.", + "actionsOnFailedOperation": { "type": "array", + "description": "The actions on failed operation.", "items": { - "$ref": "#/definitions/ResourceType" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "management": { - "description": "The resource provider management.", - "allOf": [ - { - "$ref": "#/definitions/ResourceProviderManagement" - } - ] + "type": "string" + } }, - "capabilities": { - "description": "The capabilities.", + "fastPathActions": { "type": "array", + "description": "The fast path actions.", "items": { - "$ref": "#/definitions/ResourceProviderCapabilities" - }, - "x-ms-identifiers": [ - "quotaId" - ] - }, - "crossTenantTokenValidation": { - "description": "The cross tenant token validation.", - "enum": [ - "EnsureSecureValidation", - "PassthroughInsecureToken" - ], - "type": "string", - "x-ms-enum": { - "name": "CrossTenantTokenValidation", - "modelAsString": true + "type": "string" } }, - "metadata": { - "description": "The metadata.", - "type": "object" - }, - "globalNotificationEndpoints": { - "description": "The global notification endpoints.", + "fastPathActionsOnFailedOperation": { "type": "array", + "description": "The fast path action on failed operation.", "items": { - "$ref": "#/definitions/ResourceProviderEndpoint" - }, - "x-ms-identifiers": [] - }, - "reRegisterSubscriptionMetadata": { - "description": "The re-register subscription metadata.", - "allOf": [ - { - "$ref": "#/definitions/ReRegisterSubscriptionMetadata" - } - ] - }, - "enableTenantLinkedNotification": { - "description": "Whether tenant linked notification is enabled.", - "type": "boolean", - "x-nullable": true - }, - "notifications": { - "description": "The notifications.", - "$ref": "#/definitions/Notifications" + "type": "string" + } }, - "linkedNotificationRules": { - "description": "The linked notification rules.", - "type": "array", - "items": { - "$ref": "#/definitions/FanoutLinkedNotificationRule" - }, - "x-ms-identifiers": [] - }, - "resourceProviderAuthorizationRules": { - "description": "The resource provider authorization rules.", - "$ref": "#/definitions/ResourceProviderAuthorizationRules" + "linkedNotificationTimeout": { + "type": "string", + "format": "duration", + "description": "This is a TimeSpan property." } } }, - "CheckinManifestInfo": { - "required": [ - "isCheckedIn", - "statusMessage" + "LinkedOperation": { + "type": "string", + "description": "The linked operation.", + "enum": [ + "None", + "CrossResourceGroupResourceMove", + "CrossSubscriptionResourceMove" ], - "type": "object", - "properties": { - "isCheckedIn": { - "description": "Whether the manifest is checked in.", - "type": "boolean" - }, - "statusMessage": { - "description": "The status message.", - "type": "string" - }, - "pullRequest": { - "description": "The pull request.", - "type": "string" - }, - "commitId": { - "description": "The commit id.", - "type": "string" - } - } - }, - "NotificationEndpoint": { - "type": "object", - "properties": { - "notificationDestination": { - "description": "The notification destination.", - "type": "string" - }, - "locations": { - "description": "The locations.", - "type": "array", - "items": { - "type": "string" + "x-ms-enum": { + "name": "LinkedOperation", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "None" + }, + { + "name": "CrossResourceGroupResourceMove", + "value": "CrossResourceGroupResourceMove" + }, + { + "name": "CrossSubscriptionResourceMove", + "value": "CrossSubscriptionResourceMove" } - } + ] } }, - "NotificationRegistrationProperties": { + "LinkedOperationRule": { "type": "object", "properties": { - "notificationMode": { - "description": "The notification mode.", - "enum": [ - "NotSpecified", - "EventHub", - "WebHook" - ], - "type": "string", - "x-ms-enum": { - "name": "NotificationMode", - "modelAsString": true - } + "linkedOperation": { + "$ref": "#/definitions/LinkedOperation", + "description": "The linked operation." }, - "messageScope": { - "description": "The message scope.", - "enum": [ - "NotSpecified", - "RegisteredSubscriptions" - ], - "type": "string", - "x-ms-enum": { - "name": "MessageScope", - "modelAsString": true - } + "linkedAction": { + "$ref": "#/definitions/LinkedAction", + "description": "The linked action." }, - "includedEvents": { - "description": "The included events.", + "dependsOnTypes": { "type": "array", + "description": "Depends on types.", "items": { "type": "string" } - }, - "notificationEndpoints": { - "description": "The notification endpoints.", - "type": "array", - "items": { - "$ref": "#/definitions/NotificationEndpoint" - }, - "x-ms-identifiers": [ - "notificationDestination" - ] - }, - "provisioningState": { - "$ref": "#/definitions/ProvisioningState", - "description": "The provisioned state of the resource." - } - } - }, - "NotificationRegistration": { - "type": "object", - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/Resource" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/NotificationRegistrationProperties" - }, - "systemData": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/systemData", - "readOnly": true } }, - "x-ms-azure-resource": true - }, - "NotificationRegistrationArrayResponseWithContinuation": { - "type": "object", - "properties": { - "value": { - "description": "The value.", - "type": "array", - "items": { - "$ref": "#/definitions/NotificationRegistration" - } - }, - "nextLink": { - "description": "The URL to get to the next set of results, if there are any.", - "type": "string" - } - } - }, - "OperationsDisplayDefinition": { "required": [ - "description", - "operation", - "provider", - "resource" - ], - "type": "object", - "properties": { - "provider": { - "description": "The provider.", - "type": "string" - }, - "resource": { - "description": "The resource.", - "type": "string" - }, - "operation": { - "description": "The operation.", - "type": "string" - }, - "description": { - "description": "The description.", - "type": "string" - } - } + "linkedOperation", + "linkedAction" + ] }, - "OperationsDefinition": { - "required": [ - "display", - "name" - ], + "LocalizedOperationDefinition": { "type": "object", "properties": { "name": { @@ -5093,1320 +5472,2924 @@ "description": "Indicates whether the operation applies to data-plane." }, "origin": { - "description": "The origin.", - "enum": [ - "NotSpecified", - "User", - "System" - ], - "type": "string", - "x-ms-enum": { - "name": "OperationOrigins" - } + "$ref": "#/definitions/OperationOrigins", + "description": "The origin." }, "display": { - "description": "Display information of the operation.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/LocalizedOperationDisplayDefinitionProperties", + "description": "Display information of the operation." }, "actionType": { - "description": "The action type.", - "enum": [ - "NotSpecified", - "Internal" - ], - "type": "string", - "x-ms-enum": { - "name": "OperationActionType" - } - }, - "properties": {} - }, - "description": "Properties of an Operation." - }, - "OperationsContent": { - "type": "object", - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/Resource" - } - ], - "properties": { - "properties": { - "description": "Operations content.", - "x-ms-client-flatten": true, - "$ref": "#/definitions/OperationsDefinition" + "$ref": "#/definitions/OperationActionType", + "description": "The action type." } }, - "x-ms-azure-resource": true + "required": [ + "name", + "display" + ] }, "LocalizedOperationDisplayDefinition": { - "required": [ - "default" - ], "type": "object", "properties": { "default": { - "description": "Display information of the operation.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation." }, "en": { - "description": "Display information of the operation for en locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for en locale." }, "cs": { - "description": "Display information of the operation for cs locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for cs locale." }, "de": { - "description": "Display information of the operation for de locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for de locale." }, "es": { - "description": "Display information of the operation for es locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for es locale." }, "fr": { - "description": "Display information of the operation for fr locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for fr locale." }, "hu": { - "description": "Display information of the operation for hu locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for hu locale." }, "it": { - "description": "Display information of the operation for it locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for it locale." }, "ja": { - "description": "Display information of the operation for ja locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for ja locale." }, "ko": { - "description": "Display information of the operation for ko locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for ko locale." }, "nl": { - "description": "Display information of the operation for nl locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for nl locale." }, "pl": { - "description": "Display information of the operation for pl locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for pl locale." }, "ptBR": { - "description": "Display information of the operation for pt-BR locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for pt-BR locale." }, "ptPT": { - "description": "Display information of the operation for pt-PT locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for pt-PT locale." }, "ru": { - "description": "Display information of the operation for ru locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for ru locale." }, "sv": { - "description": "Display information of the operation for sv locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for sv locale." }, "zhHans": { - "description": "Display information of the operation for zh-Hans locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for zh-Hans locale." }, "zhHant": { - "description": "Display information of the operation for zh-Hant locale.", - "allOf": [ - { - "$ref": "#/definitions/OperationsDisplayDefinition" - } - ] + "$ref": "#/definitions/OperationsDisplayDefinitionProperties", + "description": "Display information of the operation for zh-Hant locale." } - } - }, - "LocalizedOperationDefinition": { + }, "required": [ - "display", - "name" - ], + "default" + ] + }, + "LocalizedOperationDisplayDefinitionProperties": { + "type": "object", + "description": "Display information of the operation.", + "allOf": [ + { + "$ref": "#/definitions/LocalizedOperationDisplayDefinition" + } + ] + }, + "LocationQuotaRule": { "type": "object", "properties": { - "name": { - "type": "string", - "description": "Name of the operation." - }, - "isDataAction": { - "type": "boolean", - "description": "Indicates whether the operation applies to data-plane." + "policy": { + "$ref": "#/definitions/QuotaPolicy", + "description": "The policy." }, - "origin": { - "description": "The origin.", - "enum": [ - "NotSpecified", - "User", - "System" - ], + "quotaId": { "type": "string", - "x-ms-enum": { - "name": "OperationOrigins" - } - }, - "display": { - "description": "Display information of the operation.", - "allOf": [ - { - "$ref": "#/definitions/LocalizedOperationDisplayDefinition" - } - ] + "description": "The quota id." }, - "actionType": { - "description": "The action type.", - "enum": [ - "NotSpecified", - "Internal" - ], + "location": { "type": "string", - "x-ms-enum": { - "name": "OperationActionType" - } + "description": "The location." } } }, - "OperationsContentProperties": { - "type": "object", - "properties": { - "contents": { - "type": "array", - "description": "Operations content.", - "x-ms-client-flatten": true, - "items": { - "$ref": "#/definitions/LocalizedOperationDefinition" + "LoggingDetails": { + "type": "string", + "description": "The detail level.", + "enum": [ + "None", + "Body" + ], + "x-ms-enum": { + "name": "LoggingDetails", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "None" }, - "x-ms-identifiers": [ - "name" - ] - } + { + "name": "Body", + "value": "Body" + } + ] } }, - "OperationsPutContent": { - "type": "object", - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/Resource" - } + "LoggingDirections": { + "type": "string", + "description": "The direction.", + "enum": [ + "None", + "Request", + "Response" ], - "properties": { - "properties": { - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/OperationsContentProperties" - } - ] - }, - "systemData": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/systemData", - "readOnly": true - } - }, - "x-ms-azure-resource": true + "x-ms-enum": { + "name": "LoggingDirections", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "None" + }, + { + "name": "Request", + "value": "Request" + }, + { + "name": "Response", + "value": "Response" + } + ] + } }, - "OperationsDefinitionArrayResponseWithContinuation": { + "LoggingHiddenPropertyPath": { "type": "object", "properties": { - "value": { - "description": "The value.", + "hiddenPathsOnRequest": { "type": "array", + "description": "The hidden paths on request.", "items": { - "$ref": "#/definitions/OperationsDefinition" - }, - "x-ms-identifiers": [ - "name" - ] + "type": "string" + } }, - "nextLink": { - "description": "The URL to get to the next set of results, if there are any.", - "type": "string" + "hiddenPathsOnResponse": { + "type": "array", + "description": "The hidden paths on response.", + "items": { + "type": "string" + } } } }, - "LightHouseAuthorization": { - "required": [ - "principalId", - "roleDefinitionId" - ], + "LoggingRule": { "type": "object", "properties": { - "principalId": { - "description": "The principal id.", - "type": "string" + "action": { + "type": "string", + "description": "The action." }, - "roleDefinitionId": { - "description": "The role definition id.", - "type": "string" + "direction": { + "$ref": "#/definitions/LoggingDirections", + "description": "The direction." + }, + "detailLevel": { + "$ref": "#/definitions/LoggingDetails", + "description": "The detail level." + }, + "hiddenPropertyPaths": { + "$ref": "#/definitions/LoggingRuleHiddenPropertyPaths", + "description": "The hidden property paths." } - } + }, + "required": [ + "action", + "direction", + "detailLevel" + ] }, - "ThirdPartyProviderAuthorization": { + "LoggingRuleHiddenPropertyPaths": { "type": "object", - "properties": { - "authorizations": { - "description": "The authorizations.", - "type": "array", - "items": { - "$ref": "#/definitions/LightHouseAuthorization" - }, - "x-ms-identifiers": [] - }, - "managedByTenantId": { - "description": "The managed by tenant id.", - "type": "string" + "description": "The hidden property paths.", + "allOf": [ + { + "$ref": "#/definitions/LoggingHiddenPropertyPath" } - } + ] }, - "ProviderHubMetadata": { + "ManifestLevelPropertyBag": { "type": "object", "properties": { - "providerAuthorizations": { - "description": "The provider authorizations.", + "resourceHydrationAccounts": { "type": "array", + "description": "The resource hydration accounts.", "items": { - "$ref": "#/definitions/ResourceProviderAuthorization" + "$ref": "#/definitions/ResourceHydrationAccount" }, - "x-ms-identifiers": [] - }, - "providerAuthentication": { - "description": "The provider authentication.", - "allOf": [ - { - "$ref": "#/definitions/ResourceProviderAuthentication" - } - ] - }, - "thirdPartyProviderAuthorization": { - "description": "The third party provider authorization.", - "allOf": [ - { - "$ref": "#/definitions/ThirdPartyProviderAuthorization" - } + "x-ms-identifiers": [ + "accountName" ] - }, - "directRpRoleDefinitionId": { - "description": "The direct RP role definition id.", - "type": "string" - }, - "regionalAsyncOperationResourceTypeName": { - "description": "The regional async operation resource type name.", - "type": "string" - }, - "globalAsyncOperationResourceTypeName": { - "description": "The global async operation resource type name.", - "type": "string" } } }, - "SubscriptionStateOverrideAction": { - "required": [ - "action", - "state" + "ManifestResourceDeletionPolicy": { + "type": "string", + "description": "The resource deletion policy.", + "enum": [ + "NotSpecified", + "Cascade", + "Force" ], - "type": "object", - "properties": { - "state": { - "description": "The state.", - "enum": [ - "Registered", - "Unregistered", - "Warned", - "Suspended", - "Deleted", - "WarnedToRegistered", - "WarnedToSuspended", - "WarnedToDeleted", - "WarnedToUnregistered", - "SuspendedToRegistered", - "SuspendedToWarned", - "SuspendedToDeleted", - "SuspendedToUnregistered" - ], - "type": "string", - "x-ms-enum": { - "name": "SubscriptionTransitioningState", - "modelAsString": true + "x-ms-enum": { + "name": "ManifestResourceDeletionPolicy", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "Cascade", + "value": "Cascade" + }, + { + "name": "Force", + "value": "Force" } - }, - "action": { - "description": "The action.", - "enum": [ - "NotDefined", - "DeleteAllResources", - "SoftDeleteAllResources", - "NoOp", - "BillingCancellation", - "UndoSoftDelete" - ], - "type": "string", - "x-ms-enum": { - "name": "SubscriptionNotificationOperation", - "modelAsString": true + ] + } + }, + "MarketplaceType": { + "type": "string", + "description": "The marketplace type.", + "enum": [ + "NotSpecified", + "AddOn", + "Bypass", + "Store" + ], + "x-ms-enum": { + "name": "MarketplaceType", + "modelAsString": false + } + }, + "MessageScope": { + "type": "string", + "description": "The message scope.", + "enum": [ + "NotSpecified", + "RegisteredSubscriptions" + ], + "x-ms-enum": { + "name": "MessageScope", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "RegisteredSubscriptions", + "value": "RegisteredSubscriptions" } - } + ] } }, - "SubscriptionLifecycleNotificationSpecifications": { + "Notification": { "type": "object", "properties": { - "subscriptionStateOverrideActions": { - "description": "The subscription state override actions.", - "type": "array", - "items": { - "$ref": "#/definitions/SubscriptionStateOverrideAction" - }, - "x-ms-identifiers": [] + "notificationType": { + "$ref": "#/definitions/NotificationType", + "description": "The notification type." }, - "softDeleteTTL": { - "description": "The soft delete TTL.", - "format": "duration", - "type": "string" + "skipNotifications": { + "$ref": "#/definitions/SkipNotifications", + "description": "Whether notifications should be skipped." } } }, - "TemplateDeploymentOptions": { + "NotificationEndpoint": { "type": "object", "properties": { - "preflightSupported": { - "description": "Whether preflight is supported.", - "type": "boolean" + "notificationDestination": { + "type": "string", + "description": "The notification destination." }, - "preflightOptions": { - "description": "The preflight options.", + "locations": { "type": "array", + "description": "The locations.", "items": { - "enum": [ - "None", - "ContinueDeploymentOnFailure", - "DefaultValidationOnly" - ], - "type": "string", - "x-ms-enum": { - "name": "PreflightOption", - "modelAsString": true - } + "type": "string" } } } }, - "ResourceProviderManifestProperties": { - "type": "object", - "properties": { - "providerAuthentication": { - "description": "The provider authentication.", - "allOf": [ - { - "$ref": "#/definitions/ResourceProviderAuthentication" - } - ] - }, - "providerAuthorizations": { - "description": "The provider authorizations.", - "type": "array", - "items": { - "$ref": "#/definitions/ResourceProviderAuthorization" - }, - "x-ms-identifiers": [] - }, - "namespace": { - "description": "The namespace.", - "type": "string" - }, - "services": { - "description": "The services.", - "type": "array", - "items": { - "$ref": "#/definitions/ResourceProviderService" + "NotificationEndpointType": { + "type": "string", + "description": "The endpoint type.", + "enum": [ + "Webhook", + "Eventhub" + ], + "x-ms-enum": { + "name": "NotificationEndpointType", + "modelAsString": true, + "values": [ + { + "name": "Webhook", + "value": "Webhook" }, - "x-ms-identifiers": [] - }, - "serviceName": { - "description": "The service name.", - "type": "string" - }, - "providerVersion": { - "description": "The provider version.", - "type": "string" - }, - "providerType": { - "description": "The provider type.", - "enum": [ - "NotSpecified", - "Internal", - "External", - "Hidden", - "RegistrationFree", - "LegacyRegistrationRequired", - "TenantOnly", - "AuthorizationFree" - ], - "type": "string", - "x-ms-enum": { - "name": "ResourceProviderType", - "modelAsString": true + { + "name": "Eventhub", + "value": "Eventhub" } - }, - "requiredFeatures": { - "description": "The required features.", - "type": "array", - "items": { - "type": "string" - } - }, - "featuresRule": { - "description": "The features rule.", - "allOf": [ - { - "$ref": "#/definitions/FeaturesRule" - } - ] - }, - "requestHeaderOptions": { - "description": "The request header options.", - "allOf": [ - { - "$ref": "#/definitions/RequestHeaderOptions" - } - ] - }, - "management": { - "description": "The resource provider management.", - "allOf": [ - { - "$ref": "#/definitions/ResourceProviderManagement" - } - ] - }, - "capabilities": { - "description": "The capabilities.", - "type": "array", - "items": { - "$ref": "#/definitions/ResourceProviderCapabilities" + ] + } + }, + "NotificationMode": { + "type": "string", + "description": "The notification mode.", + "enum": [ + "NotSpecified", + "EventHub", + "WebHook" + ], + "x-ms-enum": { + "name": "NotificationMode", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" }, - "x-ms-identifiers": [ - "quotaId" - ] - }, - "crossTenantTokenValidation": { - "description": "The cross tenant token validation.", - "enum": [ - "EnsureSecureValidation", - "PassthroughInsecureToken" - ], - "type": "string", - "x-ms-enum": { - "name": "CrossTenantTokenValidation", - "modelAsString": true + { + "name": "EventHub", + "value": "EventHub" + }, + { + "name": "WebHook", + "value": "WebHook" } - }, - "metadata": { - "description": "The metadata.", - "type": "object" - }, - "templateDeploymentOptions": { - "description": "The template deployment options.", - "allOf": [ - { - "$ref": "#/definitions/TemplateDeploymentOptions" - } - ] - }, - "globalNotificationEndpoints": { - "description": "The global notification endpoints.", - "type": "array", - "items": { - "$ref": "#/definitions/ResourceProviderEndpoint" + ] + } + }, + "NotificationOptions": { + "type": "string", + "description": "Notification options.", + "enum": [ + "NotSpecified", + "None", + "EmitSpendingLimit" + ], + "x-ms-enum": { + "name": "NotificationOptions", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" }, - "x-ms-identifiers": [] - }, - "enableTenantLinkedNotification": { - "description": "The enable tenant linked notification.", - "type": "boolean", - "x-nullable": true - }, - "notifications": { - "description": "The notifications.", - "$ref": "#/definitions/Notifications" - }, - "linkedNotificationRules": { - "description": "The linked notification rules.", - "type": "array", - "items": { - "$ref": "#/definitions/FanoutLinkedNotificationRule" + { + "name": "None", + "value": "None" }, - "x-ms-identifiers": [] - }, - "resourceProviderAuthorizationRules": { - "description": "The resource provider authorization rules.", - "$ref": "#/definitions/ResourceProviderAuthorizationRules" - }, - "dstsConfiguration": { - "description": "The dsts configuration.", - "allOf": [ - { - "$ref": "#/definitions/DstsConfiguration" - } - ] - }, - "notificationOptions": { - "description": "Notification options.", - "type": "string", - "enum": [ - "NotSpecified", - "None", - "EmitSpendingLimit" - ], - "x-ms-enum": { - "name": "NotificationOptions", - "modelAsString": true + { + "name": "EmitSpendingLimit", + "value": "EmitSpendingLimit" } - }, - "resourceHydrationAccounts": { + ] + } + }, + "NotificationRegistration": { + "type": "object", + "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.", + "properties": { + "properties": { + "$ref": "#/definitions/NotificationRegistrationProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource" + } + ] + }, + "NotificationRegistrationArrayResponseWithContinuation": { + "type": "object", + "description": "Paged collection of NotificationRegistration items", + "properties": { + "value": { "type": "array", - "description": "resource hydration accounts", + "description": "The NotificationRegistration items on this page", "items": { - "$ref": "#/definitions/ResourceHydrationAccount" - }, - "x-ms-identifiers": [] - }, - "notificationSettings": { - "type": "object", - "description": "Notification settings.", - "properties": { - "subscriberSettings": { - "type": "array", - "items": { - "$ref": "#/definitions/SubscriberSetting" - }, - "x-ms-identifiers": [] - } + "$ref": "#/definitions/NotificationRegistration" } }, - "managementGroupGlobalNotificationEndpoints": { - "type": "array", - "description": "Management groups global notification endpoints.", - "items": { - "$ref": "#/definitions/ResourceProviderEndpoint" - }, - "x-ms-identifiers": [] + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "NotificationRegistrationProperties": { + "type": "object", + "properties": { + "notificationMode": { + "$ref": "#/definitions/NotificationMode", + "description": "The notification mode." }, - "optionalFeatures": { - "description": "Optional features.", + "messageScope": { + "$ref": "#/definitions/MessageScope", + "description": "The message scope." + }, + "includedEvents": { "type": "array", + "description": "The included events.", "items": { "type": "string" - }, - "x-ms-identifiers": [] - }, - "resourceGroupLockOptionDuringMove": { - "type": "object", - "description": "Resource group lock option during move.", - "properties": { - "blockActionVerb": { - "type": "string", - "description": "The action verb that will be blocked when the resource group is locked during move.", - "enum": [ - "NotSpecified", - "Read", - "Write", - "Action", - "Delete", - "Unrecognized" - ], - "x-ms-enum": { - "name": "BlockActionVerb", - "modelAsString": true - } - } - } - }, - "responseOptions": { - "type": "object", - "description": "Response options.", - "properties": { - "serviceClientOptionsType": { - "type": "string", - "enum": [ - "NotSpecified", - "DisableAutomaticDecompression" - ], - "x-ms-enum": { - "name": "ServiceClientOptionsType", - "modelAsString": true - } - } } }, - "legacyNamespace": { - "description": "Legacy namespace.", - "type": "string" - }, - "legacyRegistrations": { + "notificationEndpoints": { "type": "array", - "description": "Legacy registrations.", + "description": "The notification endpoints.", "items": { - "type": "string" + "$ref": "#/definitions/NotificationEndpoint" }, - "x-ms-identifiers": [] + "x-ms-identifiers": [ + "notificationDestination" + ] }, - "customManifestVersion": { - "description": "Custom manifest version.", - "type": "string" + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioned state of the resource.", + "readOnly": true } } }, - "AuthorizedApplication": { + "NotificationType": { + "type": "string", + "description": "The notification type.", + "enum": [ + "Unspecified", + "SubscriptionNotification" + ], + "x-ms-enum": { + "name": "NotificationType", + "modelAsString": true, + "values": [ + { + "name": "Unspecified", + "value": "Unspecified" + }, + { + "name": "SubscriptionNotification", + "value": "SubscriptionNotification" + } + ] + } + }, + "OpenApiConfiguration": { "type": "object", - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource" + "properties": { + "validation": { + "$ref": "#/definitions/OpenApiValidation", + "description": "The open api validation." + } + } + }, + "OpenApiValidation": { + "type": "object", + "properties": { + "allowNoncompliantCollectionResponse": { + "type": "boolean", + "description": "Indicates whether a non compliance response is allowed for a LIST call" } + } + }, + "OperationActionType": { + "type": "string", + "description": "The action type.", + "enum": [ + "NotSpecified", + "Internal" + ], + "x-ms-enum": { + "name": "OperationActionType", + "modelAsString": false + } + }, + "OperationOrigins": { + "type": "string", + "description": "The origin.", + "enum": [ + "NotSpecified", + "User", + "System" ], + "x-ms-enum": { + "name": "OperationOrigins", + "modelAsString": false + } + }, + "OperationsContent": { + "type": "object", "properties": { "properties": { - "$ref": "#/definitions/AuthorizedApplicationProperties" + "$ref": "#/definitions/OperationsDefinition", + "description": "Operations content.", + "x-ms-client-flatten": true } }, - "x-ms-azure-resource": true - }, - "ProviderRegistrationProperties": { - "type": "object", "allOf": [ { - "$ref": "#/definitions/ResourceProviderManifestProperties" + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/Resource" } - ], + ] + }, + "OperationsContentProperties": { + "type": "object", "properties": { - "providerHubMetadata": { - "description": "The provider hub metadata.", - "allOf": [ - { - "$ref": "#/definitions/ProviderHubMetadata" - } - ] - }, - "provisioningState": { - "description": "The provisioning state.", - "$ref": "#/definitions/ProvisioningState" - }, - "subscriptionLifecycleNotificationSpecifications": { - "description": "The subscription lifecycle notification specifications.", - "allOf": [ - { - "$ref": "#/definitions/SubscriptionLifecycleNotificationSpecifications" - } - ] - }, - "privateResourceProviderConfiguration": { - "description": "The private resource provider configuration.", - "allOf": [ - { - "$ref": "#/definitions/PrivateResourceProviderConfiguration" - } - ] - }, - "tokenAuthConfiguration": { - "description": "The token auth configuration.", - "$ref": "#/definitions/TokenAuthConfiguration" - } - } - }, - "ProviderRegistration": { - "type": "object", - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/ProviderRegistrationProperties" - }, - "systemData": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/systemData", - "readOnly": true - }, - "kind": { - "enum": [ - "Managed", - "Hybrid", - "Direct" - ], - "type": "string", - "default": "Managed", - "x-ms-enum": { - "name": "ProviderRegistrationKind", - "modelAsString": true, - "values": [ - { - "value": "Managed", - "description": "Resource Provider with all the resource types 'managed' by the ProviderHub service." - }, - { - "value": "Hybrid", - "description": "Resource Provider with a mix of 'managed' and 'direct' resource types." - }, - { - "value": "Direct", - "description": "Resource Provider with all the resource types 'managed' on by itself." - } - ] - }, - "description": "Provider registration kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type." - } - }, - "x-ms-azure-resource": true - }, - "AuthorizedApplicationProperties": { - "type": "object", - "properties": { - "providerAuthorization": { - "$ref": "#/definitions/ApplicationProviderAuthorization" - }, - "dataAuthorizations": { + "contents": { "type": "array", - "description": "The authorizations that determine the level of data access permissions on the specified resource types.", + "description": "Operations content.", "items": { - "$ref": "#/definitions/ApplicationDataAuthorization" + "$ref": "#/definitions/LocalizedOperationDefinition" }, + "x-ms-client-flatten": true, "x-ms-identifiers": [ - "role" + "name" ] - }, - "provisioningState": { - "description": "The provisioning state.", - "$ref": "#/definitions/ProvisioningState" } } }, - "ProviderRegistrationArrayResponseWithContinuation": { + "OperationsDefinition": { "type": "object", + "description": "Properties of an Operation.", "properties": { - "value": { - "description": "The value.", - "type": "array", - "items": { - "$ref": "#/definitions/ProviderRegistration" - } + "name": { + "type": "string", + "description": "Name of the operation." }, - "nextLink": { - "description": "The URL to get to the next set of results, if there are any.", - "type": "string" + "isDataAction": { + "type": "boolean", + "description": "Indicates whether the operation applies to data-plane." + }, + "origin": { + "$ref": "#/definitions/OperationOrigins", + "description": "The origin." + }, + "display": { + "$ref": "#/definitions/OperationsDefinitionDisplay", + "description": "Display information of the operation." + }, + "actionType": { + "$ref": "#/definitions/OperationActionType", + "description": "The action type." + }, + "properties": { + "description": "Anything" } - } + }, + "required": [ + "name", + "display" + ] }, - "AuthorizedApplicationArrayResponseWithContinuation": { + "OperationsDefinitionArrayResponseWithContinuation": { "type": "object", "properties": { "value": { - "description": "The value.", "type": "array", + "description": "The value.", "items": { - "$ref": "#/definitions/AuthorizedApplication" - } + "$ref": "#/definitions/OperationsDefinition" + }, + "x-ms-identifiers": [ + "name" + ] }, "nextLink": { - "description": "The URL to get to the next set of results, if there are any.", - "type": "string" + "type": "string", + "description": "The URL to get to the next set of results, if there are any." } } }, - "ResourceTypeExtension": { + "OperationsDefinitionDisplay": { "type": "object", - "properties": { - "endpointUri": { - "description": "The endpoint uri.", - "type": "string" - }, - "extensionCategories": { - "description": "The extension categories.", - "type": "array", - "items": { - "enum": [ - "NotSpecified", - "ResourceCreationValidate", - "ResourceCreationBegin", - "ResourceCreationCompleted", - "ResourceReadValidate", - "ResourceReadBegin", - "ResourcePatchValidate", - "ResourcePatchCompleted", - "ResourceDeletionValidate", - "ResourceDeletionBegin", - "ResourceDeletionCompleted", - "ResourcePostAction", - "SubscriptionLifecycleNotification", - "ResourcePatchBegin", - "ResourceMoveBegin", - "ResourceMoveCompleted", - "BestMatchOperationBegin", - "SubscriptionLifecycleNotificationDeletion" - ], - "type": "string", - "x-ms-enum": { - "name": "ExtensionCategory", - "modelAsString": true - } - } - }, - "timeout": { - "description": "The timeout.", - "format": "duration", - "type": "string" + "description": "Display information of the operation.", + "allOf": [ + { + "$ref": "#/definitions/OperationsDisplayDefinition" } - } + ] }, - "ResourceTypeEndpoint": { + "OperationsDisplayDefinition": { "type": "object", "properties": { - "kind": { - "enum": [ - "Managed", - "Direct" - ], + "provider": { "type": "string", - "default": "Managed", - "x-ms-enum": { - "name": "ResourceTypeEndpointKind", - "modelAsString": true, - "values": [ - { - "value": "Managed", - "description": "Endpoint served by ProviderHub service" - }, - { - "value": "Direct", - "description": "Endpoint served by the onboarded Resource Provider Service." - } - ] - }, - "description": "Resource type endpoint kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type." - }, - "enabled": { - "description": "Whether the endpoint is enabled.", - "type": "boolean" - }, - "apiVersions": { - "description": "The api versions.", - "type": "array", - "items": { - "type": "string" - } - }, - "locations": { - "description": "The locations.", - "type": "array", - "items": { - "type": "string" - } - }, - "requiredFeatures": { - "description": "The required features.", - "type": "array", - "items": { - "type": "string" - } - }, - "featuresRule": { - "description": "The features rule.", - "allOf": [ - { - "$ref": "#/definitions/FeaturesRule" - } - ] - }, - "extensions": { - "description": "The extensions.", - "type": "array", - "items": { - "$ref": "#/definitions/ResourceTypeExtension" - }, - "x-ms-identifiers": [ - "endpointUri" - ] - }, - "timeout": { - "description": "The timeout.", - "format": "duration", - "type": "string" + "description": "The provider." }, - "endpointType": { - "description": "The endpoint type.", - "enum": [ - "NotSpecified", - "Canary", - "Production", - "TestInProduction" - ], + "resource": { "type": "string", - "x-ms-enum": { - "name": "EndpointTypeResourceType", - "modelAsString": true - } + "description": "The resource." }, - "tokenAuthConfiguration": { - "description": "The token auth configuration.", - "$ref": "#/definitions/TokenAuthConfiguration" - }, - "skuLink": { - "description": "The sku link.", - "type": "string" - }, - "endpointUri": { - "description": "The endpoint uri.", - "type": "string" - }, - "apiVersion": { + "operation": { "type": "string", - "description": "Api version." - }, - "zones": { - "type": "array", - "items": { - "type": "string" - }, - "description": "List of zones." - }, - "dstsConfiguration": { - "description": "The dsts configuration.", - "allOf": [ - { - "$ref": "#/definitions/DstsConfiguration" - } - ] + "description": "The operation." }, - "dataBoundary": { - "description": "The data boundary.", - "enum": [ - "NotDefined", - "Global", - "EU", - "US" - ], + "description": { "type": "string", - "x-ms-enum": { - "name": "DataBoundary", - "modelAsString": true - } + "description": "The description." } - } + }, + "required": [ + "provider", + "resource", + "operation", + "description" + ] }, - "TokenAuthConfiguration": { + "OperationsDisplayDefinitionProperties": { + "type": "object", + "description": "Display information of the operation.", + "allOf": [ + { + "$ref": "#/definitions/OperationsDisplayDefinition" + } + ] + }, + "OperationsPutContent": { "type": "object", + "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.", "properties": { - "authenticationScheme": { - "description": "The authentication scheme.", - "enum": [ - "PoP", - "Bearer" - ], - "type": "string", - "x-ms-enum": { - "name": "AuthenticationScheme", - "modelAsString": true - } - }, - "signedRequestScope": { - "description": "The signed request scope.", - "enum": [ - "ResourceUri", - "Endpoint" - ], - "type": "string", - "x-ms-enum": { - "name": "SignedRequestScope", - "modelAsString": true - } - }, - "disableCertificateAuthenticationFallback": { - "description": "Whether certification authentication fallback is disabled.", - "type": "boolean" + "properties": { + "$ref": "#/definitions/OperationsPutContentProperties" } - } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource" + } + ] }, - "ExtensionOptions": { + "OperationsPutContentProperties": { "type": "object", - "properties": { - "request": { - "description": "The request.", - "type": "array", - "items": { - "enum": [ - "NotSpecified", - "DoNotMergeExistingReadOnlyAndSecretProperties", - "IncludeInternalMetadata" - ], - "type": "string", - "x-ms-enum": { - "name": "ExtensionOptionType", - "modelAsString": true - } + "allOf": [ + { + "$ref": "#/definitions/OperationsContentProperties" + } + ] + }, + "OptInHeaderType": { + "type": "string", + "description": "The opt in headers.", + "enum": [ + "NotSpecified", + "SignedUserToken", + "ClientGroupMembership", + "SignedAuxiliaryTokens", + "UnboundedClientGroupMembership", + "PrivateLinkId", + "PrivateLinkResourceId", + "ManagementGroupAncestorsEncoded", + "PrivateLinkVnetTrafficTag", + "ResourceGroupLocation", + "ClientPrincipalNameEncoded", + "MSIResourceIdEncoded" + ], + "x-ms-enum": { + "name": "OptInHeaderType", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "SignedUserToken", + "value": "SignedUserToken" + }, + { + "name": "ClientGroupMembership", + "value": "ClientGroupMembership" + }, + { + "name": "SignedAuxiliaryTokens", + "value": "SignedAuxiliaryTokens" + }, + { + "name": "UnboundedClientGroupMembership", + "value": "UnboundedClientGroupMembership" + }, + { + "name": "PrivateLinkId", + "value": "PrivateLinkId" + }, + { + "name": "PrivateLinkResourceId", + "value": "PrivateLinkResourceId" + }, + { + "name": "ManagementGroupAncestorsEncoded", + "value": "ManagementGroupAncestorsEncoded" + }, + { + "name": "PrivateLinkVnetTrafficTag", + "value": "PrivateLinkVnetTrafficTag" + }, + { + "name": "ResourceGroupLocation", + "value": "ResourceGroupLocation" + }, + { + "name": "ClientPrincipalNameEncoded", + "value": "ClientPrincipalNameEncoded" + }, + { + "name": "MSIResourceIdEncoded", + "value": "MSIResourceIdEncoded" } - }, - "response": { - "description": "The response.", - "type": "array", - "items": { - "enum": [ - "NotSpecified", - "DoNotMergeExistingReadOnlyAndSecretProperties", - "IncludeInternalMetadata" - ], - "type": "string", - "x-ms-enum": { - "name": "ExtensionOptionType", - "modelAsString": true - } + ] + } + }, + "OptOutHeaderType": { + "type": "string", + "description": "The opt out headers.", + "enum": [ + "NotSpecified", + "SystemDataCreatedByLastModifiedBy" + ], + "x-ms-enum": { + "name": "OptOutHeaderType", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "SystemDataCreatedByLastModifiedBy", + "value": "SystemDataCreatedByLastModifiedBy" } - } + ] } }, - "ResourceTypeExtensionOptions": { - "type": "object", - "properties": { - "resourceCreationBegin": { - "description": "Resource creation begin.", - "allOf": [ - { - "$ref": "#/definitions/ExtensionOptions" - } - ] - } + "Policy": { + "type": "string", + "description": "The policy.", + "enum": [ + "NotSpecified", + "SynchronizeBeginExtension" + ], + "x-ms-enum": { + "name": "Policy", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "SynchronizeBeginExtension", + "value": "SynchronizeBeginExtension" + } + ] } }, - "SwaggerSpecification": { + "PolicyExecutionType": { + "type": "string", + "description": "The policy execution type.", + "enum": [ + "NotSpecified", + "ExecutePolicies", + "BypassPolicies", + "ExpectPartialPutRequests" + ], + "x-ms-enum": { + "name": "PolicyExecutionType", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "ExecutePolicies", + "value": "ExecutePolicies" + }, + { + "name": "BypassPolicies", + "value": "BypassPolicies" + }, + { + "name": "ExpectPartialPutRequests", + "value": "ExpectPartialPutRequests" + } + ] + } + }, + "PreflightOption": { + "type": "string", + "enum": [ + "None", + "ContinueDeploymentOnFailure", + "DefaultValidationOnly" + ], + "x-ms-enum": { + "name": "PreflightOption", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "None" + }, + { + "name": "ContinueDeploymentOnFailure", + "value": "ContinueDeploymentOnFailure" + }, + { + "name": "DefaultValidationOnly", + "value": "DefaultValidationOnly" + } + ] + } + }, + "PrivateResourceProviderConfiguration": { "type": "object", "properties": { - "apiVersions": { - "description": "The api versions.", + "allowedSubscriptions": { "type": "array", + "description": "The allowed subscriptions.", "items": { "type": "string" } - }, - "swaggerSpecFolderUri": { - "description": "The swagger spec folder uri.", - "type": "string" } } }, - "CheckNameAvailabilitySpecifications": { + "ProviderHubMetadata": { "type": "object", "properties": { - "enableDefaultValidation": { - "description": "Whether default validation is enabled.", - "type": "boolean" - }, - "resourceTypesWithCustomValidation": { - "description": "The resource types with custom validation.", + "providerAuthorizations": { "type": "array", + "description": "The provider authorizations.", "items": { - "type": "string" - } + "$ref": "#/definitions/ResourceProviderAuthorization" + }, + "x-ms-identifiers": [] + }, + "providerAuthentication": { + "$ref": "#/definitions/ResourceProviderAuthenticationProperties", + "description": "The provider authentication." + }, + "thirdPartyProviderAuthorization": { + "$ref": "#/definitions/ProviderHubMetadataThirdPartyProviderAuthorization", + "description": "The third party provider authorization." + }, + "directRpRoleDefinitionId": { + "type": "string", + "description": "The direct RP role definition id." + }, + "regionalAsyncOperationResourceTypeName": { + "type": "string", + "description": "The regional async operation resource type name." + }, + "globalAsyncOperationResourceTypeName": { + "type": "string", + "description": "The global async operation resource type name." } } }, - "ResourceMovePolicy": { + "ProviderHubMetadataThirdPartyProviderAuthorization": { + "type": "object", + "description": "The third party provider authorization.", + "allOf": [ + { + "$ref": "#/definitions/ThirdPartyProviderAuthorization" + } + ] + }, + "ProviderMonitorSetting": { "type": "object", + "description": "Concrete tracked resource types can be created by aliasing this type using a specific property type.", "properties": { - "validationRequired": { - "description": "Whether validation is required.", - "type": "boolean" - }, - "crossResourceGroupMoveEnabled": { - "description": "Whether cross resource group move is enabled.", - "type": "boolean" - }, - "crossSubscriptionMoveEnabled": { - "description": "Whether cross subscription move is enabled.", - "type": "boolean" + "properties": { + "$ref": "#/definitions/ProviderMonitorSettingProperties" } - } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/TrackedResource" + } + ] }, - "ResourceConcurrencyControlOption": { + "ProviderMonitorSettingArrayResponseWithContinuation": { "type": "object", + "description": "Paged collection of ProviderMonitorSetting items", "properties": { - "policy": { - "description": "The policy.", - "enum": [ - "NotSpecified", - "SynchronizeBeginExtension" - ], - "type": "string", - "x-ms-enum": { - "name": "Policy", - "modelAsString": true + "value": { + "type": "array", + "description": "The ProviderMonitorSetting items on this page", + "items": { + "$ref": "#/definitions/ProviderMonitorSetting" } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" } - } + }, + "required": [ + "value" + ] }, - "ResourceGraphConfiguration": { + "ProviderMonitorSettingProperties": { "type": "object", "properties": { - "enabled": { - "description": "Whether it's enabled.", - "type": "boolean" - }, - "apiVersion": { - "description": "The api version.", - "type": "string" + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioning state.", + "readOnly": true } } }, - "ResourceTypeRegistrationProperties": { + "ProviderRegistration": { "type": "object", + "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.", "properties": { - "routingType": { - "$ref": "#/definitions/RoutingType", - "description": "The resource routing type." - }, - "additionalOptions": { - "description": "The additional options.", - "enum": [ - "ProtectedAsyncOperationPolling", - "ProtectedAsyncOperationPollingAuditOnly" - ], - "type": "string", - "x-ms-enum": { - "name": "AdditionalOptionsResourceTypeRegistration", - "modelAsString": true - } + "properties": { + "$ref": "#/definitions/ProviderRegistrationProperties" }, - "crossTenantTokenValidation": { - "description": "The cross tenant token validation.", - "enum": [ - "EnsureSecureValidation", - "PassthroughInsecureToken" - ], + "kind": { "type": "string", - "x-ms-enum": { - "name": "CrossTenantTokenValidation", - "modelAsString": true - } - }, - "regionality": { - "description": "The regionality.", + "description": "Provider registration kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type.", + "default": "Managed", "enum": [ - "NotSpecified", - "Global", - "Regional" + "Managed", + "Hybrid", + "Direct" ], - "type": "string", "x-ms-enum": { - "name": "Regionality", - "modelAsString": true + "name": "ProviderRegistrationKind", + "modelAsString": true, + "values": [ + { + "name": "Managed", + "value": "Managed", + "description": "Resource Provider with all the resource types 'managed' by the ProviderHub service." + }, + { + "name": "Hybrid", + "value": "Hybrid", + "description": "Resource Provider with a mix of 'managed' and 'direct' resource types." + }, + { + "name": "Direct", + "value": "Direct", + "description": "Resource Provider with all the resource types 'managed' on by itself." + } + ] + } + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource" + } + ] + }, + "ProviderRegistrationArrayResponseWithContinuation": { + "type": "object", + "description": "Paged collection of ProviderRegistration items", + "properties": { + "value": { + "type": "array", + "description": "The ProviderRegistration items on this page", + "items": { + "$ref": "#/definitions/ProviderRegistration" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "ProviderRegistrationKind": { + "type": "string", + "description": "Provider registration kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type.", + "enum": [ + "Managed", + "Hybrid", + "Direct" + ], + "x-ms-enum": { + "name": "ProviderRegistrationKind", + "modelAsString": true, + "values": [ + { + "name": "Managed", + "value": "Managed", + "description": "Resource Provider with all the resource types 'managed' by the ProviderHub service." + }, + { + "name": "Hybrid", + "value": "Hybrid", + "description": "Resource Provider with a mix of 'managed' and 'direct' resource types." + }, + { + "name": "Direct", + "value": "Direct", + "description": "Resource Provider with all the resource types 'managed' on by itself." + } + ] + } + }, + "ProviderRegistrationProperties": { + "type": "object", + "properties": { + "providerHubMetadata": { + "$ref": "#/definitions/ProviderRegistrationPropertiesProviderHubMetadata", + "description": "The provider hub metadata." + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioning state.", + "readOnly": true + }, + "subscriptionLifecycleNotificationSpecifications": { + "$ref": "#/definitions/SubscriptionLifecycleNotificationSpecificationsProperties", + "description": "The subscription lifecycle notification specifications." + }, + "privateResourceProviderConfiguration": { + "$ref": "#/definitions/ProviderRegistrationPropertiesPrivateResourceProviderConfiguration", + "description": "The private resource provider configuration." + }, + "tokenAuthConfiguration": { + "$ref": "#/definitions/TokenAuthConfiguration", + "description": "The token auth configuration." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceProviderManifestProperties" + } + ] + }, + "ProviderRegistrationPropertiesPrivateResourceProviderConfiguration": { + "type": "object", + "description": "The private resource provider configuration.", + "allOf": [ + { + "$ref": "#/definitions/PrivateResourceProviderConfiguration" + } + ] + }, + "ProviderRegistrationPropertiesProviderHubMetadata": { + "type": "object", + "description": "The provider hub metadata.", + "allOf": [ + { + "$ref": "#/definitions/ProviderHubMetadata" + } + ] + }, + "ProvisioningState": { + "type": "string", + "enum": [ + "NotSpecified", + "Accepted", + "Running", + "Creating", + "Created", + "Deleting", + "Deleted", + "Canceled", + "Failed", + "Succeeded", + "MovingResources", + "TransientFailure", + "RolloutInProgress" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "Accepted", + "value": "Accepted" + }, + { + "name": "Running", + "value": "Running" + }, + { + "name": "Creating", + "value": "Creating" + }, + { + "name": "Created", + "value": "Created" + }, + { + "name": "Deleting", + "value": "Deleting" + }, + { + "name": "Deleted", + "value": "Deleted" + }, + { + "name": "Canceled", + "value": "Canceled" + }, + { + "name": "Failed", + "value": "Failed" + }, + { + "name": "Succeeded", + "value": "Succeeded" + }, + { + "name": "MovingResources", + "value": "MovingResources" + }, + { + "name": "TransientFailure", + "value": "TransientFailure" + }, + { + "name": "RolloutInProgress", + "value": "RolloutInProgress" + } + ] + } + }, + "QuotaPolicy": { + "type": "string", + "enum": [ + "Default", + "None", + "Restricted" + ], + "x-ms-enum": { + "name": "QuotaPolicy", + "modelAsString": true, + "values": [ + { + "name": "Default", + "value": "Default" + }, + { + "name": "None", + "value": "None" + }, + { + "name": "Restricted", + "value": "Restricted" + } + ] + } + }, + "QuotaRule": { + "type": "object", + "properties": { + "quotaPolicy": { + "$ref": "#/definitions/QuotaPolicy", + "description": "The quota policy." + }, + "locationRules": { + "type": "array", + "description": "The location rules.", + "items": { + "$ref": "#/definitions/LocationQuotaRule" + }, + "x-ms-identifiers": [] + }, + "requiredFeatures": { + "type": "array", + "description": "The required features.", + "items": { + "type": "string" + } + } + } + }, + "ReRegisterSubscriptionMetadata": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether it's enabled or not." + }, + "concurrencyLimit": { + "type": "integer", + "format": "int32", + "description": "The concurrency limit." + } + }, + "required": [ + "enabled" + ] + }, + "Readiness": { + "type": "string", + "description": "The readiness.", + "enum": [ + "ClosingDown", + "Deprecated", + "GA", + "InDevelopment", + "InternalOnly", + "PrivatePreview", + "PublicPreview", + "RemovedFromARM", + "Retired" + ], + "x-ms-enum": { + "name": "Readiness", + "modelAsString": true, + "values": [ + { + "name": "ClosingDown", + "value": "ClosingDown" + }, + { + "name": "Deprecated", + "value": "Deprecated" + }, + { + "name": "GA", + "value": "GA" + }, + { + "name": "InDevelopment", + "value": "InDevelopment" + }, + { + "name": "InternalOnly", + "value": "InternalOnly" + }, + { + "name": "PrivatePreview", + "value": "PrivatePreview" + }, + { + "name": "PublicPreview", + "value": "PublicPreview" + }, + { + "name": "RemovedFromARM", + "value": "RemovedFromARM" + }, + { + "name": "Retired", + "value": "Retired" + } + ] + } + }, + "Regionality": { + "type": "string", + "description": "The regionality.", + "enum": [ + "NotSpecified", + "Global", + "Regional" + ], + "x-ms-enum": { + "name": "Regionality", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "Global", + "value": "Global" + }, + { + "name": "Regional", + "value": "Regional" + } + ] + } + }, + "RequestHeaderOptions": { + "type": "object", + "properties": { + "optInHeaders": { + "$ref": "#/definitions/OptInHeaderType", + "description": "The opt in headers." + }, + "optOutHeaders": { + "$ref": "#/definitions/OptOutHeaderType", + "description": "The opt out headers." + } + } + }, + "RequestHeaderOptionsProperties": { + "type": "object", + "description": "The request header options.", + "allOf": [ + { + "$ref": "#/definitions/RequestHeaderOptions" + } + ] + }, + "ResourceAccessPolicy": { + "type": "string", + "description": "The resource access policy.", + "enum": [ + "NotSpecified", + "AcisReadAllowed", + "AcisActionAllowed" + ], + "x-ms-enum": { + "name": "ResourceAccessPolicy", + "modelAsString": false + } + }, + "ResourceAccessRole": { + "type": "object", + "properties": { + "allowedGroupClaims": { + "type": "array", + "description": "The allowed group claims.", + "items": { + "type": "string" + } + }, + "actions": { + "type": "array", + "description": "The actions.", + "items": { + "type": "string" + } + } + } + }, + "ResourceConcurrencyControlOption": { + "type": "object", + "properties": { + "policy": { + "$ref": "#/definitions/Policy", + "description": "The policy." + } + } + }, + "ResourceDeletionPolicy": { + "type": "string", + "description": "The resource deletion policy.", + "enum": [ + "NotSpecified", + "CascadeDeleteAll", + "CascadeDeleteProxyOnlyChildren" + ], + "x-ms-enum": { + "name": "ResourceDeletionPolicy", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "CascadeDeleteAll", + "value": "CascadeDeleteAll" + }, + { + "name": "CascadeDeleteProxyOnlyChildren", + "value": "CascadeDeleteProxyOnlyChildren" + } + ] + } + }, + "ResourceGraphConfiguration": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether it's enabled." + }, + "apiVersion": { + "type": "string", + "description": "The api version." + } + } + }, + "ResourceHydrationAccount": { + "type": "object", + "properties": { + "maxChildResourceConsistencyJobLimit": { + "type": "integer", + "format": "int64", + "description": "The max child resource consistency job limit." + }, + "encryptedKey": { + "type": "string", + "format": "password", + "description": "The encrypted key.", + "x-ms-secret": true + }, + "accountName": { + "type": "string", + "description": "The account name." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription id." + } + } + }, + "ResourceManagementAction": { + "type": "object", + "properties": { + "resources": { + "type": "array", + "description": "resource management action content.", + "items": { + "$ref": "#/definitions/ResourceManagementEntity" + }, + "x-ms-client-flatten": true, + "x-ms-identifiers": [ + "resourceId" + ] + } + } + }, + "ResourceManagementEntity": { + "type": "object", + "properties": { + "resourceId": { + "type": "string", + "format": "arm-id", + "description": "The resource id." + }, + "homeTenantId": { + "type": "string", + "description": "The home tenant id." + }, + "location": { + "type": "string", + "description": "The location." + }, + "status": { + "type": "string", + "description": "The operation status.", + "readOnly": true + } + }, + "required": [ + "resourceId" + ] + }, + "ResourceMovePolicy": { + "type": "object", + "properties": { + "validationRequired": { + "type": "boolean", + "description": "Whether validation is required." + }, + "crossResourceGroupMoveEnabled": { + "type": "boolean", + "description": "Whether cross resource group move is enabled." + }, + "crossSubscriptionMoveEnabled": { + "type": "boolean", + "description": "Whether cross subscription move is enabled." + } + } + }, + "ResourceProviderAuthentication": { + "type": "object", + "properties": { + "allowedAudiences": { + "type": "array", + "description": "The allowed audiences.", + "items": { + "type": "string" + } + } + }, + "required": [ + "allowedAudiences" + ] + }, + "ResourceProviderAuthenticationProperties": { + "type": "object", + "description": "The provider authentication.", + "allOf": [ + { + "$ref": "#/definitions/ResourceProviderAuthentication" + } + ] + }, + "ResourceProviderAuthorization": { + "type": "object", + "properties": { + "applicationId": { + "type": "string", + "description": "The application id." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition id." + }, + "managedByRoleDefinitionId": { + "type": "string", + "description": "The managed by role definition id." + }, + "managedByAuthorization": { + "$ref": "#/definitions/ResourceProviderAuthorizationManagedByAuthorization", + "description": "Managed by authorization." + }, + "allowedThirdPartyExtensions": { + "type": "array", + "description": "The allowed third party extensions.", + "items": { + "$ref": "#/definitions/ThirdPartyExtension" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "groupingTag": { + "type": "string", + "description": "The grouping tag." + } + } + }, + "ResourceProviderAuthorizationManagedByAuthorization": { + "type": "object", + "description": "Managed by authorization.", + "properties": { + "additionalAuthorizations": { + "type": "array", + "items": { + "$ref": "#/definitions/AdditionalAuthorization" + }, + "x-ms-identifiers": [ + "applicationId", + "roleDefinitionId" + ] + }, + "managedByResourceRoleDefinitionId": { + "type": "string", + "description": "The managed by resource role definition ID for the application." + }, + "allowManagedByInheritance": { + "type": "boolean", + "description": "Indicates whether the managed by resource role definition ID should be inherited." + } + } + }, + "ResourceProviderAuthorizationRules": { + "type": "object", + "properties": { + "asyncOperationPollingRules": { + "$ref": "#/definitions/AsyncOperationPollingRules", + "description": "The async operation polling rules." + } + } + }, + "ResourceProviderCapabilities": { + "type": "object", + "properties": { + "quotaId": { + "type": "string", + "description": "The quota id." + }, + "effect": { + "$ref": "#/definitions/ResourceProviderCapabilitiesEffect", + "description": "The effect." + }, + "requiredFeatures": { + "type": "array", + "description": "The required features.", + "items": { + "type": "string" + } + } + }, + "required": [ + "quotaId", + "effect" + ] + }, + "ResourceProviderCapabilitiesEffect": { + "type": "string", + "description": "The effect.", + "enum": [ + "NotSpecified", + "Allow", + "Disallow" + ], + "x-ms-enum": { + "name": "ResourceProviderCapabilitiesEffect", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "Allow", + "value": "Allow" + }, + { + "name": "Disallow", + "value": "Disallow" + } + ] + } + }, + "ResourceProviderEndpoint": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the endpoint is enabled." + }, + "apiVersions": { + "type": "array", + "description": "The api versions.", + "items": { + "type": "string" + } + }, + "endpointUri": { + "type": "string", + "description": "The endpoint uri." + }, + "locations": { + "type": "array", + "description": "The locations.", + "items": { + "type": "string" + } + }, + "requiredFeatures": { + "type": "array", + "description": "The required features.", + "items": { + "type": "string" + } + }, + "featuresRule": { + "$ref": "#/definitions/FeaturesRuleProperties", + "description": "The feature rules." + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "The timeout." + }, + "endpointType": { + "$ref": "#/definitions/EndpointType", + "description": "The endpoint type." + }, + "skuLink": { + "type": "string", + "description": "The sku link." + } + } + }, + "ResourceProviderManagement": { + "type": "object", + "properties": { + "schemaOwners": { + "type": "array", + "description": "The schema owners.", + "items": { + "type": "string" + } + }, + "manifestOwners": { + "type": "array", + "description": "The manifest owners.", + "items": { + "type": "string" + } + }, + "authorizationOwners": { + "type": "array", + "description": "The authorization owners.", + "items": { + "type": "string" + } + }, + "incidentRoutingService": { + "type": "string", + "description": "The incident routing service." + }, + "incidentRoutingTeam": { + "type": "string", + "description": "The incident routing team." + }, + "incidentContactEmail": { + "type": "string", + "description": "The incident contact email." + }, + "serviceTreeInfos": { + "type": "array", + "description": "The service tree infos.", + "items": { + "$ref": "#/definitions/ServiceTreeInfo" + }, + "x-ms-identifiers": [] + }, + "resourceAccessPolicy": { + "$ref": "#/definitions/ResourceAccessPolicy", + "description": "The resource access policy." + }, + "resourceAccessRoles": { + "type": "array", + "description": "The resource access roles.", + "items": { + "$ref": "#/definitions/ResourceAccessRole" + }, + "x-ms-identifiers": [] + }, + "expeditedRolloutSubmitters": { + "type": "array", + "description": "List of expedited rollout submitters.", + "items": { + "type": "string" + } + }, + "errorResponseMessageOptions": { + "$ref": "#/definitions/ResourceProviderManagementErrorResponseMessageOptions", + "description": "Options for error response messages." + }, + "expeditedRolloutMetadata": { + "$ref": "#/definitions/ResourceProviderManagementExpeditedRolloutMetadata", + "description": "Metadata for expedited rollout." + }, + "canaryManifestOwners": { + "type": "array", + "description": "List of manifest owners for canary.", + "items": { + "type": "string" + } + }, + "pcCode": { + "type": "string", + "description": "The profit center code for the subscription." + }, + "profitCenterProgramId": { + "type": "string", + "description": "The profit center program id for the subscription." + } + } + }, + "ResourceProviderManagementErrorResponseMessageOptions": { + "type": "object", + "description": "Options for error response messages.", + "properties": { + "serverFailureResponseMessageType": { + "$ref": "#/definitions/ServerFailureResponseMessageType", + "description": "Type of server failure response message." + } + } + }, + "ResourceProviderManagementExpeditedRolloutMetadata": { + "type": "object", + "description": "Metadata for expedited rollout.", + "properties": { + "enabled": { + "type": "boolean", + "description": "Expedited rollout enabled?" + }, + "expeditedRolloutIntent": { + "$ref": "#/definitions/ExpeditedRolloutIntent", + "description": "Expedited rollout intent." + } + } + }, + "ResourceProviderManagementProperties": { + "type": "object", + "description": "The resource provider management.", + "allOf": [ + { + "$ref": "#/definitions/ResourceProviderManagement" + } + ] + }, + "ResourceProviderManifest": { + "type": "object", + "properties": { + "providerAuthentication": { + "$ref": "#/definitions/ResourceProviderAuthenticationProperties", + "description": "The provider authentication." + }, + "providerAuthorizations": { + "type": "array", + "description": "The provider authorizations.", + "items": { + "$ref": "#/definitions/ResourceProviderAuthorization" + }, + "x-ms-identifiers": [] + }, + "namespace": { + "type": "string", + "description": "The namespace." + }, + "services": { + "type": "array", + "description": "The services.", + "items": { + "$ref": "#/definitions/ResourceProviderService" + }, + "x-ms-identifiers": [] + }, + "serviceName": { + "type": "string", + "description": "The service name." + }, + "providerVersion": { + "type": "string", + "description": "The provider version." + }, + "providerType": { + "$ref": "#/definitions/ResourceProviderType", + "description": "The provider type." + }, + "requiredFeatures": { + "type": "array", + "description": "The required features.", + "items": { + "type": "string" + } + }, + "featuresRule": { + "$ref": "#/definitions/FeaturesRuleProperties", + "description": "The features rule." + }, + "requestHeaderOptions": { + "$ref": "#/definitions/RequestHeaderOptionsProperties", + "description": "The request header options." + }, + "resourceTypes": { + "type": "array", + "description": "The resource types.", + "items": { + "$ref": "#/definitions/ResourceType" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "management": { + "$ref": "#/definitions/ResourceProviderManagementProperties", + "description": "The resource provider management." + }, + "capabilities": { + "type": "array", + "description": "The capabilities.", + "items": { + "$ref": "#/definitions/ResourceProviderCapabilities" + }, + "x-ms-identifiers": [ + "quotaId" + ] + }, + "crossTenantTokenValidation": { + "$ref": "#/definitions/CrossTenantTokenValidation", + "description": "The cross tenant token validation." + }, + "metadata": { + "description": "The metadata." + }, + "globalNotificationEndpoints": { + "type": "array", + "description": "The global notification endpoints.", + "items": { + "$ref": "#/definitions/ResourceProviderEndpoint" + }, + "x-ms-identifiers": [] + }, + "reRegisterSubscriptionMetadata": { + "$ref": "#/definitions/ResourceProviderManifestReRegisterSubscriptionMetadata", + "description": "The re-register subscription metadata." + }, + "enableTenantLinkedNotification": { + "type": "boolean", + "description": "Whether tenant linked notification is enabled.", + "x-nullable": true + }, + "notifications": { + "type": "array", + "description": "The notifications.", + "items": { + "$ref": "#/definitions/Notification" + }, + "x-ms-identifiers": [ + "notificationType" + ] + }, + "linkedNotificationRules": { + "type": "array", + "description": "The linked notification rules.", + "items": { + "$ref": "#/definitions/FanoutLinkedNotificationRule" + }, + "x-ms-identifiers": [] + }, + "resourceProviderAuthorizationRules": { + "$ref": "#/definitions/ResourceProviderAuthorizationRules", + "description": "The resource provider authorization rules." + } + } + }, + "ResourceProviderManifestProperties": { + "type": "object", + "properties": { + "providerAuthentication": { + "$ref": "#/definitions/ResourceProviderAuthenticationProperties", + "description": "The provider authentication." + }, + "providerAuthorizations": { + "type": "array", + "description": "The provider authorizations.", + "items": { + "$ref": "#/definitions/ResourceProviderAuthorization" + }, + "x-ms-identifiers": [] + }, + "namespace": { + "type": "string", + "description": "The namespace." + }, + "services": { + "type": "array", + "description": "The services.", + "items": { + "$ref": "#/definitions/ResourceProviderService" + }, + "x-ms-identifiers": [] + }, + "serviceName": { + "type": "string", + "description": "The service name." + }, + "providerVersion": { + "type": "string", + "description": "The provider version." + }, + "providerType": { + "$ref": "#/definitions/ResourceProviderType", + "description": "The provider type." + }, + "requiredFeatures": { + "type": "array", + "description": "The required features.", + "items": { + "type": "string" + } + }, + "featuresRule": { + "$ref": "#/definitions/FeaturesRuleProperties", + "description": "The features rule." + }, + "requestHeaderOptions": { + "$ref": "#/definitions/RequestHeaderOptionsProperties", + "description": "The request header options." + }, + "management": { + "$ref": "#/definitions/ResourceProviderManagementProperties", + "description": "The resource provider management." + }, + "capabilities": { + "type": "array", + "description": "The capabilities.", + "items": { + "$ref": "#/definitions/ResourceProviderCapabilities" + }, + "x-ms-identifiers": [ + "quotaId" + ] + }, + "crossTenantTokenValidation": { + "$ref": "#/definitions/CrossTenantTokenValidation", + "description": "The cross tenant token validation." + }, + "metadata": { + "description": "The metadata." + }, + "templateDeploymentOptions": { + "$ref": "#/definitions/TemplateDeploymentOptionsProperties", + "description": "The template deployment options." + }, + "globalNotificationEndpoints": { + "type": "array", + "description": "The global notification endpoints.", + "items": { + "$ref": "#/definitions/ResourceProviderEndpoint" + }, + "x-ms-identifiers": [] + }, + "enableTenantLinkedNotification": { + "type": "boolean", + "description": "The enable tenant linked notification.", + "x-nullable": true + }, + "notifications": { + "type": "array", + "description": "The notifications.", + "items": { + "$ref": "#/definitions/Notification" + }, + "x-ms-identifiers": [ + "notificationType" + ] + }, + "linkedNotificationRules": { + "type": "array", + "description": "The linked notification rules.", + "items": { + "$ref": "#/definitions/FanoutLinkedNotificationRule" + }, + "x-ms-identifiers": [] + }, + "resourceProviderAuthorizationRules": { + "$ref": "#/definitions/ResourceProviderAuthorizationRules", + "description": "The resource provider authorization rules." + }, + "dstsConfiguration": { + "$ref": "#/definitions/DstsConfigurationProperties", + "description": "The dsts configuration." + }, + "notificationOptions": { + "$ref": "#/definitions/NotificationOptions", + "description": "Notification options." + }, + "resourceHydrationAccounts": { + "type": "array", + "description": "resource hydration accounts", + "items": { + "$ref": "#/definitions/ResourceHydrationAccount" + }, + "x-ms-identifiers": [] + }, + "notificationSettings": { + "$ref": "#/definitions/ResourceProviderManifestPropertiesNotificationSettings", + "description": "Notification settings." + }, + "managementGroupGlobalNotificationEndpoints": { + "type": "array", + "description": "Management groups global notification endpoints.", + "items": { + "$ref": "#/definitions/ResourceProviderEndpoint" + }, + "x-ms-identifiers": [] + }, + "optionalFeatures": { + "type": "array", + "description": "Optional features.", + "items": { + "type": "string" + } + }, + "resourceGroupLockOptionDuringMove": { + "$ref": "#/definitions/ResourceProviderManifestPropertiesResourceGroupLockOptionDuringMove", + "description": "Resource group lock option during move." + }, + "responseOptions": { + "$ref": "#/definitions/ResourceProviderManifestPropertiesResponseOptions", + "description": "Response options." + }, + "legacyNamespace": { + "type": "string", + "description": "Legacy namespace." + }, + "legacyRegistrations": { + "type": "array", + "description": "Legacy registrations.", + "items": { + "type": "string" + } + }, + "customManifestVersion": { + "type": "string", + "description": "Custom manifest version." + } + } + }, + "ResourceProviderManifestPropertiesNotificationSettings": { + "type": "object", + "description": "Notification settings.", + "properties": { + "subscriberSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/SubscriberSetting" + }, + "x-ms-identifiers": [] + } + } + }, + "ResourceProviderManifestPropertiesResourceGroupLockOptionDuringMove": { + "type": "object", + "description": "Resource group lock option during move.", + "properties": { + "blockActionVerb": { + "$ref": "#/definitions/BlockActionVerb", + "description": "The action verb that will be blocked when the resource group is locked during move." + } + } + }, + "ResourceProviderManifestPropertiesResponseOptions": { + "type": "object", + "description": "Response options.", + "properties": { + "serviceClientOptionsType": { + "$ref": "#/definitions/ServiceClientOptionsType" + } + } + }, + "ResourceProviderManifestReRegisterSubscriptionMetadata": { + "type": "object", + "description": "The re-register subscription metadata.", + "allOf": [ + { + "$ref": "#/definitions/ReRegisterSubscriptionMetadata" + } + ] + }, + "ResourceProviderService": { + "type": "object", + "description": "Resource provider service.", + "properties": { + "serviceName": { + "type": "string", + "description": "The service name." + }, + "status": { + "$ref": "#/definitions/ServiceStatus", + "description": "The status." + } + } + }, + "ResourceProviderType": { + "type": "string", + "description": "The provider type.", + "enum": [ + "NotSpecified", + "Internal", + "External", + "Hidden", + "RegistrationFree", + "LegacyRegistrationRequired", + "TenantOnly", + "AuthorizationFree" + ], + "x-ms-enum": { + "name": "ResourceProviderType", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "Internal", + "value": "Internal" + }, + { + "name": "External", + "value": "External" + }, + { + "name": "Hidden", + "value": "Hidden" + }, + { + "name": "RegistrationFree", + "value": "RegistrationFree" + }, + { + "name": "LegacyRegistrationRequired", + "value": "LegacyRegistrationRequired" + }, + { + "name": "TenantOnly", + "value": "TenantOnly" + }, + { + "name": "AuthorizationFree", + "value": "AuthorizationFree" + } + ] + } + }, + "ResourceSubType": { + "type": "string", + "description": "The resource sub type.", + "enum": [ + "NotSpecified", + "AsyncOperation" + ], + "x-ms-enum": { + "name": "ResourceSubType", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "AsyncOperation", + "value": "AsyncOperation" + } + ] + } + }, + "ResourceType": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The resource type name." + }, + "routingType": { + "$ref": "#/definitions/RoutingType", + "description": "The resource routing type." + }, + "additionalOptions": { + "$ref": "#/definitions/AdditionalOptions", + "description": "The additional options." + }, + "crossTenantTokenValidation": { + "$ref": "#/definitions/CrossTenantTokenValidation", + "description": "The cross tenant token validation." + }, + "resourceValidation": { + "$ref": "#/definitions/ResourceValidation", + "description": "The resource validation." + }, + "allowedUnauthorizedActions": { + "type": "array", + "description": "The allowed unauthorized actions.", + "items": { + "type": "string" + } + }, + "allowedUnauthorizedActionsExtensions": { + "type": "array", + "description": "The allowed unauthorized actions extensions.", + "items": { + "$ref": "#/definitions/AllowedUnauthorizedActionsExtension" + } + }, + "authorizationActionMappings": { + "type": "array", + "description": "The authorization action mappings.", + "items": { + "$ref": "#/definitions/AuthorizationActionMapping" + }, + "x-ms-identifiers": [ + "original" + ] + }, + "linkedAccessChecks": { + "type": "array", + "description": "The linked access checks.", + "items": { + "$ref": "#/definitions/LinkedAccessCheck" + }, + "x-ms-identifiers": [] + }, + "defaultApiVersion": { + "type": "string", + "description": "The default api version." + }, + "loggingRules": { + "type": "array", + "description": "The logging rules.", + "items": { + "$ref": "#/definitions/LoggingRule" + }, + "x-ms-identifiers": [] + }, + "throttlingRules": { + "type": "array", + "description": "The throttling rules.", + "items": { + "$ref": "#/definitions/ThrottlingRule" + }, + "x-ms-identifiers": [] + }, + "endpoints": { + "type": "array", + "description": "The endpoints.", + "items": { + "$ref": "#/definitions/ResourceProviderEndpoint" + }, + "x-ms-identifiers": [] + }, + "marketplaceType": { + "$ref": "#/definitions/MarketplaceType", + "description": "The marketplace type." + }, + "identityManagement": { + "$ref": "#/definitions/ResourceTypeIdentityManagement", + "description": "The identity management." + }, + "metadata": { + "description": "The metadata." + }, + "requiredFeatures": { + "type": "array", + "description": "The required features.", + "items": { + "type": "string" + } + }, + "featuresRule": { + "$ref": "#/definitions/FeaturesRuleProperties", + "description": "The features rule." + }, + "subscriptionStateRules": { + "type": "array", + "description": "The subscription state rules.", + "items": { + "$ref": "#/definitions/SubscriptionStateRule" + }, + "x-ms-identifiers": [] + }, + "serviceTreeInfos": { + "type": "array", + "description": "The service tree infos.", + "items": { + "$ref": "#/definitions/ServiceTreeInfo" + }, + "x-ms-identifiers": [] + }, + "requestHeaderOptions": { + "$ref": "#/definitions/RequestHeaderOptionsProperties", + "description": "The request header options." + }, + "skuLink": { + "type": "string", + "description": "The sku link." + }, + "disallowedActionVerbs": { + "type": "array", + "description": "The disallowed action verbs.", + "items": { + "type": "string" + } + }, + "templateDeploymentPolicy": { + "$ref": "#/definitions/TemplateDeploymentPolicyProperties", + "description": "The template deployment policy." + }, + "extendedLocations": { + "type": "array", + "description": "The extended locations.", + "items": { + "$ref": "#/definitions/ExtendedLocationOptions" + }, + "x-ms-identifiers": [] + }, + "linkedOperationRules": { + "type": "array", + "description": "The linked operation rules.", + "items": { + "$ref": "#/definitions/LinkedOperationRule" + }, + "x-ms-identifiers": [] + }, + "resourceDeletionPolicy": { + "$ref": "#/definitions/ManifestResourceDeletionPolicy", + "description": "The resource deletion policy." + }, + "quotaRule": { + "$ref": "#/definitions/QuotaRule", + "description": "The quota rule." + }, + "notifications": { + "type": "array", + "description": "The notifications.", + "items": { + "$ref": "#/definitions/Notification" + }, + "x-ms-identifiers": [ + "notificationType" + ] + }, + "linkedNotificationRules": { + "type": "array", + "description": "The linked notification rules.", + "items": { + "$ref": "#/definitions/LinkedNotificationRule" + }, + "x-ms-identifiers": [] + }, + "resourceProviderAuthorizationRules": { + "$ref": "#/definitions/ResourceProviderAuthorizationRules", + "description": "The resource provider authorization rules." + } + } + }, + "ResourceTypeCategory": { + "type": "string", + "description": "The category.", + "enum": [ + "None", + "FreeForm", + "Internal", + "PureProxy" + ], + "x-ms-enum": { + "name": "ResourceTypeCategory", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "None" + }, + { + "name": "FreeForm", + "value": "FreeForm" + }, + { + "name": "Internal", + "value": "Internal" + }, + { + "name": "PureProxy", + "value": "PureProxy" + } + ] + } + }, + "ResourceTypeEndpoint": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "description": "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": "Managed", + "enum": [ + "Managed", + "Direct" + ], + "x-ms-enum": { + "name": "ResourceTypeEndpointKind", + "modelAsString": true, + "values": [ + { + "name": "Managed", + "value": "Managed", + "description": "Endpoint served by ProviderHub service" + }, + { + "name": "Direct", + "value": "Direct", + "description": "Endpoint served by the onboarded Resource Provider Service." + } + ] + } + }, + "enabled": { + "type": "boolean", + "description": "Whether the endpoint is enabled." + }, + "apiVersions": { + "type": "array", + "description": "The api versions.", + "items": { + "type": "string" + } + }, + "locations": { + "type": "array", + "description": "The locations.", + "items": { + "type": "string" + } + }, + "requiredFeatures": { + "type": "array", + "description": "The required features.", + "items": { + "type": "string" + } + }, + "featuresRule": { + "$ref": "#/definitions/FeaturesRuleProperties", + "description": "The features rule." + }, + "extensions": { + "type": "array", + "description": "The extensions.", + "items": { + "$ref": "#/definitions/ResourceTypeExtension" + }, + "x-ms-identifiers": [ + "endpointUri" + ] + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "The timeout." + }, + "endpointType": { + "$ref": "#/definitions/EndpointTypeResourceType", + "description": "The endpoint type." + }, + "tokenAuthConfiguration": { + "$ref": "#/definitions/TokenAuthConfiguration", + "description": "The token auth configuration." + }, + "skuLink": { + "type": "string", + "description": "The sku link." + }, + "endpointUri": { + "type": "string", + "description": "The endpoint uri." + }, + "apiVersion": { + "type": "string", + "description": "Api version." + }, + "zones": { + "type": "array", + "description": "List of zones.", + "items": { + "type": "string" + } + }, + "dstsConfiguration": { + "$ref": "#/definitions/DstsConfigurationProperties", + "description": "The dsts configuration." + }, + "dataBoundary": { + "$ref": "#/definitions/DataBoundary", + "description": "The data boundary." + } + } + }, + "ResourceTypeEndpointBase": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether it's enabled." + }, + "apiVersions": { + "type": "array", + "description": "The api versions.", + "items": { + "type": "string" + } + }, + "endpointUri": { + "type": "string", + "description": "The endpoint uri." + }, + "locations": { + "type": "array", + "description": "The locations.", + "items": { + "type": "string" + } + }, + "requiredFeatures": { + "type": "array", + "description": "The required features.", + "items": { + "type": "string" + } + }, + "featuresRule": { + "$ref": "#/definitions/FeaturesPolicy", + "description": "The features rule." + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "This is a TimeSpan property." + }, + "endpointType": { + "$ref": "#/definitions/EndpointType", + "description": "The endpoint type." + }, + "dstsConfiguration": { + "$ref": "#/definitions/DstsConfigurationProperties", + "description": "The dsts configuration." + }, + "skuLink": { + "type": "string", + "description": "The sku link." + }, + "apiVersion": { + "type": "string", + "description": "The api version." + }, + "zones": { + "type": "array", + "description": "The zones.", + "items": { + "type": "string" + } + } + }, + "required": [ + "enabled", + "apiVersions", + "endpointUri", + "locations", + "requiredFeatures", + "featuresRule", + "timeout", + "endpointType", + "dstsConfiguration", + "skuLink", + "apiVersion", + "zones" + ] + }, + "ResourceTypeEndpointKind": { + "type": "string", + "description": "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": [ + "Managed", + "Direct" + ], + "x-ms-enum": { + "name": "ResourceTypeEndpointKind", + "modelAsString": true, + "values": [ + { + "name": "Managed", + "value": "Managed", + "description": "Endpoint served by ProviderHub service" + }, + { + "name": "Direct", + "value": "Direct", + "description": "Endpoint served by the onboarded Resource Provider Service." + } + ] + } + }, + "ResourceTypeExtendedLocationPolicy": { + "type": "string", + "enum": [ + "NotSpecified", + "All" + ], + "x-ms-enum": { + "name": "ResourceTypeExtendedLocationPolicy", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "All", + "value": "All" + } + ] + } + }, + "ResourceTypeExtension": { + "type": "object", + "properties": { + "endpointUri": { + "type": "string", + "description": "The endpoint uri." + }, + "extensionCategories": { + "type": "array", + "description": "The extension categories.", + "items": { + "$ref": "#/definitions/ExtensionCategory" + } + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "The timeout." + } + } + }, + "ResourceTypeExtensionOptions": { + "type": "object", + "properties": { + "resourceCreationBegin": { + "$ref": "#/definitions/ResourceTypeExtensionOptionsResourceCreationBegin", + "description": "Resource creation begin." + } + } + }, + "ResourceTypeExtensionOptionsResourceCreationBegin": { + "type": "object", + "description": "Resource creation begin.", + "allOf": [ + { + "$ref": "#/definitions/ExtensionOptions" + } + ] + }, + "ResourceTypeIdentityManagement": { + "type": "object", + "description": "The identity management.", + "allOf": [ + { + "$ref": "#/definitions/IdentityManagement" + } + ] + }, + "ResourceTypeOnBehalfOfToken": { + "type": "object", + "properties": { + "actionName": { + "type": "string", + "description": "The action name." + }, + "lifeTime": { + "type": "string", + "description": "This is a TimeSpan property." + } + } + }, + "ResourceTypeRegistration": { + "type": "object", + "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.", + "properties": { + "properties": { + "$ref": "#/definitions/ResourceTypeRegistrationProperties" + }, + "kind": { + "type": "string", + "description": "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": "Managed", + "enum": [ + "Managed", + "Hybrid", + "Direct" + ], + "x-ms-enum": { + "name": "ResourceTypeRegistrationKind", + "modelAsString": true, + "values": [ + { + "name": "Managed", + "value": "Managed", + "description": "Resource type served by the ProviderHub service." + }, + { + "name": "Hybrid", + "value": "Hybrid", + "description": "Resource type served by both the ProviderHub & the onboarded Resource Provider Services (i.e. The type has a mix of managed and direct endpoints)." + }, + { + "name": "Direct", + "value": "Direct", + "description": "Resource type served by the onboarded Resource Provider Service." + } + ] + } + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource" + } + ] + }, + "ResourceTypeRegistrationArrayResponseWithContinuation": { + "type": "object", + "description": "Paged collection of ResourceTypeRegistration items", + "properties": { + "value": { + "type": "array", + "description": "The ResourceTypeRegistration items on this page", + "items": { + "$ref": "#/definitions/ResourceTypeRegistration" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "ResourceTypeRegistrationKind": { + "type": "string", + "description": "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": [ + "Managed", + "Hybrid", + "Direct" + ], + "x-ms-enum": { + "name": "ResourceTypeRegistrationKind", + "modelAsString": true, + "values": [ + { + "name": "Managed", + "value": "Managed", + "description": "Resource type served by the ProviderHub service." + }, + { + "name": "Hybrid", + "value": "Hybrid", + "description": "Resource type served by both the ProviderHub & the onboarded Resource Provider Services (i.e. The type has a mix of managed and direct endpoints)." + }, + { + "name": "Direct", + "value": "Direct", + "description": "Resource type served by the onboarded Resource Provider Service." } + ] + } + }, + "ResourceTypeRegistrationProperties": { + "type": "object", + "properties": { + "routingType": { + "$ref": "#/definitions/RoutingType", + "description": "The resource routing type." + }, + "additionalOptions": { + "$ref": "#/definitions/AdditionalOptionsResourceTypeRegistration", + "description": "The additional options." + }, + "crossTenantTokenValidation": { + "$ref": "#/definitions/CrossTenantTokenValidation", + "description": "The cross tenant token validation." + }, + "regionality": { + "$ref": "#/definitions/Regionality", + "description": "The regionality." }, "endpoints": { - "description": "The extensions.", "type": "array", + "description": "The extensions.", "items": { "$ref": "#/definitions/ResourceTypeEndpoint" }, "x-ms-identifiers": [] }, "extensionOptions": { - "description": "The extension options.", - "allOf": [ - { - "$ref": "#/definitions/ResourceTypeExtensionOptions" - } - ] + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesExtensionOptions", + "description": "The extension options." }, "marketplaceType": { - "description": "The marketplace type.", - "enum": [ - "NotSpecified", - "AddOn", - "Bypass", - "Store" - ], - "type": "string", - "x-ms-enum": { - "name": "MarketplaceType" - } + "$ref": "#/definitions/MarketplaceType", + "description": "The marketplace type." }, "swaggerSpecifications": { - "description": "The swagger specifications.", "type": "array", + "description": "The swagger specifications.", "items": { "$ref": "#/definitions/SwaggerSpecification" }, @@ -6415,22 +8398,22 @@ ] }, "allowedUnauthorizedActions": { - "description": "The allowed unauthorized actions.", "type": "array", + "description": "The allowed unauthorized actions.", "items": { "type": "string" } }, "allowedUnauthorizedActionsExtensions": { - "description": "The allowed unauthorized actions extensions.", "type": "array", + "description": "The allowed unauthorized actions extensions.", "items": { "$ref": "#/definitions/AllowedUnauthorizedActionsExtension" } }, "authorizationActionMappings": { - "description": "The authorization action mappings", "type": "array", + "description": "The authorization action mappings", "items": { "$ref": "#/definitions/AuthorizationActionMapping" }, @@ -6439,308 +8422,216 @@ ] }, "linkedAccessChecks": { - "description": "The linked access checks.", "type": "array", + "description": "The linked access checks.", "items": { "$ref": "#/definitions/LinkedAccessCheck" }, "x-ms-identifiers": [] }, "defaultApiVersion": { - "description": "The default api version.", - "type": "string" + "type": "string", + "description": "The default api version." }, "loggingRules": { - "description": "The logging rules.", "type": "array", + "description": "The logging rules.", "items": { "$ref": "#/definitions/LoggingRule" }, "x-ms-identifiers": [] }, "throttlingRules": { - "description": "The throttling rules.", "type": "array", + "description": "The throttling rules.", "items": { "$ref": "#/definitions/ThrottlingRule" }, "x-ms-identifiers": [] }, "requiredFeatures": { - "description": "The required features.", "type": "array", + "description": "The required features.", "items": { "type": "string" } }, "featuresRule": { - "description": "The features rule.", - "allOf": [ - { - "$ref": "#/definitions/FeaturesRule" - } - ] + "$ref": "#/definitions/FeaturesRuleProperties", + "description": "The features rule." }, "enableAsyncOperation": { - "description": "Whether async operation is enabled.", - "type": "boolean" + "type": "boolean", + "description": "Whether async operation is enabled." }, "provisioningState": { + "$ref": "#/definitions/ProvisioningState", "description": "The provisioning state.", - "$ref": "#/definitions/ProvisioningState" + "readOnly": true }, "enableThirdPartyS2S": { - "description": "Whether third party S2S is enabled.", - "type": "boolean" + "type": "boolean", + "description": "Whether third party S2S is enabled." }, "subscriptionLifecycleNotificationSpecifications": { - "description": "The subscription lifecycle notification specifications.", - "allOf": [ - { - "$ref": "#/definitions/SubscriptionLifecycleNotificationSpecifications" - } - ] + "$ref": "#/definitions/SubscriptionLifecycleNotificationSpecificationsProperties", + "description": "The subscription lifecycle notification specifications." }, "isPureProxy": { - "description": "Whether it is pure proxy.", - "type": "boolean" + "type": "boolean", + "description": "Whether it is pure proxy." }, "identityManagement": { - "description": "The identity management.", - "allOf": [ - { - "$ref": "#/definitions/IdentityManagementProperties" - } - ] + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesIdentityManagement", + "description": "The identity management." }, "checkNameAvailabilitySpecifications": { - "description": "The check name availability specifications.", - "allOf": [ - { - "$ref": "#/definitions/CheckNameAvailabilitySpecifications" - } - ] + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesCheckNameAvailabilitySpecifications", + "description": "The check name availability specifications." }, "disallowedActionVerbs": { - "description": "The disallowed action verbs.", "type": "array", + "description": "The disallowed action verbs.", "items": { "type": "string" } }, "serviceTreeInfos": { - "description": "The service tree infos.", "type": "array", + "description": "The service tree infos.", "items": { "$ref": "#/definitions/ServiceTreeInfo" }, "x-ms-identifiers": [] }, "requestHeaderOptions": { - "description": "The request header options.", - "allOf": [ - { - "$ref": "#/definitions/RequestHeaderOptions" - } - ] + "$ref": "#/definitions/RequestHeaderOptionsProperties", + "description": "The request header options." }, "subscriptionStateRules": { - "description": "The subscription state rules.", "type": "array", + "description": "The subscription state rules.", "items": { "$ref": "#/definitions/SubscriptionStateRule" }, "x-ms-identifiers": [] }, "templateDeploymentOptions": { - "description": "The template deployment options.", - "allOf": [ - { - "$ref": "#/definitions/TemplateDeploymentOptions" - } - ] + "$ref": "#/definitions/TemplateDeploymentOptionsProperties", + "description": "The template deployment options." }, "extendedLocations": { - "description": "The extended locations.", "type": "array", + "description": "The extended locations.", "items": { "$ref": "#/definitions/ExtendedLocationOptions" }, "x-ms-identifiers": [] }, "resourceMovePolicy": { - "description": "The resource move policy.", - "allOf": [ - { - "$ref": "#/definitions/ResourceMovePolicy" - } - ] + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesResourceMovePolicy", + "description": "The resource move policy." }, "resourceDeletionPolicy": { - "description": "The resource deletion policy.", - "enum": [ - "NotSpecified", - "CascadeDeleteAll", - "CascadeDeleteProxyOnlyChildren" - ], - "type": "string", - "x-ms-enum": { - "name": "ResourceDeletionPolicy", - "modelAsString": true - } + "$ref": "#/definitions/ResourceDeletionPolicy", + "description": "The resource deletion policy." }, "resourceConcurrencyControlOptions": { - "description": "The resource concurrency control options.", "type": "object", + "description": "The resource concurrency control options.", "additionalProperties": { "$ref": "#/definitions/ResourceConcurrencyControlOption" } }, "resourceGraphConfiguration": { - "description": "The resource graph configuration.", - "allOf": [ - { - "$ref": "#/definitions/ResourceGraphConfiguration" - } - ] + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesResourceGraphConfiguration", + "description": "The resource graph configuration." }, "management": { - "description": "The resource provider management.", - "allOf": [ - { - "$ref": "#/definitions/ResourceProviderManagement" - } - ] + "$ref": "#/definitions/ResourceProviderManagementProperties", + "description": "The resource provider management." }, "openApiConfiguration": { - "description": "The open api configuration.", - "$ref": "#/definitions/OpenApiConfiguration" + "$ref": "#/definitions/OpenApiConfiguration", + "description": "The open api configuration." }, "onBehalfOfTokens": { - "description": "The on behalf of tokens.", - "$ref": "#/definitions/ResourceTypeOnBehalfOfToken" + "$ref": "#/definitions/ResourceTypeOnBehalfOfToken", + "description": "The on behalf of tokens." }, "category": { - "description": "The category.", - "enum": [ - "None", - "FreeForm", - "Internal", - "PureProxy" - ], - "type": "string", - "x-ms-enum": { - "name": "ResourceTypeCategory", - "modelAsString": true - } + "$ref": "#/definitions/ResourceTypeCategory", + "description": "The category." }, "resourceValidation": { - "description": "The resource validation.", - "enum": [ - "NotSpecified", - "ReservedWords", - "ProfaneWords" - ], - "type": "string", - "x-ms-enum": { - "name": "ResourceValidation", - "modelAsString": true - } + "$ref": "#/definitions/ResourceValidation", + "description": "The resource validation." }, "disallowedEndUserOperations": { - "description": "The disallowed end user operations.", "type": "array", + "description": "The disallowed end user operations.", "items": { "type": "string" - }, - "x-ms-identifiers": [] + } }, "metadata": { - "description": "The metadata.", "type": "object", - "additionalProperties": { - "type": "object" - } + "description": "The metadata.", + "additionalProperties": {} }, "skuLink": { - "description": "The sku link.", - "type": "string" + "type": "string", + "description": "The sku link." }, "quotaRule": { - "description": "The quota rule.", - "$ref": "#/definitions/QuotaRule" + "$ref": "#/definitions/QuotaRule", + "description": "The quota rule." }, "notifications": { + "type": "array", "description": "The notifications.", - "$ref": "#/definitions/Notifications" + "items": { + "$ref": "#/definitions/Notification" + }, + "x-ms-identifiers": [ + "notificationType" + ] }, "linkedNotificationRules": { - "description": "The linked notification rules.", "type": "array", + "description": "The linked notification rules.", "items": { "$ref": "#/definitions/LinkedNotificationRule" }, "x-ms-identifiers": [] }, "resourceProviderAuthorizationRules": { - "description": "The resource provider authorization rules.", - "$ref": "#/definitions/ResourceProviderAuthorizationRules" + "$ref": "#/definitions/ResourceProviderAuthorizationRules", + "description": "The resource provider authorization rules." }, "tokenAuthConfiguration": { - "description": "The token auth configuration.", - "$ref": "#/definitions/TokenAuthConfiguration" + "$ref": "#/definitions/TokenAuthConfiguration", + "description": "The token auth configuration." }, "templateDeploymentPolicy": { - "description": "The template deployment policy.", - "allOf": [ - { - "$ref": "#/definitions/TemplateDeploymentPolicy" - } - ] + "$ref": "#/definitions/TemplateDeploymentPolicyProperties", + "description": "The template deployment policy." }, "allowEmptyRoleAssignments": { - "description": "The allow empty role assignments.", - "type": "boolean" - }, - "policyExecutionType": { - "description": "The policy execution type.", - "type": "string", - "enum": [ - "NotSpecified", - "ExecutePolicies", - "BypassPolicies", - "ExpectPartialPutRequests" - ], - "x-ms-enum": { - "name": "PolicyExecutionType", - "modelAsString": true - } + "type": "boolean", + "description": "The allow empty role assignments." + }, + "policyExecutionType": { + "$ref": "#/definitions/PolicyExecutionType", + "description": "The policy execution type." }, "availabilityZoneRule": { - "description": "The availability zone rule.", - "type": "object", - "properties": { - "availabilityZonePolicy": { - "type": "string", - "enum": [ - "NotSpecified", - "SingleZoned", - "MultiZoned" - ], - "x-ms-enum": { - "name": "AvailabilityZonePolicy", - "modelAsString": true - } - } - } + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesAvailabilityZoneRule", + "description": "The availability zone rule." }, "dstsConfiguration": { - "description": "The dsts configuration.", - "allOf": [ - { - "$ref": "#/definitions/DstsConfiguration" - } - ] + "$ref": "#/definitions/DstsConfigurationProperties", + "description": "The dsts configuration." }, "asyncTimeoutRules": { "type": "array", @@ -6758,8 +8649,8 @@ } }, "apiProfiles": { - "description": "The api profiles.", "type": "array", + "description": "The api profiles.", "items": { "$ref": "#/definitions/ApiProfile" }, @@ -6769,8 +8660,8 @@ ] }, "linkedOperationRules": { - "description": "The linked operation rules.", "type": "array", + "description": "The linked operation rules.", "items": { "$ref": "#/definitions/LinkedOperationRule" }, @@ -6780,12 +8671,12 @@ ] }, "legacyName": { - "description": "The legacy name.", - "type": "string" + "type": "string", + "description": "The legacy name." }, "legacyNames": { - "description": "The legacy names.", "type": "array", + "description": "The legacy names.", "items": { "type": "string" } @@ -6798,64 +8689,24 @@ } }, "legacyPolicy": { - "description": "The legacy policy.", - "type": "object", - "properties": { - "disallowedLegacyOperations": { - "type": "array", - "items": { - "$ref": "#/definitions/LegacyOperation" - }, - "x-ms-identifiers": [] - }, - "disallowedConditions": { - "type": "array", - "items": { - "$ref": "#/definitions/LegacyDisallowedCondition" - }, - "x-ms-identifiers": [] - } - } + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesLegacyPolicy", + "description": "The legacy policy." }, "manifestLink": { - "description": "Manifest link.", - "type": "string" + "type": "string", + "description": "Manifest link." }, "capacityRule": { - "type": "object", - "description": "Capacity rule.", - "properties": { - "capacityPolicy": { - "type": "string", - "description": "Capacity policy.", - "enum": [ - "Default", - "Restricted" - ], - "x-ms-enum": { - "name": "CapacityPolicy", - "modelAsString": true - } - }, - "skuAlias": { - "description": "Sku alias", - "type": "string" - } - } + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesCapacityRule", + "description": "Capacity rule." }, "marketplaceOptions": { - "type": "object", - "description": "Marketplace options.", - "properties": { - "addOnPlanConversionAllowed": { - "type": "boolean", - "description": "Add-on plan conversion allowed." - } - } + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesMarketplaceOptions", + "description": "Marketplace options." }, "allowedResourceNames": { - "description": "The allowed resource names.", "type": "array", + "description": "The allowed resource names.", "items": { "$ref": "#/definitions/AllowedResourceName" }, @@ -6865,87 +8716,20 @@ ] }, "resourceCache": { - "type": "object", - "description": "Resource cache options.", - "properties": { - "enableResourceCache": { - "type": "boolean", - "description": "Enable resource cache." - }, - "resourceCacheExpirationTimespan": { - "type": "string", - "description": "Resource cache expiration timespan. This is a TimeSpan property." - } - } + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesResourceCache", + "description": "Resource cache options." }, "resourceQueryManagement": { - "type": "object", - "description": "Resource query management options.", - "properties": { - "filterOption": { - "type": "string", - "description": "Filter option.", - "enum": [ - "NotSpecified", - "EnableSubscriptionFilterOnTenant" - ], - "x-ms-enum": { - "name": "FilterOption", - "modelAsString": true - } - } - } + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesResourceQueryManagement", + "description": "Resource query management options." }, "supportsTags": { - "description": "Whether tags are supported.", - "type": "boolean" + "type": "boolean", + "description": "Whether tags are supported." }, "resourceManagementOptions": { - "type": "object", - "description": "Resource management options.", - "properties": { - "batchProvisioningSupport": { - "type": "object", - "description": "Batch provisioning support.", - "properties": { - "supportedOperations": { - "type": "string", - "description": "Supported operations.", - "enum": [ - "NotSpecified", - "Get", - "Delete" - ], - "x-ms-enum": { - "name": "SupportedOperations", - "modelAsString": true - } - } - } - }, - "deleteDependencies": { - "type": "array", - "description": "Delete dependencies.", - "items": { - "$ref": "#/definitions/DeleteDependency" - }, - "x-ms-identifiers": [ - "linkedType", - "linkedProperty", - "requiredFeatures" - ] - }, - "nestedProvisioningSupport": { - "type": "object", - "description": "Nested provisioning support.", - "properties": { - "minimumApiVersion": { - "type": "string", - "description": "Minimum API version." - } - } - } - } + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesResourceManagementOptions", + "description": "Resource management options." }, "groupingTag": { "type": "string", @@ -6956,1344 +8740,1516 @@ "description": "Add resource list target locations?" }, "resourceTypeCommonAttributeManagement": { - "type": "object", - "description": "Resource type common attribute management.", - "properties": { - "commonApiVersionsMergeMode": { - "type": "string", - "description": "Common api versions merge mode.", - "enum": [ - "Merge", - "Overwrite" - ], - "x-ms-enum": { - "name": "CommonApiVersionsMergeMode", - "modelAsString": true - } - } - } + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesResourceTypeCommonAttributeManagement", + "description": "Resource type common attribute management." }, "routingRule": { - "type": "object", - "description": "Routing rule.", - "properties": { - "hostResourceType": { - "description": "Hosted resource type.", - "type": "string" - } - } + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesRoutingRule", + "description": "Routing rule." }, "frontdoorRequestMode": { - "description": "The frontdoor request mode.", - "enum": [ - "NotSpecified", - "UseManifest" - ], - "type": "string", - "x-ms-enum": { - "name": "FrontdoorRequestMode", - "modelAsString": true - } + "$ref": "#/definitions/FrontdoorRequestMode", + "description": "The frontdoor request mode." }, "resourceSubType": { - "description": "The resource sub type.", - "enum": [ - "NotSpecified", - "AsyncOperation" - ], - "type": "string", - "x-ms-enum": { - "name": "ResourceSubType", - "modelAsString": true - } + "$ref": "#/definitions/ResourceSubType", + "description": "The resource sub type." }, "asyncOperationResourceTypeName": { - "description": "The async operation resource type name.", - "type": "string" + "type": "string", + "description": "The async operation resource type name." } } }, - "GroupConnectivityInformation": { + "ResourceTypeRegistrationPropertiesAvailabilityZoneRule": { "type": "object", + "description": "The availability zone rule.", "properties": { - "groupId": { - "description": "The group id.", - "type": "string" + "availabilityZonePolicy": { + "$ref": "#/definitions/AvailabilityZonePolicy" + } + } + }, + "ResourceTypeRegistrationPropertiesCapacityRule": { + "type": "object", + "description": "Capacity rule.", + "properties": { + "capacityPolicy": { + "$ref": "#/definitions/CapacityPolicy", + "description": "Capacity policy." }, - "requiredMembers": { + "skuAlias": { + "type": "string", + "description": "Sku alias" + } + } + }, + "ResourceTypeRegistrationPropertiesCheckNameAvailabilitySpecifications": { + "type": "object", + "description": "The check name availability specifications.", + "allOf": [ + { + "$ref": "#/definitions/CheckNameAvailabilitySpecifications" + } + ] + }, + "ResourceTypeRegistrationPropertiesExtensionOptions": { + "type": "object", + "description": "The extension options.", + "allOf": [ + { + "$ref": "#/definitions/ResourceTypeExtensionOptions" + } + ] + }, + "ResourceTypeRegistrationPropertiesIdentityManagement": { + "type": "object", + "description": "The identity management.", + "allOf": [ + { + "$ref": "#/definitions/IdentityManagementProperties" + } + ] + }, + "ResourceTypeRegistrationPropertiesLegacyPolicy": { + "type": "object", + "description": "The legacy policy.", + "properties": { + "disallowedLegacyOperations": { "type": "array", - "description": "List of required members for the group id.", "items": { - "type": "string" + "$ref": "#/definitions/LegacyOperation" } }, - "requiredZoneNames": { + "disallowedConditions": { "type": "array", - "description": "List of required zone names for the group id.", "items": { - "type": "string" - } - }, - "redirectMapId": { - "description": "The redirect map id.", - "type": "string" + "$ref": "#/definitions/LegacyDisallowedCondition" + }, + "x-ms-identifiers": [] } - }, - "required": [ - "groupId", - "requiredMembers", - "requiredZoneNames" - ] + } }, - "Notifications": { - "type": "array", - "items": { - "$ref": "#/definitions/Notification" - }, - "x-ms-identifiers": [ - "notificationType" - ] + "ResourceTypeRegistrationPropertiesMarketplaceOptions": { + "type": "object", + "description": "Marketplace options.", + "properties": { + "addOnPlanConversionAllowed": { + "type": "boolean", + "description": "Add-on plan conversion allowed." + } + } }, - "Notification": { + "ResourceTypeRegistrationPropertiesResourceCache": { "type": "object", + "description": "Resource cache options.", "properties": { - "notificationType": { - "description": "The notification type.", - "enum": [ - "Unspecified", - "SubscriptionNotification" - ], - "type": "string", - "x-ms-enum": { - "name": "NotificationType", - "modelAsString": true - } + "enableResourceCache": { + "type": "boolean", + "description": "Enable resource cache." }, - "skipNotifications": { - "description": "Whether notifications should be skipped.", - "enum": [ - "Unspecified", - "Enabled", - "Disabled" - ], + "resourceCacheExpirationTimespan": { "type": "string", - "x-ms-enum": { - "name": "SkipNotifications", - "modelAsString": true - } + "description": "Resource cache expiration timespan. This is a TimeSpan property." } } }, - "QuotaRule": { + "ResourceTypeRegistrationPropertiesResourceGraphConfiguration": { + "type": "object", + "description": "The resource graph configuration.", + "allOf": [ + { + "$ref": "#/definitions/ResourceGraphConfiguration" + } + ] + }, + "ResourceTypeRegistrationPropertiesResourceManagementOptions": { "type": "object", + "description": "Resource management options.", "properties": { - "quotaPolicy": { - "description": "The quota policy.", - "$ref": "#/definitions/QuotaPolicy" + "batchProvisioningSupport": { + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesResourceManagementOptionsBatchProvisioningSupport", + "description": "Batch provisioning support." }, - "locationRules": { - "description": "The location rules.", + "deleteDependencies": { "type": "array", + "description": "Delete dependencies.", "items": { - "$ref": "#/definitions/LocationQuotaRule" + "$ref": "#/definitions/DeleteDependency" }, - "x-ms-identifiers": [] + "x-ms-identifiers": [ + "linkedType", + "linkedProperty", + "requiredFeatures" + ] }, - "requiredFeatures": { - "description": "The required features.", - "type": "array", - "items": { - "type": "string" - } + "nestedProvisioningSupport": { + "$ref": "#/definitions/ResourceTypeRegistrationPropertiesResourceManagementOptionsNestedProvisioningSupport", + "description": "Nested provisioning support." } } }, - "LocationQuotaRule": { + "ResourceTypeRegistrationPropertiesResourceManagementOptionsBatchProvisioningSupport": { "type": "object", + "description": "Batch provisioning support.", "properties": { - "policy": { - "description": "The policy.", - "$ref": "#/definitions/QuotaPolicy" - }, - "quotaId": { - "description": "The quota id.", - "type": "string" + "supportedOperations": { + "$ref": "#/definitions/SupportedOperations", + "description": "Supported operations." + } + } + }, + "ResourceTypeRegistrationPropertiesResourceManagementOptionsNestedProvisioningSupport": { + "type": "object", + "description": "Nested provisioning support.", + "properties": { + "minimumApiVersion": { + "type": "string", + "description": "Minimum API version." + } + } + }, + "ResourceTypeRegistrationPropertiesResourceMovePolicy": { + "type": "object", + "description": "The resource move policy.", + "allOf": [ + { + "$ref": "#/definitions/ResourceMovePolicy" + } + ] + }, + "ResourceTypeRegistrationPropertiesResourceQueryManagement": { + "type": "object", + "description": "Resource query management options.", + "properties": { + "filterOption": { + "$ref": "#/definitions/FilterOption", + "description": "Filter option." + } + } + }, + "ResourceTypeRegistrationPropertiesResourceTypeCommonAttributeManagement": { + "type": "object", + "description": "Resource type common attribute management.", + "properties": { + "commonApiVersionsMergeMode": { + "$ref": "#/definitions/CommonApiVersionsMergeMode", + "description": "Common api versions merge mode." + } + } + }, + "ResourceTypeRegistrationPropertiesRoutingRule": { + "type": "object", + "description": "Routing rule.", + "properties": { + "hostResourceType": { + "type": "string", + "description": "Hosted resource type." + } + } + }, + "ResourceTypeSku": { + "type": "object", + "properties": { + "skuSettings": { + "type": "array", + "description": "The sku settings.", + "items": { + "$ref": "#/definitions/SkuSetting" + }, + "x-ms-identifiers": [ + "name" + ] }, - "location": { - "description": "The location.", - "type": "string" + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioning state.", + "readOnly": true } + }, + "required": [ + "skuSettings" + ] + }, + "ResourceValidation": { + "type": "string", + "description": "The resource validation.", + "enum": [ + "NotSpecified", + "ReservedWords", + "ProfaneWords" + ], + "x-ms-enum": { + "name": "ResourceValidation", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "ReservedWords", + "value": "ReservedWords" + }, + { + "name": "ProfaneWords", + "value": "ProfaneWords" + } + ] + } + }, + "Role": { + "type": "string", + "description": "The ownership role the application has on the resource types. The service owner role gives the application owner permissions. The limited owner role gives elevated permissions but does not allow all the permissions of a service owner, such as read/write on internal metadata.", + "enum": [ + "ServiceOwner", + "LimitedOwner" + ], + "x-ms-enum": { + "name": "Role", + "modelAsString": true, + "values": [ + { + "name": "ServiceOwner", + "value": "ServiceOwner" + }, + { + "name": "LimitedOwner", + "value": "LimitedOwner" + } + ] } }, - "LinkedNotificationRule": { + "RolloutStatusBase": { "type": "object", "properties": { - "actions": { - "description": "The actions.", - "type": "array", - "items": { - "type": "string" - } - }, - "actionsOnFailedOperation": { - "description": "The actions on failed operation.", - "type": "array", - "items": { - "type": "string" - } - }, - "fastPathActions": { - "description": "The fast path actions.", + "completedRegions": { "type": "array", + "description": "The completed regions.", "items": { "type": "string" } }, - "fastPathActionsOnFailedOperation": { - "description": "The fast path action on failed operation.", - "type": "array", - "items": { - "type": "string" + "failedOrSkippedRegions": { + "type": "object", + "description": "The failed or skipped regions.", + "additionalProperties": { + "$ref": "#/definitions/ExtendedErrorInfo" } - }, - "linkedNotificationTimeout": { - "description": "This is a TimeSpan property.", - "format": "duration", - "type": "string" } } }, - "FanoutLinkedNotificationRule": { - "type": "object", - "properties": { - "tokenAuthConfiguration": { - "description": "The token auth configuration.", - "$ref": "#/definitions/TokenAuthConfiguration" - }, - "actions": { - "description": "The actions.", - "type": "array", - "items": { - "type": "string" + "RoutingType": { + "type": "string", + "description": "The routing type.", + "enum": [ + "Default", + "ProxyOnly", + "HostBased", + "Extension", + "Tenant", + "Fanout", + "LocationBased", + "Failover", + "CascadeExtension", + "ChildFanout", + "CascadeAuthorizedExtension", + "BypassEndpointSelectionOptimization", + "LocationMapping", + "ServiceFanout" + ], + "x-ms-enum": { + "name": "RoutingType", + "modelAsString": true, + "values": [ + { + "name": "Default", + "value": "Default", + "description": "The resource routing type is default." + }, + { + "name": "ProxyOnly", + "value": "ProxyOnly", + "description": "The resource routing type is proxy only." + }, + { + "name": "HostBased", + "value": "HostBased", + "description": "The resource routing type is host based." + }, + { + "name": "Extension", + "value": "Extension", + "description": "The resource routing type is extension." + }, + { + "name": "Tenant", + "value": "Tenant", + "description": "The resource routing type is tenant." + }, + { + "name": "Fanout", + "value": "Fanout", + "description": "The resource routing type is fanout." + }, + { + "name": "LocationBased", + "value": "LocationBased", + "description": "The resource routing type is location based." + }, + { + "name": "Failover", + "value": "Failover", + "description": "The resource routing type is failover." + }, + { + "name": "CascadeExtension", + "value": "CascadeExtension", + "description": "The resource routing type is cascade extension." + }, + { + "name": "ChildFanout", + "value": "ChildFanout", + "description": "The resource routing type is child fanout." + }, + { + "name": "CascadeAuthorizedExtension", + "value": "CascadeAuthorizedExtension", + "description": "The resource routing type is cascade authorized extension." + }, + { + "name": "BypassEndpointSelectionOptimization", + "value": "BypassEndpointSelectionOptimization", + "description": "The resource routing type is bypass endpoint selection optimization." + }, + { + "name": "LocationMapping", + "value": "LocationMapping", + "description": "The resource routing type is location mapping." + }, + { + "name": "ServiceFanout", + "value": "ServiceFanout", + "description": "The resource routing type is service fanout." } - }, - "endpoints": { - "description": "The endpoints.", - "type": "array", - "items": { - "$ref": "#/definitions/ResourceProviderEndpoint" + ] + } + }, + "ServerFailureResponseMessageType": { + "type": "string", + "description": "Type of server failure response message.", + "enum": [ + "NotSpecified", + "OutageReporting" + ], + "x-ms-enum": { + "name": "ServerFailureResponseMessageType", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" }, - "x-ms-identifiers": [] - }, - "dstsConfiguration": { - "description": "The dsts configuration.", - "allOf": [ - { - "$ref": "#/definitions/DstsConfiguration" - } - ] - } + { + "name": "OutageReporting", + "value": "OutageReporting" + } + ] } }, - "ResourceProviderAuthorizationRules": { - "type": "object", - "properties": { - "asyncOperationPollingRules": { - "description": "The async operation polling rules.", - "$ref": "#/definitions/AsyncOperationPollingRules" - } + "ServiceClientOptionsType": { + "type": "string", + "enum": [ + "NotSpecified", + "DisableAutomaticDecompression" + ], + "x-ms-enum": { + "name": "ServiceClientOptionsType", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "DisableAutomaticDecompression", + "value": "DisableAutomaticDecompression" + } + ] } }, - "AsyncOperationPollingRules": { - "type": "object", - "properties": { - "authorizationActions": { - "description": "The authorization actions.", - "type": "array", - "items": { - "type": "string" + "ServiceFeatureFlagAction": { + "type": "string", + "description": "The service feature flag.", + "enum": [ + "DoNotCreate", + "Create" + ], + "x-ms-enum": { + "name": "ServiceFeatureFlagAction", + "modelAsString": true, + "values": [ + { + "name": "DoNotCreate", + "value": "DoNotCreate" + }, + { + "name": "Create", + "value": "Create" } - }, - "additionalOptions": { - "description": "The additional options.", - "enum": [ - "ProtectedAsyncOperationPolling", - "ProtectedAsyncOperationPollingAuditOnly" - ], - "type": "string", - "x-ms-enum": { - "name": "AdditionalOptionsAsyncOperation", - "modelAsString": true + ] + } + }, + "ServiceStatus": { + "type": "string", + "description": "The status.", + "enum": [ + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "ServiceStatus", + "modelAsString": true, + "values": [ + { + "name": "Active", + "value": "Active" + }, + { + "name": "Inactive", + "value": "Inactive" } - } + ] } }, - "ResourceTypeOnBehalfOfToken": { + "ServiceTreeInfo": { "type": "object", "properties": { - "actionName": { - "description": "The action name.", - "type": "string" + "serviceId": { + "type": "string", + "description": "The service id." }, - "lifeTime": { - "description": "This is a TimeSpan property.", - "type": "string" + "componentId": { + "type": "string", + "description": "The component id." + }, + "readiness": { + "$ref": "#/definitions/Readiness", + "description": "The readiness." } } }, - "ResourceTypeRegistration": { - "type": "object", - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource" - } + "SignedRequestScope": { + "type": "string", + "description": "The signed request scope.", + "enum": [ + "ResourceUri", + "Endpoint" ], - "properties": { - "properties": { - "$ref": "#/definitions/ResourceTypeRegistrationProperties" - }, - "systemData": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/systemData", - "readOnly": true - }, - "kind": { - "enum": [ - "Managed", - "Hybrid", - "Direct" - ], - "type": "string", - "default": "Managed", - "x-ms-enum": { - "name": "ResourceTypeRegistrationKind", - "modelAsString": true, - "values": [ - { - "value": "Managed", - "description": "Resource type served by the ProviderHub service." - }, - { - "value": "Hybrid", - "description": "Resource type served by both the ProviderHub & the onboarded Resource Provider Services (i.e. The type has a mix of managed and direct endpoints)." - }, - { - "value": "Direct", - "description": "Resource type served by the onboarded Resource Provider Service." - } - ] + "x-ms-enum": { + "name": "SignedRequestScope", + "modelAsString": true, + "values": [ + { + "name": "ResourceUri", + "value": "ResourceUri" }, - "description": "Resource type registration kind. This Metadata is also used by portal/tooling/etc to render different UX experiences for resources of the same type." - } - }, - "x-ms-azure-resource": true + { + "name": "Endpoint", + "value": "Endpoint" + } + ] + } }, - "ResourceTypeRegistrationArrayResponseWithContinuation": { - "type": "object", - "properties": { - "value": { - "description": "The value.", - "type": "array", - "items": { - "$ref": "#/definitions/ResourceTypeRegistration" + "SkipNotifications": { + "type": "string", + "description": "Whether notifications should be skipped.", + "enum": [ + "Unspecified", + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "SkipNotifications", + "modelAsString": true, + "values": [ + { + "name": "Unspecified", + "value": "Unspecified" + }, + { + "name": "Enabled", + "value": "Enabled" + }, + { + "name": "Disabled", + "value": "Disabled" } - }, - "nextLink": { - "description": "The URL to get to the next set of results, if there are any.", - "type": "string" - } + ] } }, "SkuCapability": { - "required": [ - "name", - "value" - ], "type": "object", "properties": { "name": { - "description": "The name.", - "type": "string" + "type": "string", + "description": "The name." }, "value": { - "description": "The value.", - "type": "string" - } - } - }, - "SkuZoneDetail": { - "type": "object", - "properties": { - "name": { - "description": "The name.", - "type": "array", - "items": { - "type": "string" - } - }, - "capabilities": { - "description": "The capabilities.", - "type": "array", - "items": { - "$ref": "#/definitions/SkuCapability" - }, - "x-ms-identifiers": [ - "name" - ] + "type": "string", + "description": "The value." } - } - }, - "SkuLocationInfo": { + }, "required": [ - "location" - ], - "type": "object", - "properties": { - "location": { - "description": "The location.", - "type": "string" - }, - "zones": { - "description": "The zones.", - "type": "array", - "items": { - "type": "string" - } - }, - "zoneDetails": { - "description": "The zone details.", - "type": "array", - "items": { - "$ref": "#/definitions/SkuZoneDetail" - }, - "x-ms-identifiers": [] - }, - "extendedLocations": { - "description": "The extended locations.", - "type": "array", - "items": { - "type": "string" - } - }, - "type": { - "$ref": "#/definitions/ExtendedLocationType", - "description": "The type." - } - } + "name", + "value" + ] }, "SkuCapacity": { - "required": [ - "minimum" - ], "type": "object", "properties": { "minimum": { - "description": "The minimum.", + "type": "integer", "format": "int32", - "type": "integer" + "description": "The minimum." }, "maximum": { - "description": "The maximum.", + "type": "integer", "format": "int32", - "type": "integer" + "description": "The maximum." }, "default": { - "description": "The default.", + "type": "integer", "format": "int32", - "type": "integer" + "description": "The default." }, "scaleType": { - "description": "The scale type.", - "enum": [ - "None", - "Manual", - "Automatic" - ], - "type": "string", - "x-ms-enum": { - "name": "SkuScaleType", - "modelAsString": true - } + "$ref": "#/definitions/SkuScaleType", + "description": "The scale type." } - } + }, + "required": [ + "minimum" + ] }, "SkuCost": { - "required": [ - "meterId" - ], "type": "object", "properties": { "meterId": { - "description": "The meter id.", - "type": "string" + "type": "string", + "description": "The meter id." }, "quantity": { - "description": "The quantity.", + "type": "integer", "format": "int32", - "type": "integer" + "description": "The quantity." }, "extendedUnit": { - "description": "The extended unit.", - "type": "string" + "type": "string", + "description": "The extended unit." } - } - }, - "SkuSetting": { + }, "required": [ - "name" - ], + "meterId" + ] + }, + "SkuLocationInfo": { "type": "object", "properties": { - "name": { - "description": "The name.", - "type": "string" - }, - "tier": { - "description": "The tier.", - "type": "string" - }, - "size": { - "description": "The size.", - "type": "string" - }, - "family": { - "description": "The family.", - "type": "string" - }, - "kind": { - "description": "The kind.", - "type": "string" + "location": { + "type": "string", + "description": "The location." }, - "locations": { - "description": "The locations.", + "zones": { "type": "array", + "description": "The zones.", "items": { "type": "string" } }, - "locationInfo": { - "description": "The location info.", + "zoneDetails": { "type": "array", + "description": "The zone details.", "items": { - "$ref": "#/definitions/SkuLocationInfo" + "$ref": "#/definitions/SkuZoneDetail" }, - "x-ms-identifiers": [ - "location" - ] - }, - "requiredQuotaIds": { - "description": "The required quota ids.", - "type": "array", - "items": { - "type": "string" - } + "x-ms-identifiers": [] }, - "requiredFeatures": { - "description": "The required features.", + "extendedLocations": { "type": "array", + "description": "The extended locations.", "items": { "type": "string" } }, - "capacity": { - "description": "The capacity.", - "allOf": [ - { - "$ref": "#/definitions/SkuCapacity" - } - ] - }, - "costs": { - "description": "The costs.", - "type": "array", - "items": { - "$ref": "#/definitions/SkuCost" - }, - "x-ms-identifiers": [ - "meterId" - ] - }, - "capabilities": { - "description": "The capabilities.", - "type": "array", - "items": { - "$ref": "#/definitions/SkuCapability" - }, - "x-ms-identifiers": [] + "type": { + "$ref": "#/definitions/ExtendedLocationType", + "description": "The type." } - } - }, - "ResourceTypeSku": { + }, "required": [ - "skuSettings" - ], - "type": "object", - "properties": { - "skuSettings": { - "description": "The sku settings.", - "type": "array", - "items": { - "$ref": "#/definitions/SkuSetting" - }, - "x-ms-identifiers": [ - "name" - ] - }, - "provisioningState": { - "description": "The provisioning state.", - "$ref": "#/definitions/ProvisioningState" - } - } + "location" + ] }, "SkuResource": { "type": "object", - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource" - } - ], + "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.", "properties": { "properties": { - "allOf": [ - { - "$ref": "#/definitions/ResourceTypeSku" - } - ] - }, - "systemData": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/systemData", - "readOnly": true + "$ref": "#/definitions/SkuResourceProperties" } }, - "x-ms-azure-resource": true + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource" + } + ] }, "SkuResourceArrayResponseWithContinuation": { "type": "object", + "description": "Paged collection of SkuResource items", "properties": { "value": { - "description": "The sku resources.", "type": "array", + "description": "The SkuResource items on this page", "items": { "$ref": "#/definitions/SkuResource" } }, "nextLink": { - "description": "The URL to get to the next set of results, if there are any.", - "type": "string" + "type": "string", + "format": "uri", + "description": "The link to the next page of items" } - } + }, + "required": [ + "value" + ] }, - "OpenApiConfiguration": { + "SkuResourceProperties": { "type": "object", - "properties": { - "validation": { - "description": "The open api validation.", - "$ref": "#/definitions/OpenApiValidation" + "allOf": [ + { + "$ref": "#/definitions/ResourceTypeSku" } - } + ] }, - "OpenApiValidation": { - "type": "object", - "properties": { - "allowNoncompliantCollectionResponse": { - "description": "Indicates whether a non compliance response is allowed for a LIST call", - "type": "boolean" - } + "SkuScaleType": { + "type": "string", + "description": "The scale type.", + "enum": [ + "None", + "Manual", + "Automatic" + ], + "x-ms-enum": { + "name": "SkuScaleType", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "None" + }, + { + "name": "Manual", + "value": "Manual" + }, + { + "name": "Automatic", + "value": "Automatic" + } + ] } }, - "ResourceManagementEntity": { - "required": [ - "resourceId" - ], + "SkuSetting": { "type": "object", "properties": { - "resourceId": { + "name": { + "type": "string", + "description": "The name." + }, + "tier": { "type": "string", - "format": "arm-id", - "description": "The resource id." + "description": "The tier." }, - "homeTenantId": { + "size": { "type": "string", - "description": "The home tenant id." + "description": "The size." }, - "location": { + "family": { "type": "string", - "description": "The location." + "description": "The family." }, - "status": { - "readOnly": true, + "kind": { "type": "string", - "description": "The operation status." - } - } - }, - "ResourceManagementAction": { - "type": "object", - "properties": { - "resources": { + "description": "The kind." + }, + "locations": { "type": "array", - "description": "resource management action content.", - "x-ms-client-flatten": true, + "description": "The locations.", "items": { - "$ref": "#/definitions/ResourceManagementEntity" + "type": "string" + } + }, + "locationInfo": { + "type": "array", + "description": "The location info.", + "items": { + "$ref": "#/definitions/SkuLocationInfo" }, "x-ms-identifiers": [ - "resourceId" + "location" ] - } - } - }, - "ResourceHydrationAccount": { - "type": "object", - "properties": { - "maxChildResourceConsistencyJobLimit": { - "description": "The max child resource consistency job limit.", - "format": "int64", - "type": "integer" }, - "encryptedKey": { - "description": "The encrypted key.", - "type": "string", - "x-ms-secret": true + "requiredQuotaIds": { + "type": "array", + "description": "The required quota ids.", + "items": { + "type": "string" + } }, - "accountName": { - "description": "The account name.", - "type": "string" + "requiredFeatures": { + "type": "array", + "description": "The required features.", + "items": { + "type": "string" + } }, - "subscriptionId": { - "description": "The subscription id.", - "type": "string" - } - } - }, - "SubscriberSetting": { - "type": "object", - "properties": { - "filterRules": { - "description": "The filter rules.", + "capacity": { + "$ref": "#/definitions/SkuSettingCapacity", + "description": "The capacity." + }, + "costs": { "type": "array", + "description": "The costs.", "items": { - "$ref": "#/definitions/FilterRule" + "$ref": "#/definitions/SkuCost" }, - "x-ms-identifiers": [] - } - } - }, - "FilterRule": { - "type": "object", - "properties": { - "filterQuery": { - "description": "The filter query.", - "type": "string" + "x-ms-identifiers": [ + "meterId" + ] }, - "endpointInformation": { - "description": "The endpoint information.", + "capabilities": { "type": "array", + "description": "The capabilities.", "items": { - "$ref": "#/definitions/EndpointInformation" + "$ref": "#/definitions/SkuCapability" }, "x-ms-identifiers": [] } - } + }, + "required": [ + "name" + ] }, - "EndpointInformation": { + "SkuSettingCapacity": { "type": "object", - "properties": { - "endpoint": { - "description": "The endpoint.", - "type": "string" - }, - "endpointType": { - "description": "The endpoint type.", - "type": "string", - "enum": [ - "Webhook", - "Eventhub" - ], - "x-ms-enum": { - "name": "NotificationEndpointType", - "modelAsString": true - } - }, - "schemaVersion": { - "description": "The schema version.", - "type": "string" + "description": "The capacity.", + "allOf": [ + { + "$ref": "#/definitions/SkuCapacity" } - } + ] }, - "DstsConfiguration": { + "SkuZoneDetail": { "type": "object", - "required": [ - "serviceName" - ], "properties": { - "serviceName": { - "description": "The service name.", - "type": "string" + "name": { + "type": "array", + "description": "The name.", + "items": { + "type": "string" + } }, - "serviceDnsName": { - "description": "This is a URI property.", - "type": "string" + "capabilities": { + "type": "array", + "description": "The capabilities.", + "items": { + "$ref": "#/definitions/SkuCapability" + }, + "x-ms-identifiers": [ + "name" + ] } } }, - "AllowedResourceName": { + "SubscriberSetting": { "type": "object", "properties": { - "name": { - "type": "string", - "description": "Resource name." - }, - "getActionVerb": { - "type": "string", - "description": "Get action verb." + "filterRules": { + "type": "array", + "description": "The filter rules.", + "items": { + "$ref": "#/definitions/FilterRule" + }, + "x-ms-identifiers": [] } } }, - "DeleteDependency": { + "SubscriptionLifecycleNotificationSpecifications": { "type": "object", "properties": { - "requiredFeatures": { + "subscriptionStateOverrideActions": { "type": "array", - "description": "Required features.", + "description": "The subscription state override actions.", "items": { - "type": "string" + "$ref": "#/definitions/SubscriptionStateOverrideAction" }, "x-ms-identifiers": [] }, - "linkedProperty": { - "type": "string", - "description": "Linked property." - }, - "linkedType": { + "softDeleteTTL": { "type": "string", - "description": "Linked type." + "format": "duration", + "description": "The soft delete TTL." } } }, - "LegacyOperation": { + "SubscriptionLifecycleNotificationSpecificationsProperties": { + "type": "object", + "description": "The subscription lifecycle notification specifications.", + "allOf": [ + { + "$ref": "#/definitions/SubscriptionLifecycleNotificationSpecifications" + } + ] + }, + "SubscriptionNotificationOperation": { "type": "string", + "description": "The action.", "enum": [ - "NotSpecified", - "Create", - "Delete", - "Waiting", - "AzureAsyncOperationWaiting", - "ResourceCacheWaiting", - "Action", - "Read", - "EvaluateDeploymentOutput", - "DeploymentCleanup" + "NotDefined", + "DeleteAllResources", + "SoftDeleteAllResources", + "NoOp", + "BillingCancellation", + "UndoSoftDelete" ], "x-ms-enum": { - "name": "LegacyOperation", - "modelAsString": true + "name": "SubscriptionNotificationOperation", + "modelAsString": true, + "values": [ + { + "name": "NotDefined", + "value": "NotDefined" + }, + { + "name": "DeleteAllResources", + "value": "DeleteAllResources" + }, + { + "name": "SoftDeleteAllResources", + "value": "SoftDeleteAllResources" + }, + { + "name": "NoOp", + "value": "NoOp" + }, + { + "name": "BillingCancellation", + "value": "BillingCancellation" + }, + { + "name": "UndoSoftDelete", + "value": "UndoSoftDelete" + } + ] } }, - "LegacyDisallowedCondition": { - "type": "object", - "properties": { - "disallowedLegacyOperations": { - "description": "The disallowed legacy operations.", - "type": "array", - "items": { - "$ref": "#/definitions/LegacyOperation" + "SubscriptionReregistrationResult": { + "type": "string", + "description": "The subscription reregistration result.", + "enum": [ + "NotApplicable", + "ConditionalUpdate", + "ForcedUpdate", + "Failed" + ], + "x-ms-enum": { + "name": "SubscriptionReregistrationResult", + "modelAsString": true, + "values": [ + { + "name": "NotApplicable", + "value": "NotApplicable" }, - "x-ms-identifiers": [] - }, - "feature": { - "type": "string", - "description": "Feature string." - } + { + "name": "ConditionalUpdate", + "value": "ConditionalUpdate" + }, + { + "name": "ForcedUpdate", + "value": "ForcedUpdate" + }, + { + "name": "Failed", + "value": "Failed" + } + ] } }, - "ApiProfile": { - "type": "object", - "properties": { - "profileVersion": { - "type": "string", - "description": "Profile version." - }, - "apiVersion": { - "type": "string", - "description": "Api version." - } + "SubscriptionState": { + "type": "string", + "description": "The subscription state.", + "enum": [ + "NotDefined", + "Enabled", + "Warned", + "PastDue", + "Disabled", + "Deleted" + ], + "x-ms-enum": { + "name": "SubscriptionState", + "modelAsString": true, + "values": [ + { + "name": "NotDefined", + "value": "NotDefined" + }, + { + "name": "Enabled", + "value": "Enabled" + }, + { + "name": "Warned", + "value": "Warned" + }, + { + "name": "PastDue", + "value": "PastDue" + }, + { + "name": "Disabled", + "value": "Disabled" + }, + { + "name": "Deleted", + "value": "Deleted" + } + ] } }, - "AsyncTimeoutRule": { + "SubscriptionStateOverrideAction": { "type": "object", "properties": { - "actionName": { - "type": "string" + "state": { + "$ref": "#/definitions/SubscriptionTransitioningState", + "description": "The state." }, - "timeout": { - "description": "This is a TimeSpan property", - "type": "string" + "action": { + "$ref": "#/definitions/SubscriptionNotificationOperation", + "description": "The action." } - } + }, + "required": [ + "state", + "action" + ] }, - "AdditionalAuthorization": { + "SubscriptionStateRule": { "type": "object", "properties": { - "applicationId": { - "type": "string" + "state": { + "$ref": "#/definitions/SubscriptionState", + "description": "The subscription state." }, - "roleDefinitionId": { - "type": "string" - } - } - }, - "ThirdPartyExtension": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of third party extension." + "allowedActions": { + "type": "array", + "description": "The allowed actions.", + "items": { + "type": "string" + } } } }, - "ProviderMonitorSettingProperties": { - "type": "object", - "properties": { - "provisioningState": { - "description": "The provisioning state.", - "$ref": "#/definitions/ProvisioningState" - } + "SubscriptionTransitioningState": { + "type": "string", + "description": "The state.", + "enum": [ + "Registered", + "Unregistered", + "Warned", + "Suspended", + "Deleted", + "WarnedToRegistered", + "WarnedToSuspended", + "WarnedToDeleted", + "WarnedToUnregistered", + "SuspendedToRegistered", + "SuspendedToWarned", + "SuspendedToDeleted", + "SuspendedToUnregistered" + ], + "x-ms-enum": { + "name": "SubscriptionTransitioningState", + "modelAsString": true, + "values": [ + { + "name": "Registered", + "value": "Registered" + }, + { + "name": "Unregistered", + "value": "Unregistered" + }, + { + "name": "Warned", + "value": "Warned" + }, + { + "name": "Suspended", + "value": "Suspended" + }, + { + "name": "Deleted", + "value": "Deleted" + }, + { + "name": "WarnedToRegistered", + "value": "WarnedToRegistered" + }, + { + "name": "WarnedToSuspended", + "value": "WarnedToSuspended" + }, + { + "name": "WarnedToDeleted", + "value": "WarnedToDeleted" + }, + { + "name": "WarnedToUnregistered", + "value": "WarnedToUnregistered" + }, + { + "name": "SuspendedToRegistered", + "value": "SuspendedToRegistered" + }, + { + "name": "SuspendedToWarned", + "value": "SuspendedToWarned" + }, + { + "name": "SuspendedToDeleted", + "value": "SuspendedToDeleted" + }, + { + "name": "SuspendedToUnregistered", + "value": "SuspendedToUnregistered" + } + ] } }, - "ProviderMonitorSetting": { - "type": "object", - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/TrackedResource" - } + "SupportedOperations": { + "type": "string", + "description": "Supported operations.", + "enum": [ + "NotSpecified", + "Get", + "Delete" ], - "properties": { - "properties": { - "$ref": "#/definitions/ProviderMonitorSettingProperties" - }, - "systemData": { - "$ref": "../../../../../common-types/resource-management/v6/types.json#/definitions/systemData", - "readOnly": true - } - }, - "x-ms-azure-resource": true + "x-ms-enum": { + "name": "SupportedOperations", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "Get", + "value": "Get" + }, + { + "name": "Delete", + "value": "Delete" + } + ] + } }, - "ProviderMonitorSettingArrayResponseWithContinuation": { + "SwaggerSpecification": { "type": "object", "properties": { - "value": { + "apiVersions": { "type": "array", + "description": "The api versions.", "items": { - "$ref": "#/definitions/ProviderMonitorSetting" + "type": "string" } }, - "nextLink": { - "description": "The URL to get to the next set of results, if there are any.", - "type": "string" + "swaggerSpecFolderUri": { + "type": "string", + "description": "The swagger spec folder uri." } } }, - "ResourceAccessRole": { + "TemplateDeploymentCapabilities": { + "type": "string", + "description": "The capabilities.", + "enum": [ + "Default", + "Preflight" + ], + "x-ms-enum": { + "name": "TemplateDeploymentCapabilities", + "modelAsString": true, + "values": [ + { + "name": "Default", + "value": "Default" + }, + { + "name": "Preflight", + "value": "Preflight" + } + ] + } + }, + "TemplateDeploymentOptions": { "type": "object", "properties": { - "allowedGroupClaims": { - "description": "The allowed group claims.", - "type": "array", - "items": { - "type": "string" - } + "preflightSupported": { + "type": "boolean", + "description": "Whether preflight is supported." }, - "actions": { - "description": "The actions.", + "preflightOptions": { "type": "array", + "description": "The preflight options.", "items": { - "type": "string" + "$ref": "#/definitions/PreflightOption" } } } }, - "FrontloadPayload": { + "TemplateDeploymentOptionsProperties": { "type": "object", - "required": [ - "properties" - ], - "properties": { - "properties": { - "$ref": "#/definitions/FrontloadPayloadProperties", - "description": "Properties of the frontload payload." + "description": "The template deployment options.", + "allOf": [ + { + "$ref": "#/definitions/TemplateDeploymentOptions" } - }, - "x-ms-azure-resource": true + ] }, - "FrontloadPayloadProperties": { + "TemplateDeploymentPolicy": { "type": "object", - "required": [ - "operationType", - "providerNamespace", - "frontloadLocation", - "copyFromLocation", - "environmentType", - "serviceFeatureFlag", - "includeResourceTypes", - "excludeResourceTypes", - "overrideManifestLevelFields", - "overrideEndpointLevelFields", - "ignoreFields" - ], "properties": { - "operationType": { - "description": "The operation type.", - "type": "string" - }, - "providerNamespace": { - "description": "The provider namespace.", - "type": "string" - }, - "frontloadLocation": { - "description": "The frontload location.", - "type": "string" - }, - "copyFromLocation": { - "description": "The copy from location.", - "type": "string" - }, - "environmentType": { - "description": "The environment type.", - "enum": [ - "NotSpecified", - "Canary", - "Prod", - "All", - "Mooncake", - "Fairfax" - ], - "type": "string", - "x-ms-enum": { - "name": "AvailableCheckInManifestEnvironment", - "modelAsString": true - } - }, - "serviceFeatureFlag": { - "description": "The service feature flag.", - "enum": [ - "DoNotCreate", - "Create" - ], - "type": "string", - "x-ms-enum": { - "name": "ServiceFeatureFlagAction", - "modelAsString": true - } + "capabilities": { + "$ref": "#/definitions/TemplateDeploymentCapabilities", + "description": "The capabilities." }, - "includeResourceTypes": { - "description": "The resource types to include.", - "type": "array", - "items": { - "type": "string" - } + "preflightOptions": { + "$ref": "#/definitions/TemplateDeploymentPreflightOptions", + "description": "The preflight options." }, - "excludeResourceTypes": { - "description": "The resource types to exclude.", - "type": "array", - "items": { - "type": "string" + "preflightNotifications": { + "$ref": "#/definitions/TemplateDeploymentPreflightNotifications", + "description": "The preflight notifications." + } + }, + "required": [ + "capabilities", + "preflightOptions" + ] + }, + "TemplateDeploymentPolicyProperties": { + "type": "object", + "description": "The template deployment policy.", + "allOf": [ + { + "$ref": "#/definitions/TemplateDeploymentPolicy" + } + ] + }, + "TemplateDeploymentPreflightNotifications": { + "type": "string", + "description": "The preflight notifications.", + "enum": [ + "None", + "UnregisteredSubscriptions" + ], + "x-ms-enum": { + "name": "TemplateDeploymentPreflightNotifications", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "None" + }, + { + "name": "UnregisteredSubscriptions", + "value": "UnregisteredSubscriptions" } - }, - "overrideManifestLevelFields": { - "description": "The manifest level fields to override.", - "allOf": [ - { - "$ref": "#/definitions/ManifestLevelPropertyBag" - } - ] - }, - "overrideEndpointLevelFields": { - "description": "The endpoint level fields to override.", - "allOf": [ - { - "$ref": "#/definitions/ResourceTypeEndpointBase" - } - ] - }, - "ignoreFields": { - "description": "The fields to ignore.", - "type": "array", - "items": { - "type": "string" + ] + } + }, + "TemplateDeploymentPreflightOptions": { + "type": "string", + "description": "The preflight options.", + "enum": [ + "None", + "ValidationRequests", + "DeploymentRequests", + "TestOnly", + "RegisteredOnly" + ], + "x-ms-enum": { + "name": "TemplateDeploymentPreflightOptions", + "modelAsString": true, + "values": [ + { + "name": "None", + "value": "None" + }, + { + "name": "ValidationRequests", + "value": "ValidationRequests" + }, + { + "name": "DeploymentRequests", + "value": "DeploymentRequests" + }, + { + "name": "TestOnly", + "value": "TestOnly" + }, + { + "name": "RegisteredOnly", + "value": "RegisteredOnly" } + ] + } + }, + "ThirdPartyExtension": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of third party extension." } } }, - "ManifestLevelPropertyBag": { + "ThirdPartyProviderAuthorization": { "type": "object", "properties": { - "resourceHydrationAccounts": { - "description": "The resource hydration accounts.", + "authorizations": { "type": "array", + "description": "The authorizations.", "items": { - "$ref": "#/definitions/ResourceHydrationAccount" + "$ref": "#/definitions/LightHouseAuthorization" }, - "x-ms-identifiers": [ - "accountName" - ] + "x-ms-identifiers": [] + }, + "managedByTenantId": { + "type": "string", + "description": "The managed by tenant id." } } }, - "ResourceTypeEndpointBase": { + "ThrottlingMetric": { "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/ThrottlingMetricType", + "description": "The throttling metric type" + }, + "limit": { + "type": "integer", + "format": "int64", + "description": "The limit." + }, + "interval": { + "type": "string", + "format": "duration", + "description": "The interval." + } + }, "required": [ - "enabled", - "apiVersions", - "endpointUri", - "locations", - "requiredFeatures", - "featuresRule", - "timeout", - "endpointType", - "dstsConfiguration", - "skuLink", - "apiVersion", - "zones" + "type", + "limit" + ] + }, + "ThrottlingMetricType": { + "type": "string", + "description": "The throttling metric type", + "enum": [ + "NotSpecified", + "NumberOfRequests", + "NumberOfResources" ], + "x-ms-enum": { + "name": "ThrottlingMetricType", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "NumberOfRequests", + "value": "NumberOfRequests" + }, + { + "name": "NumberOfResources", + "value": "NumberOfResources" + } + ] + } + }, + "ThrottlingRule": { + "type": "object", "properties": { - "enabled": { - "description": "Whether it's enabled.", - "type": "boolean" + "action": { + "type": "string", + "description": "The action." }, - "apiVersions": { - "description": "The api versions.", + "metrics": { "type": "array", + "description": "The metrics.", "items": { - "type": "string" - } - }, - "endpointUri": { - "description": "The endpoint uri.", - "type": "string" + "$ref": "#/definitions/ThrottlingMetric" + }, + "x-ms-identifiers": [] }, - "locations": { - "description": "The locations.", + "requiredFeatures": { "type": "array", + "description": "The required features.", "items": { "type": "string" } }, - "requiredFeatures": { - "description": "The required features.", + "applicationId": { "type": "array", + "description": "The application id.", "items": { "type": "string" } + } + }, + "required": [ + "action", + "metrics" + ] + }, + "TokenAuthConfiguration": { + "type": "object", + "properties": { + "authenticationScheme": { + "$ref": "#/definitions/AuthenticationScheme", + "description": "The authentication scheme." }, - "featuresRule": { - "description": "The features rule.", - "allOf": [ - { - "$ref": "#/definitions/FeaturesRule" - } - ] - }, - "timeout": { - "description": "This is a TimeSpan property.", - "format": "duration", - "type": "string" - }, - "endpointType": { - "description": "The endpoint type.", - "enum": [ - "NotSpecified", - "Production", - "TestInProduction", - "Canary" - ], - "type": "string", - "x-ms-enum": { - "name": "EndpointType", - "modelAsString": true - } - }, - "dstsConfiguration": { - "description": "The dsts configuration.", - "allOf": [ - { - "$ref": "#/definitions/DstsConfiguration" - } - ] - }, - "skuLink": { - "description": "The sku link.", - "type": "string" - }, - "apiVersion": { - "description": "The api version.", - "type": "string" + "signedRequestScope": { + "$ref": "#/definitions/SignedRequestScope", + "description": "The signed request scope." }, - "zones": { - "description": "The zones.", - "type": "array", - "items": { - "type": "string" - } + "disableCertificateAuthenticationFallback": { + "type": "boolean", + "description": "Whether certification authentication fallback is disabled." } } - } - }, - "parameters": { - "SelectParameter": { - "in": "query", - "name": "$select", - "description": "An OData $select clause. Used to select the properties to be returned in the GET response.", - "type": "string", - "x-ms-parameter-location": "method", - "x-ms-parameter-grouping": { - "postfix": "Options" - } }, - "FilterParameter": { - "in": "query", - "name": "$filter", - "description": "An OData $filter clause. Used to filter results that are returned in the GET response.", + "TrafficRegionCategory": { "type": "string", - "x-ms-parameter-location": "method", - "x-ms-parameter-grouping": { - "postfix": "Options" + "description": "The next traffic region.", + "enum": [ + "NotSpecified", + "Canary", + "LowTraffic", + "MediumTraffic", + "HighTraffic", + "None", + "RestOfTheWorldGroupOne", + "RestOfTheWorldGroupTwo" + ], + "x-ms-enum": { + "name": "TrafficRegionCategory", + "modelAsString": true, + "values": [ + { + "name": "NotSpecified", + "value": "NotSpecified" + }, + { + "name": "Canary", + "value": "Canary" + }, + { + "name": "LowTraffic", + "value": "LowTraffic" + }, + { + "name": "MediumTraffic", + "value": "MediumTraffic" + }, + { + "name": "HighTraffic", + "value": "HighTraffic" + }, + { + "name": "None", + "value": "None" + }, + { + "name": "RestOfTheWorldGroupOne", + "value": "RestOfTheWorldGroupOne" + }, + { + "name": "RestOfTheWorldGroupTwo", + "value": "RestOfTheWorldGroupTwo" + } + ] } }, - "ProviderNamespaceParameter": { - "in": "path", - "name": "providerNamespace", - "description": "The name of the resource provider hosted within ProviderHub.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "NestedResourceTypeFirstParameter": { - "in": "path", - "name": "nestedResourceTypeFirst", - "description": "The first child resource type.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "NestedResourceTypeSecondParameter": { - "in": "path", - "name": "nestedResourceTypeSecond", - "description": "The second child resource type.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "NestedResourceTypeThirdParameter": { - "in": "path", - "name": "nestedResourceTypeThird", - "description": "The third child resource type.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "GetRolloutNameParameter": { - "in": "path", - "name": "rolloutName", - "description": "The rollout name.", - "required": true, - "type": "string", - "pattern": "^[-\\w\\._\\(\\)]+$", - "maxLength": 260, - "x-ms-parameter-location": "method" - }, - "EnvironmentParameter": { - "in": "path", - "name": "environment", - "description": "The environment.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "SkuParameter": { - "in": "path", - "name": "sku", - "description": "The SKU.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "GetNotificationRegistrationNameParameter": { - "in": "path", - "name": "notificationRegistrationName", - "description": "The notification registration.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "GetAsyncOperationStatusIdParameter": { - "in": "path", - "name": "asyncOperationStatusId", - "description": "The async operation status ID.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "GetApplicationIdParameter": { - "in": "path", - "name": "applicationId", - "description": "The application ID.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" + "TrafficRegionRolloutConfiguration": { + "type": "object", + "properties": { + "waitDuration": { + "type": "string", + "format": "duration", + "description": "The wait duration." + } + }, + "allOf": [ + { + "$ref": "#/definitions/TrafficRegions" + } + ] }, - "GetAccountNameParameter": { - "in": "path", - "name": "accountName", - "description": "The available account name.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" + "TrafficRegionRolloutConfigurationProperties": { + "type": "object", + "description": "The medium traffic region configuration.", + "allOf": [ + { + "$ref": "#/definitions/TrafficRegionRolloutConfiguration" + } + ] }, - "GetResourceTypeParameter": { - "in": "path", - "name": "resourceType", - "description": "The resource type.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" + "TrafficRegions": { + "type": "object", + "properties": { + "regions": { + "type": "array", + "items": { + "type": "string" + } + } + } }, - "ResourceActionParameter": { - "in": "path", - "name": "resourceActionName", - "description": "The resource action name.", - "required": true, - "type": "string", - "pattern": "^[a-z][a-z0-9]*$", - "minLength": 3, - "maxLength": 63, - "x-ms-parameter-location": "method" - }, - "ApplicationIdParameter": { - "in": "path", - "name": "applicationId", - "description": "The application ID.", - "required": true, - "type": "string", - "format": "uuid", - "x-ms-parameter-location": "method" - }, - "ProviderMonitorSettingNameParameter": { - "in": "path", - "name": "providerMonitorSettingName", - "description": "The name of the provider monitor setting.", - "required": true, - "type": "string", - "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", - "x-ms-parameter-location": "method" - }, - "ReleaseNameParameter": { - "in": "path", - "name": "releaseName", - "description": "The name of the release.", - "required": true, - "type": "string", - "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]*$", - "x-ms-parameter-location": "method" + "TypedErrorInfo": { + "type": "object", + "description": "Error information.", + "properties": { + "type": { + "type": "string", + "description": "The type of the error." + }, + "info": { + "description": "The error information.", + "readOnly": true + } + }, + "required": [ + "type" + ] } - } + }, + "parameters": {} }